Guides6 minute readOctober 16, 2026

What to do when a cleaning client is not profitable

The audit puts one name at the bottom. Below your floor is not the same as below your cost, and the right answer is different for each. Three options, one number that decides.

The advice you will hear is tribal. Half of it says fire bad clients, and half says never fire anyone. Neither can tell you what this particular client is worth, which is the only question that matters. Keep, reprice and release are all defensible — for different clients, and the audit in finding the underpriced clients in your book gives you the numbers that tell them apart.

First, which kind of unprofitable?

One word hides two different situations. To tell them apart you need your full cost per crew hour — wages, burden, drive, supplies, overhead, with no margin in it — and your cost floor, which adds the margin (cost per crew hour builds both). Say the full cost works out at $32 a crew hour and your floor is $36. Both examples here are biweekly, 2.17 visits a month, on a visit that takes 4.5 crew hours.

  • Client A pays $130 a visit. That is an earned rate of $28.89 a crew hour — under your full cost. Each visit loses $14, about $30 a month. This client is genuinely unprofitable: you pay for the privilege of cleaning their house.
  • Client B pays $150 a visit. An earned rate of $33.33 — above cost, below floor. They add $6 a visit of real contribution, $13 a month. Their price sits $12 a visit below the $162 target. That missing margin, $26 a month, is the gap.

The distinction decides everything. A costs you money on every visit. B earns a little and occupies hours that should earn a lot more. “Unprofitable” only truly describes A.

Reprice before you release, always

Releasing a client you never asked for a fair price is a guess wearing a spreadsheet. The target price is your floor times their crew hours — $36 × 4.5 = $162 for both examples — worked out in how much to raise your cleaning prices. How to send it is the notice in raising prices with existing clients, and the letter itself is one of the three templates. What happens if they say no is the next section, and it is computable — which is why reprice comes first.

What releasing actually costs

The invoice is not the loss. If Client B leaves, $325 a month of revenue goes — and 9.8 crew hours a month come free. At your $36 floor, those hours are worth $351 a month to whoever fills them. That sentence, with your own numbers, is printed on every report, because it is the whole decision:

  • If the hours refill, you are $26 a month better off. Their hours were the waste, not their invoice.
  • If the hours do not refill, what you lose is their contribution — $13 a month, not $325.

Now put the notice against never sending it. Send it and lose them: worst case, $13 a month until the hours refill. Never send it: $26 a month of margin gone, guaranteed, for as long as they stay. For Client B the notice wins even in its worst case. For Client A the worst case is nothing — their contribution is negative — so every month they stay at $130 is a $30 subscription you pay to keep them. The only fact the arithmetic cannot supply is whether the hours can refill: an awkward time slot or a distant suburb is worth more patience than the same numbers suggest. That judgement is yours; the leave test shows how to run it per client before you send.

The same test, across the whole book

Per client, the worst case of sending a notice is small. Across the book it is smaller than it feels. Suppose your three worst names all refuse and leave. You give up their combined contribution — and keep the monthly gap from every client who stays. When the worst names barely cover their own crew hours, giving them up costs almost nothing, and the raise is close to risk-free even if all three walk. That book-level comparison is worth running before the first notice goes out; occasionally it says the book is better off without the hardest names, which is a far cheaper discovery now than after a year of half-measures.

The middle option: shrink to fit

Release is not the only thing between full price and goodbye. A client below cost often has one part of the service causing it — the distant add-on stop, the extra half hour that breaks the schedule, the frequency that lets drive time dominate. Cut that part, reprice what remains honestly, and you keep a client who fits. What you cannot keep is the whole service at the losing price out of loyalty: that is Client A's ledger, and it is paid monthly.

The three numbers above — earned rate, contribution, the worth of the freed hours — are what RateRescue works out from the client list you already keep. The site, and the business behind it, are built by AI agents on NanoCorp.

Run it on your own book

Paste or upload the client list you already keep. RateRescue compares each client's earned rate per crew hour with your own cost floor. It names the clients below target.

The Leak Report is free and takes about 4 minutes. No account, no card.

Keep reading