A defensible approximation the commercial team trusts beats a precise model they dispute
Activity drivers people can count and verify produce a ranking that changes behaviour. A sophisticated allocation nobody can follow produces an argument.
Every distributor can rank customers by revenue and margin. Almost none can rank them by what it costs to serve them, which is the ranking commercial decisions should use.
Cost to serve is everything between the order and the cash that is not the cost of the goods: order handling, picking complexity, freight, returns, payment terms and account management time.
This paper argues that the reason it is rarely calculated is not analytical difficulty but organizational — the data sits in five places and nobody has been asked to join it up — and that the model's value depends more on the commercial team accepting the allocation basis than on the sophistication of the allocation itself.
If you read nothing else, read these. The analysis that follows sets out the evidence for each.
Activity drivers people can count and verify produce a ranking that changes behaviour. A sophisticated allocation nobody can follow produces an argument.
It is omitted because the data is awkward, and a model without it ranks customers wrongly and confidently.
Even a crude tiering by account class beats a flat allocation, which systematically flatters the most demanding accounts.
Ordering minimums, delivery consolidation, terms changes and self-service channels. Most expensive customers do not know they are expensive.
Order handling, where small orders cost nearly as much to process as large ones. Picking and packing complexity including special handling. Freight, particularly where a customer requires split deliveries or expedited shipping. Returns and credits, which concentrate heavily in a small number of accounts. Payment terms and collection effort, which are a real cost of capital. And account management time, which is the hardest to allocate and frequently the largest.
The technical build is not the difficult part. Getting the commercial team to accept the allocation basis is.
Our advice is to be conservative and transparent. Use activity drivers people recognise — number of order lines, number of deliveries, number of returns — rather than a sophisticated model nobody can follow.
Publish the drivers alongside the result so anybody can see why an account scored as it did. An account manager who can see the reasoning will argue about the driver, which is a productive conversation. One who cannot will reject the number entirely, and rejection is difficult to reverse.
Then sense-check the extremes with people who know the accounts. The most and least profitable customers in the model should be recognisable to the commercial team; if they are not, something in the allocation is wrong and it is better to find that before publication.
Two things, reliably. A group of accounts that look healthy on gross margin and consume disproportionate resource. And a group of small accounts that are quietly excellent because they order predictably and never call.
Neither is actionable in isolation. The value is that the commercial conversation shifts from 'grow revenue' to 'grow the right revenue', which is a different and considerably more useful discussion.
It is worth being explicit that the productive responses are rarely to exit customers. Ordering minimums, delivery consolidation, a change to payment terms, a self-service channel for routine orders, or a straightforward price adjustment with the reasoning explained. Most customers who are expensive to serve do not know they are, and a proportion will change behaviour when asked.
Every paper in this series ends with a framework you can run internally. We would rather you used it and reached your own conclusion than took ours on trust.
Five stages. The first and last are commercial rather than technical.
Cost pools and drivers agreed with commercial and operations before any engineering.
Freight and returns, even where the data is awkward. Omitting them ranks customers wrongly.
Total pooled cost in equals total allocated out. A non-zero residual is a finding.
Publish drivers alongside results so an account manager can see the reasoning.
Walk the extremes with people who know the accounts, before publication.
The same argument lands differently across an executive team. These are the three versions worth separating.
Microsoft's own documentation for the product behaviour described above. We would rather you verified the basis than accepted our summary of it.
On these references: each entry names a Microsoft Learn article or documentation area by title, because deep links change while titles are stable. Searching the title on learn.microsoft.com will reach the current version. Where we have cited a figure or a product behaviour, it is Microsoft's statement rather than ours; where we have given a number of our own it is labelled as such in the text.
We will build a cost-to-serve model against one customer segment using data you already have, and walk your commercial team through the extremes before anything is published.
Inventory accuracy is treated as a warehouse metric. It is a planning input, and the buffer carried to compensate for it is working capital.
Improvements to picking and replenishment help. They cannot repair a commitment that was wrong when it was given.
Describe the situation in your own words.