Your Best Customer Might Be Your Least Profitable One
Your accounting system tracks revenue by customer and cost by category. That one split is why you don't actually know which of your customers make you money.
You know exactly what you sold each account. You know your freight bill, your labor, your returns, in total. What you don't know is whose freight bill that is. So the account that orders 3 times a week, in small quantities, to a tight delivery window runs up a cost that's completely real and never once lands on its line. It lands in a bucket. The bucket looks fine. The customer looks great. And the biggest name on your books, the one you toast at the holiday party, might be sitting at breakeven the whole time.
Cost-to-serve is the work of putting that cost back where it came from. Not the goods alone, but the ordering, the picking, the freight, the returns, and the service hours that come attached to the account. Analysts writing on this through 2025 keep landing on the same uncomfortable point: 2 orders of identical dollar value can carry wildly different profitability depending on order size, urgency, location, returns, and how much hand-holding the customer wants. Same revenue, different money.
2 accounts that look like twins
Picture 2 customers who each buy $1 million a year from you. The first orders full pallets once a month, pays on time, and almost never calls. The second orders small batches several times a week, wants everything rushed, returns more than its share, and ties up a salesperson every Friday afternoon. On the revenue report they're identical. In the bank they're nothing alike. One is quietly paying for the other, and odds are you're giving both the same price and the same terms.
The part that stings is which one you protect. The high-maintenance account is usually large, so the fear of losing it is real, so you discount to keep it and bend on terms to keep it and answer the phone at six to keep it. You may be paying for the privilege of the relationship and calling it your best customer.
The first time I ran these numbers
I once worked through this with an owner whose business looked healthy from the top. Around $12 million in revenue, decent gross margin, one anchor account that made up close to a third of the book. Everyone in the building treated that account like the crown jewels.
We built a rough model. A few activities, a few simple drivers, nothing fancy. The crown jewel came out right around breakeven, and it had been there for years. The business wasn't being carried by its biggest customer at all. It was being carried by 4 mid-sized accounts nobody ever mentioned, quietly covering for the one everybody bragged about.
That's not a fun number to show someone. It's a very useful one.
You can see this yourself this quarter
Forget the data warehouse and the 6-month project. People writing about this for smaller companies suggest the light version, and it works. Pick a handful of activities such as order processing, pick-and-pack, freight, and service. Give each one a simple driver such as orders, picks, miles, or minutes. Then run it on one region or one product line before you touch the rest.
Here's the kitchen-table version. Take your 10 largest accounts. For each one, pull the number of orders, the average order size, the freight you paid, the return rate, and an honest guess at the sales and service hours it eats in a month. Put a dollar figure on each and subtract the whole thing from the gross margin that account throws off.
You're not chasing accounting precision. You're chasing rank order. You want to know who's carrying the business and who's riding. Run it once and you'll almost certainly find a big account parked near breakeven and a mid-sized one earning far more than its revenue would ever suggest.
What you do about it
You don't fire the demanding customers. You stop pretending the cost is a fact of nature you have to eat.
Price the service that actually costs you something. A minimum order value, a small-order fee, a rush charge, whatever matches the price to the work. Companies that build even a bare-bones model usually use it to set exactly those thresholds. Where price won't move, change the service instead. Put a chaotic account on a standing weekly order, consolidate the deliveries, move the chronic caller to a channel that costs you less to run. The account keeps buying and you keep the margin.
Then go defend the quiet account earning you the most, because it's almost always the one getting the least attention. It never causes trouble, so nobody watches it. Find it before a competitor does, and put a real number on it this quarter. Revenue tells you how big you are. It won't tell you whether you're getting paid for the work.