Reports

Client profitability: the number agencies calculate wrong

Revenue minus direct delivery cost measures delivery efficiency, not whether a client was worth keeping. A worked example with invented numbers, the four effort categories that never reach the invoice, and why the allocation must be deliberate and visible rather than absent.

Client ProfitabilityAgenciesManagement AccountingPricingClient Management

Ask a service firm which clients are worth keeping and most of them will open a report showing revenue by client, subtract the direct cost of delivering the work, and rank the rest by what is left. It is a sensible-looking exercise, it takes an afternoon, and it is wrong in a specific and predictable direction: the calculation counts the cost of the work that makes the revenue and ignores the cost of everything that had to happen before the work could be billed.

The result flatters the client, and it flatters them the most when they are your largest and most demanding account — because the effort that a difficult client generates is effort you absorb quietly, at the same time as you are trying to serve them well. The number does not go wrong through a mistake in the subtraction. It goes wrong through an omission in the definition, and an omission is much harder to spot than an error.

The calculation almost every agency runs

The arithmetic is worth writing out, because the omission is easier to see in the formula than in the result. Direct client profitability takes revenue billed to that client over a period, subtracts the salary and loaded cost of the people who did the work, and sometimes subtracts pass-through third-party costs like media spend or a subcontractor. What is left is the client profit. It is a real and useful measure of delivery efficiency, and it is routinely presented as though it answered a different and larger question: should this client be on our list next year?

Those are different questions, and only one of them is being calculated. Delivery efficiency is a good thing to know. Whether a relationship is worth having requires knowing what it cost to acquire, to run, and to collect from — and none of those appear in the formula, because each one lives outside the project, outside the timesheet your account manager fills in, and outside the invoice the client paid.

A worked example: the client everybody likes

All figures below are invented, for illustration. This is not a real client, a real agency, or a real quarter, and nothing here reports how your business actually performs. What it shows is the shape of the arithmetic.

Take the agency's most-praised account: a large, reasonably prompt, high-referral client whose work is genuinely good. In a quarter they are billed ₹9,00,000. The delivery effort behind that is 540 hours at the agency's fully loaded rate of ₹1,450, so ₹7,83,000 of direct cost, plus a third-party cost of nothing because there is none. Direct client profitability is ₹1,17,000 — 13.0%. Nobody is alarmed. The client is on the retention list and the account manager describes them as low-maintenance.

Now count the effort that sits outside the project and never reaches an invoice. The team spent 46 hours quoting and re-quoting for this client, including a re-quote after the scope moved. Someone spent 32 hours on account management: a weekly call, two reviews, a quarterly deck. Someone spent 21 hours chasing payment, because this client pays at roughly 78 days against 30-day terms and each invoice needs several reminders. And 64 hours went into re-work on a module whose acceptance criteria were never written down, mostly senior time, mostly good people doing careful work on an ambiguity nobody had closed.

The effort that creates and collects the revenue, at the same loaded rate (all figures invented, per quarter)

ActivityHoursCost at ₹1,450 an hour
Estimating and re-quoting46₹66,700
Account management and reporting32₹46,400
Chasing late payment21₹30,450
Re-work from unclear scope64₹92,800
Total unallocated effort163₹2,36,350

The fully allocated picture is now straightforward arithmetic. Direct cost was ₹7,83,000; the unallocated effort adds ₹2,36,350, giving ₹10,19,350 against ₹9,00,000 of revenue. This client is ₹1,19,350 a quarter in the hole, and the firm has been describing them as a model account. Note the total hours as well: 703. That works out at roughly ₹1,280 of revenue for every hour of the agency's attention, against a loaded cost of ₹1,450. On a fully allocated basis, every hour this client consumes is sold below cost.

The four categories, and why each is invisible in the usual number

The four cost categories a client actually generates (structural, not measured behaviour)

CategoryWhat it really isWhy it never reaches the client figure
Estimating and scopingThe labour that decides whether the engagement is won and at what priceIt happens before the project exists, so it belongs to no project and is carried as overhead
Account managementThe recurring attention that keeps a client a clientIt is a relationship cost, and relationships are not usually time-tracked against a client record
Chasing late paymentFollow-up effort caused entirely by the client's payment behaviourInvoicing generates it as a side effect, so it is nobody's task and no report counts it
Re-work from unclear scopeTime spent redoing work because the acceptance criteria were never agreedThe invoice is unchanged and the hours look like ordinary delivery, so nothing marks it as loss

Two of these deserve more than a line. Re-work is the most dangerous, because it grows with revenue rather than shrinking with it: a client can be paying you more and consuming more, and the extra effort appears as normal delivery rather than as loss. The tell is that your senior people are spending their time on work the client already paid to have done once. Late payment is the second, and it is the one most often misfiled as a collections problem rather than a profitability one — the money eventually arrives, so nothing looks broken, while the effort required to make it arrive is a permanent tax on the relationship paid in your team's hours.

Where this argument does not apply

Small engagements, for the same reason as in project economics: the measurement costs more than the error it catches. A one-off piece of work with a short selling cycle and a single invoice does not need an allocated effort model, and a firm that spends its afternoon building one instead of doing the work has made a bad trade. A practical threshold is whether the effort involved in acquiring, running, and collecting from that client is large enough to be worth a conversation when it grows.

There is also an honest counter-argument, and it deserves stating. Some clients pay a premium precisely because they are low-effort, and some high-effort clients are strategically worth subsidising because they refer others, carry your name, or hold a category open. That is a legitimate business decision. The objection is only to making it by accident — to never computing the number and therefore never knowing that you made it.

How to allocate the time without lying to yourself

A defensible allocation, in the order we would do it

  • Start with the four categories above, written down, so the thing being ignored is at least named
  • Allocate estimating effort per opportunity, not per won project, or you will systematically flatter every client by loading all the loss onto the ones you did not win
  • Allocate account management by calendar time actually spent per client, including the calls nobody logs because they felt informal
  • Count chasing effort per client per invoice, because a client who pays at 78 days is a different economic proposition from one who pays at 30
  • Treat re-work as a separate line rather than folding it into delivery, so it stays visible long enough to be fixed
  • State the loaded hourly cost you are using and where it came from; an allocation with an unstated rate is a guess with a rupee sign
  • Decide overhead explicitly — full absorption, contribution margin, or a named partial — and write down which one you chose
  • Re-run the same allocation each period unchanged, because a definition that shifts between quarters makes two quarters incomparable

The discipline this imposes is the same one we hold to everywhere else in the product: an allocation must be visible enough to be argued with. The moment it is a column in a spreadsheet somebody built, it can be checked, challenged, and changed deliberately. The moment it is absent, the number is not conservative — it is simply unknown, and unknown is what gets mistaken for healthy.

This is a management-accounting judgement, and different owners will allocate differently

We want to be direct about something that is often sold as a calculation and is not one. There is no neutral answer to how much of a shared account manager's week belongs to the client who calls most. Two owners in the same industry, with the same records, will allocate a pre-sales hour differently — one will charge it to the opportunity, the other to overhead — and both are defensible. The same is true of whether to absorb your office rent into a client figure or report contribution instead. These are choices, and choosing well depends on what you are trying to decide.

The argument for activity-based costing is instructive here, including its well-documented weakness: it assigns overhead to activities rather than spreading it on a single volume basis, precisely because the choice of driver is what determines whether the result is meaningful, and choosing a wrong driver produces a number that is confidently wrong. That is the shape of the whole problem. There is no driver that makes the allocation automatically correct, because the allocation encodes a view about your own business that only you hold.

So the point is not that one allocation is right. The point is that the allocation must be deliberate and visible rather than absent. An agency that writes down its four categories, applies one rate consistently, and looks at the result every quarter can change its mind about the answer. An agency that never allocates cannot change its mind, because it has never stated what it believed in the first place — and that is the failure, not the judgement itself.

The terms this article keeps separate

Direct client profitability
Revenue minus the direct cost of delivery. A measure of delivery efficiency, not of relationship worth.
Allocated effort
The time spent acquiring, running, and collecting from a client, attributed to that client by a rule you have written down.
Fully loaded cost rate
Salary, benefits, overhead, tools, and the management time that is easy to omit — divided by the hours it is spread over.
Contribution
Revenue less the costs that vary with doing this work, leaving fixed costs to be covered by the whole book of business.

Frequently asked questions

Why is revenue minus direct cost the wrong number for a client?

Because it counts the cost of the work and omits the cost of everything that made the work billable: estimating and re-quoting, account management, chasing late payments, and re-work caused by scope nobody wrote down. Those four categories sit outside the project and outside the invoice, so the calculation measures how efficiently you delivered — a real and useful thing — and then reports it as though it had answered whether the relationship was worth having.

Whose job is it to allocate this time — mine, the account manager's, or the system's?

Yours, as an owner, with the rules written down. The allocation is a management-accounting decision, not a measurement, and no system can make it correctly on your behalf without knowing things only you know. In practice the account manager is closest to the time and should supply the inputs, while the owner sets the rate, the categories, and the overhead treatment. NoxOrigin deliberately does not do this allocation: it keeps quoted, billed, collected, and outstanding as four separate states on the client record and refuses to invent the cost side.

If different owners allocate differently, is any of this objective?

No, and pretending otherwise would be the mistake. Two owners will allocate a shared account manager's week differently, and both can be defensible, because the allocation encodes a view about your own business. What matters is that the view is stated, applied consistently across periods, and visible enough to be argued with. An agency that never allocates cannot revise its view, because it never expressed one; an agency that writes down its assumptions can change them deliberately.

Should office overhead be included in a client figure?

Decide, then write down which decision you made. Full absorption answers whether the client covers their share of the whole business. Contribution — revenue less the costs that vary with the work — answers whether the work itself is worth doing at all, and leaves fixed costs to be covered across the book. Both are legitimate and they answer different questions. The failure is not choosing either one; it is having no stated position and reporting a figure that quietly mixes the two.

How granular does the time allocation need to be to be useful?

Coarse enough to sustain, precise enough to change a decision. Four categories — estimating, account management, chasing payment, re-work — with one stated hourly rate is enough to expose a client being served below cost. Per-client per-task time capture is more precise than anyone maintains for long, and the extra precision does not change the decisions being made. Below the size of a small one-off engagement, skip it entirely: the measurement costs more than the error it would catch.

Does NoxOrigin calculate client profitability for me?

Not the whole thing, and it would be misleading to imply otherwise. It gives you the states a decision needs — quoted, billed, collected, and outstanding, held separately on the client record — and leaves the weighing to you. Weighing those against delivery effort, strategic value, referral behaviour, and how much chasing a client costs is a judgement, and NoxOrigin does not make it for you or fill in a cost side it cannot know. Where one client consumes far more attention than another, the money states alone can mislead, and we would rather say that than present a confident number.

Sources and further reading

Continue reading

Looking for the rest of this topic? More in finance and economics →

OperationsScope drift: why the agreed scope and the invoiced scope divergeRead guide →BillingWhy a ₹15,000 invoice and a ₹15,000 payment are not the same recordRead guide →ReportsReading a receivables ageing report without guessingRead guide →