How to work out client profitability at an agency
The formula, a worked example and the two mistakes that make most agencies overestimate how much they earn from each client.
· 3 min read · By the Mono team at ByteCraft
Most agencies know their revenue per client. Far fewer know their profit per client, and the two can tell very different stories. A large client that demands constant attention can earn less than a small one that runs smoothly.
Working it out is not hard once the inputs are in one place. This guide gives you the formula, a worked example, and the two mistakes that skew the result.
The formula
For a given client and period:
- Start with the money the client actually paid you in the period.
- Subtract the direct expenses for that client: freelancers, software bought for them, travel, ad spend you were not reimbursed for.
- Subtract the cost of your team's time: the hours each person spent on the client, multiplied by what an hour of that person costs you.
A worked example
Over a quarter, a client paid 12,000. You spent 900 on a freelance copywriter and a tool licence for them. Your team logged 160 hours on their work, and an hour of your team costs you 45 on average, so their time cost 7,200.
Profit for the quarter is 12,000 minus 900 minus 7,200, which is 3,900, a margin of 32.5%. If a second client paid 8,000 but needed only 80 hours and no expenses, their profit would be 4,400, a margin of 55%. The smaller client is the more profitable one.
Mistake 1: using the bill rate instead of the cost rate
The labour line must use what an hour costs you, not what you charge for it. A useful cost rate is a person's salary plus their share of overheads, divided by the hours they actually spend on client work in a year. Using the bill rate makes every client look like it breaks even.
Count all the time spent on the client, including meetings, revisions and internal discussion. Leaving out non-billable time is the most common way a demanding client hides its real cost.
Mistake 2: counting invoiced money instead of collected money
An invoice that has not been paid is not profit yet, and an invoice that is never paid is a loss. Base the calculation on what was collected in the period, and keep an eye on overdue invoices separately. A client who pays 90 days late costs you more than the margin suggests.
What to do with the number
- Rank clients by margin, not by revenue, at least once a quarter.
- Before a renewal, check the margin and the effort trend, and price the new agreement accordingly.
- For low-margin clients, look at where the hours go: scope creep and long feedback loops are usually fixable.
Doing this in Mono
On the Pro plan, Mono's Client ROI report does this calculation from records you already keep. It starts from what each client has actually paid, including part payments, and subtracts the expenses linked to that client or one of its contracts, and the cost of your team's time: hours logged on the client's work multiplied by each member's hourly rate.
Two things to know. Set an hourly rate for everyone who logs time, because a member without one counts as zero cost; the report tells you how many are missing. And revenue and expenses are kept per currency, but hourly rates have no currency, so a client's labour cost is shown in its main invoicing currency.
Run client work from one workspace.
Contracts, boards, time and invoices on the same records. The trial is free and needs no credit card.