Solace

How to prove billable hours to a client

An invoice that only states a number invites a negotiation. An invoice that carries its own evidence usually ends the conversation before it starts.

What actually counts as evidence

Clients rarely doubt that you worked. They doubt the mapping between the work and the number. Strong evidence is specific, timestamped, and produced by a system neither party controls after the fact:

  • Commit records — SHA, repository, branch, author and authored timestamp. Independently checkable against the repository itself.
  • Calendar events — title, date, duration and attendees, for meetings the client was usually in.
  • Message activity — counts and dates of client conversations, without exposing message content.
  • Written summaries — a short narrative per day and per week describing what was built, discussed and decided.
  • Receipts — for anything reimbursable, attached to the line item.

Assemble a billing package, not just an invoice

A billing package is the invoice plus everything needed to verify it, delivered together. A complete one contains:

  • A summary sheet: hours, rate, amount, payments received, balance due.
  • One invoice per billing period, each with its weekly work summary.
  • A day-by-day calendar appendix showing where the hours fall.
  • Exports of the underlying records — commits, meetings, daily activity, expenses.
  • The methodology: exactly how raw activity became billable hours.

The methodology page matters more than people expect. Publishing your rules in advance converts a subjective judgment into an agreed formula.

Be conservative on purpose

Credibility is worth more than the marginal hour. Exclude chat threads you never replied to. Cap idle time between commits. Do not bill for time you cannot point at. When your measured hours come in below what you could have argued for, say so on the invoice — an explicit under-billed credit is the strongest trust signal in the whole document.

When a client disputes an invoice

  1. Ask which specific period or line item is in question — never defend the total.
  2. Send the evidence for that period alone: commits, meetings, summary.
  3. Walk through the method, using the rules you published before the work started.
  4. If something is genuinely wrong, correct it immediately and reissue.
  5. Afterwards, share the billing package by default so it cannot recur.

Give the client a link, not an attachment

A permanent, always-current billing link beats emailed PDFs: the client can open the summary, browse each invoice and download the supporting exports whenever they need them. Protect it with a password if the engagement is sensitive. Nothing needs regenerating — the link always reflects work through the latest completed week.