Your revenue is up — thirty, forty percent over two years ago. You’ve added crews, an office hire, a second van. And your own take-home is about what it was when the company was half this size. Some months it’s gone backward.
That’s not a bookkeeping error. It’s the most common shape a growing cleaning business takes: the top line grows, and everything underneath it grows a little faster.
Revenue keeps the business moving. Profit is what determines whether the business is working for you. The line worth carrying around: revenue shows how much work you are doing. Profit shows whether that work is worth doing. At your size, the question is no longer whether you know the difference. It’s whether you can see — job by job, crew by crew — where the difference is leaking.
Where the Gap Hides in a Multi-Crew Business
When it was you and one crew, a bad-margin week was something you felt. At three, four, five crews, it disappears into motion. The gap between growing revenue and flat profit almost always hides in the same four places:
Windshield time you pay for and can’t bill. Four crews, jobs scattered across the map because the schedule was built around client requests instead of zones. Every crew loses an hour-plus a day driving between jobs. Run that out and it’s 80–100 paid hours a month producing nothing — a part-time employee’s worth of payroll spent looking through a windshield.
Payroll that grows faster than the revenue it serves. You take on $9,000 a month of new recurring work and hire ahead of it — a new crew, because the existing ones are full. But a new crew’s schedule doesn’t fill for months, and while it does, you’re paying wages, payroll taxes, workers’ comp, and supervision on idle hours the new revenue doesn’t cover. On paper the company grew. In the account, the growth is paying for itself — at best.
Legacy accounts priced two rate cards ago. A third of your recurring clients came on when your costs were lower and your pricing was softer. They fill prime slots at rates that made sense years ago. The calendar is full and the margin is thin — and the accounts holding the schedule hostage are the ones you’ve had longest.
An office layer that runs on activity. You hired office help so you could step out of the day-to-day. They’re busy all day — rescheduling, fielding complaints, patching callouts. The busy is real. But at month’s end, none of that motion tells you which crews, which accounts, and which days made money.
And that’s the specific frustration of this stage: you did the thing everyone says to do. You grew. And it bought you more payroll, more complexity, and more risk — at the same personal income.
The Numbers That Tell You the Truth
You don’t need more reports. You need a handful of numbers, per crew and per account — not company-wide averages:
Direct payroll as a percentage of revenue. Across MaidCentral’s customer base, this has held steady at roughly 41–42% of revenue over the past several months (May 2026: 41.74% on average — and notably consistent whether the company is small, medium, or large). That’s not an industry standard; it’s a real reference point drawn from more than 150,000 cleanings logged every month. If yours runs well above it, the gap has a source — pricing, drive time, or paid hours that don’t produce revenue. Find which.
Revenue per job hour, by crew. Two crews can bring in the same weekly revenue while one costs you 20% more hours to do it. Company-wide numbers hide this. Per-crew numbers surface it within a week.
What each account actually leaves behind. Revenue per job minus labor, drive time, and supplies — for your biggest recurring accounts, with real numbers. This is what tells you which “good clients” are quietly subsidized by your better ones, and what a rate correction is worth before you make the call.
Your own pay, as a fixed line. Pay yourself like the business’s most important vendor, then judge profit on what’s left after. If profit only exists because you underpay yourself, the business isn’t profitable — you are.
Recognize More Than One of These?
Most growing operators do. Seeing it on your own numbers — not just reading about someone else’s — takes one working session.
Revenue or Profit? Both, in the Right Order
None of this is an argument against growth. It’s an argument about sequence. Revenue funds the machine; profit is what the machine is for. Profit is what lets you pay yourself like the owner of a real company, carry a slow month without panic, replace a van without financing stress, hire ahead of need instead of behind it — and take a week off without the schedule collapsing.
The Reality Check
A business doing $80K a month and keeping almost nothing isn’t ahead of one doing $55K and keeping plenty. It’s just heavier.
Seeing It Without Building a Spreadsheet Empire
You could assemble all of this by hand — export payroll, cross-reference the schedule, rebuild the crew-level math every month. Some operators do, for a while. It usually survives about a quarter, because it competes with everything else that needs you.
This is what MaidCentral is actually for at your stage: the schedule, timekeeping, and job data already live in one place, so payroll-to-revenue, revenue per job hour, and account-level profitability aren’t a monthly project. They’re just visible — per crew, per account — while there’s still time in the month to act on what they show. And none of it changes how you run the company: your crews, your standards, your way of quoting stay exactly as they are. Not more to manage. Less to reconstruct.
What Changes When You Can See It
The Friday close looks different. You know which crews earned their hours this week, and which route is bleeding drive time. You know which three accounts are next for a rate correction, and roughly what it’s worth. When you add the next crew, you’ll know within two weeks whether it’s carrying its cost — not at tax time.
Growth stops being something that happens to your margins, and becomes something you steer.
Questions Growing Operators Ask
Why is my profit flat while my revenue keeps growing?
Because the costs that grow with revenue — payroll, drive time, supervision, office hours — usually grow slightly faster than the revenue they serve. Company-wide numbers hide it; the answer is almost always visible in per-crew and per-account math within a week of looking.
What should direct payroll be as a percentage of revenue?
Across MaidCentral’s customer base, it has held at roughly 41–42% over the past several months (May 2026 average: 41.74%), and it’s strikingly consistent whether the company is small, medium, or large. That’s a reference point from real operating businesses, not an industry standard. If you’re running well above it, the gap has a findable source: pricing, drive time, or paid hours that don’t produce revenue.
How do I know which recurring accounts are underpriced?
Work out what each big account actually leaves behind — revenue per job minus labor, drive time, and supplies. Start with your oldest accounts; they’re the ones most likely sitting on a rate card from two price increases ago. If an account only looks good because a better one is subsidizing it, it’s due for a correction — the rate increase calculator shows what that correction is worth before you make the call.
When does adding another crew actually make sense?
When your existing crews are running dense routes at solid revenue per job hour, and demand is overflowing at rates you’d set today. Adding a crew to absorb underpriced demand grows the payroll faster than the profit. If you can’t yet see cost per crew, fix that before you hire.
Want to pressure-test your own numbers first? Pull last month’s payroll report and work out direct payroll as a percentage of revenue — one number, twenty minutes. The monthly Professional Cleaning Index gives you a real reference point to set it against.
Running multiple locations, or past the $1M mark? This problem changes shape at scale — margin leaks stop being visible from any one schedule. We wrote about that version separately →
Already Tracking This by Hand, and Tired of Rebuilding It?
That’s the stage a demo is actually built for — bring your real numbers and see them wired together instead of reconstructed.
