Why freelancers should bill by the hour (not by day or project)
Fixed-price hides your real costs. Hourly billing makes overruns visible, turns your calendar into an invoice, and protects you from scope creep by default.
The appeal of fixed-price projects is obvious: one number, easy to quote, easy for clients to budget. The problem is that fixed-price hides the real cost of every overrun — and the freelancer absorbs it silently.
Hourly billing doesn’t have that problem. Every hour worked is on record. Every extra request is compensated automatically. The calendar is the invoice.
What fixed-price actually costs you
When you quote a project at €2,000, you’re making a bet. If the work takes 20 hours, you’ve earned €100/hour. If it takes 40 hours because the client kept revising, you’ve earned €50/hour. You absorbed the overrun without a conversation.
This isn’t exceptional. It’s the norm. Fixed-price projects routinely take 30 to 50% longer than estimated — not because the estimate was wrong, but because client requirements evolve. Feedback rounds expand. A “quick revision” takes three hours.
With hourly billing, that extra time shows up on the invoice. Not as a confrontation — as a record of work actually done.
The calendar becomes the invoice
Hourly billing only works if the record is clean. That means naming calendar events in a way that makes the time unambiguous: which client, which project, whether it’s billable.
The bracket naming convention handles this: [Client][Project][F] Task name. Every event with an [F] flag is billable. At the end of the month, the calendar is already the invoice — no reconstruction needed.
With Timescanner, that’s literal. Connect your calendar, set a billing rate per client, pick a date range. Total hours and amount appear in seconds. The client can see exactly what they’re paying for because every line corresponds to a real calendar event.
This is the core advantage of hourly billing: the time record and the billing record are the same document. Fixed-price doesn’t give you that.
Scope creep is priced automatically
One of the most common freelance disputes starts like this: a client asks for “just one more small thing.” You do it. It happens again. Six weeks later you’ve added 15 hours to a fixed-price project without any compensation.
With hourly billing, that dynamic changes. Each extra request is billable by definition. The client sees it in the monthly total. They start self-moderating — not because you push back, but because they can see the meter running.
This isn’t confrontational. It’s transparent. A client who can see their hours in real time makes different decisions than one who sees a single invoice at the end of the month.
When fixed-price is the right choice
Hourly billing isn’t always the answer. There are three situations where fixed-price makes sense.
When the scope is truly fixed. A one-page website with a clear spec and no client decision points can be quoted as a fixed project if you’ve done it twenty times and know your hours within 10%. The experience eliminates the estimation risk. Without that experience, the fixed price is a guess.
When the client’s budget is the constraint. Some clients have a fixed budget that can’t move. If the project is worth doing at that budget and the scope is clear, a fixed quote is the pragmatic choice. Build a scope buffer into your estimate — fixed-fee pricing requires that explicitly.
When you want upside on efficiency. If you’ve systematized a deliverable to the point where you can produce it in half the time a client expects, fixed-price captures that upside. You earn more per hour by being faster. This only works for well-defined, repeatable work.
Outside those scenarios, hourly billing protects you by default.
The objection: “Clients don’t like paying by the hour”
Some clients resist hourly billing because they want cost certainty. That’s understandable. The answer isn’t to abandon hourly — it’s to set a monthly budget cap.
“I charge €80/hour. Based on the scope we’ve discussed, I’d estimate 20 to 25 hours per month. I can flag you when we hit 80% of the budget if you’d like.” That gives the client predictability and keeps you covered if the scope expands.
The retainer model is a variant of this: a fixed monthly commitment that covers a defined number of hours. If scope stays within bounds, the client gets predictability. If it runs over, extra hours are billed at the standard rate. It’s the best of both structures.
Your real rate only shows up in hourly billing
Your effective hourly rate is the number that tells you whether a client is actually profitable. It’s calculated from real time, not estimated time.
With fixed-price projects, the effective rate is invisible until you do the math yourself — after the invoice. By then the pattern is already set. With hourly billing, the effective rate is visible on every invoice, for every client. The ones worth keeping are obvious. The ones worth repricing are too.
The freelancers who consistently earn more per hour aren’t the ones who quote higher fixed prices. They’re the ones who know their real rate, per client, from actual data — and use it.
Timescanner calculates your effective hourly rate per client from your calendar. No timer needed. Works with any iCal-compatible 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