Most people price their work by the hour and then never check what they actually earned per hour. Those are two different numbers, and the gap between them is where profitable-looking clients quietly turn into unprofitable ones. Here is how to calculate the second number, and what to do when it disappoints you.
Your quoted rate is what you put in the proposal. Your effective hourly rate is what you invoiced divided by every hour the work really took — including the hours you did not put on the invoice. Nobody bills the forty-minute “quick call”, the third round of revisions, the scoping doc that turned into a proposal, or the afternoon spent rebuilding something after a change of mind. Those hours are real. They just do not appear anywhere, which is precisely why they keep happening.
The same rate, two very different clients
Take a worked example. Two clients, both billed at €80 an hour, both invoiced for 40 hours in a month, both paying €3,200 on time. On the invoice they are identical clients. In reality one of them is roughly twice as good as the other.
Client A is not a bad client because they are difficult. They are a bad client because 26 hours a month leave the building without an invoice attached, and nothing in the accounting ever says so. The profit-and-loss statement shows €3,200 from each. The bank shows €3,200 from each. Only the clock knows the difference.
A client who pays well and a client who pays well for the time it actually took are not the same client.
Where the unbilled hours actually go
When people finally track this, the leak is rarely the work itself. It is the connective tissue around the work — the parts that feel too small to log, and are therefore never logged, and therefore never priced.
Notice that only the first two are about the client being demanding. The other ten hours are just the cost of doing business with anyone — and if you are not charging for them, you are pricing every project as though they take zero time. They do not.
The three numbers you need
Effective rate is not a sophisticated metric. It needs three inputs, and most people have exactly one of them.
- Every hour spent, billable or not, attached to the client or project it belongs to. This is the one people are missing. Hours you did not record are indistinguishable from hours that did not happen.
- Revenue from that client in the same period — invoiced, not merely quoted, and ideally collected.
- Direct costs carried on their behalf: subcontractors, software bought for the engagement, travel, anything you would not have spent otherwise.
Then: (revenue − direct costs) ÷ hours actually spent. That is the number to compare across clients, and it is the number to compare against what you could earn doing something else.
Once the book is ranked like this, the decisions get much less emotional. The bottom of the list is not a moral failing on anyone’s part — it is a pricing problem with four possible fixes.
Four things to do about a low effective rate
1. Raise the rate to close the gap
If Client A takes 66 hours to deliver 40 hours of billed work, then charging them €80 is charging them €48. Repricing at €110 does not make them expensive; it makes them cost what they have always cost. The tracked hours are what turn that from an awkward assertion into a conversation with evidence in it.
2. Bill the connective tissue
Calls, status updates and revisions past the agreed rounds are deliverables. Put them on the invoice as line items, or fold them into a retainer that assumes them. Either is honest. Absorbing them silently is the only option that is not.
3. Cap the scope instead of the price
“Two rounds of revisions included, further rounds billed hourly” converts an open-ended obligation into a priced one. Most scope creep is not adversarial — the client simply has no idea that the small request costs anything, because you have never once told them it did.
4. Let the client go
Sometimes the effective rate is low, the relationship will not bear a price rise, and the honest answer is that the work is worth more elsewhere. That is a legitimate outcome, and it is far easier to act on when it is a number rather than a feeling.
How TimerOS handles this
This is the loop the product is built around: hours are tracked against a project and a client, invoices are raised from the same data, and the profit view is derived from both rather than typed in somewhere separately.
- Hours land on a project and a client. The Windows desktop app records them as you work — classified on your own machine, with no screenshots and no keystroke logging — so the unbilled hours are captured rather than remembered.
- Projects carry budgets. A project with a budget shows consumption against it as the hours accumulate, which is the early warning that Client A is heading for 66 hours again.
- Invoices come from the tracked time, including invoices generated from a project budget, so the revenue side and the hours side cannot drift apart.
- Billing, clients and a profit overview are on every plan, Freelancer included. Expenses and profit start in a lite form and step up on Enterprise, which adds full P&L with payroll and vendor bills, and per-client pricing tiers. The pricing page has the exact split.
None of this requires new discipline about working harder, and none of it requires watching anybody. It requires knowing where the hours went, which is a much smaller ask — and the difference between a €48 client and a €71 client is worth roughly the price of finding out.