How to send a time report to your client

A time report sent before the invoice prevents every billing surprise. What to send, when, and how to make it take 5 minutes instead of an hour.

3 min read Adrien

A client receiving a €4,500 invoice without context is a client who asks questions. One receiving a time report every two weeks isn’t surprised by anything.

The invoice isn’t where the billing conversation happens. It’s where it ends.

Why most freelancers skip it

It feels like justifying yourself. Like you’re pre-emptively defending the bill.

It isn’t. A time report is a status update. The same way you’d update a client on deliverable progress, you update them on budget progress. One is about what’s been built; the other, about what’s been spent.

Clients who see hours accumulating in real time don’t question them at invoice time. They’ve already processed the information.

What goes in it

Not a spreadsheet with 40 rows. One table per project:

  • Date
  • Task name
  • Hours

That’s it. If you used a naming convention when you blocked time in your calendar — [Client][Project] Task — the data is already there. You’re not reconstructing it. You’re exporting it.

A weekly time report for a retainer client takes 5 minutes when the calendar was filled in correctly. It takes 45 minutes when you’re assembling it from memory.

When to send it

For retainer clients: weekly, on Friday. Brief enough that they actually read it.

For fixed-price projects: at 50% of the budget, then again at 80%. The 80% mark is the most important — it’s the moment to flag scope before you’re already over budget.

For hourly clients: monthly, with the invoice, as a supporting document.

Make it expected from the first week

If the first time a client hears about hours is the invoice, any surprise feels like information withheld. If they’ve been seeing hours every week since day one, the invoice is a formality.

Set the expectation in your kickoff: “I’ll send a brief time report every Friday so you always know where the budget stands.” One sentence. It changes the entire billing relationship.

Most clients don’t ask for this. Most also don’t expect it — and are relieved when they get it.

The easiest way to generate it

Run a billing audit on the period. Every event named [Client][Project] Task is a row in the report.

If that naming convention is in place, Timescanner reads the calendar and breaks down time by client and project. Filter to the right date range, export. The report is the analysis.

No reconstruction. No separate app. The calendar is already the record — the report is a formatted view of it. When a client later questions your invoice, the same calendar is the answer.


Timescanner reads your calendar and generates time breakdowns by client and project. The report your client needs is already in your calendar.

Timescanner

Your calendar already knows how much you worked.

No timers. No new habits. Timescanner reads your calendar — Google Calendar, Outlook, iCloud, and more — and generates your billing reports automatically.

Start free trial — 30 days, no credit card