Bidding Commercial Cleaning Jobs So You Actually Make Money
Published by
Throne of Profit EditorialReviewed by
William Hassell
Founder & Chief Editor, Throne of Profit
A losing cleaning contract is almost always born at the bid. The walkthrough underestimated how long the building really takes, the scope was fuzzier than it looked, and a competitive number got put on paper — and then the crew spends the next year proving the bid wrong, one over-hours shift at a time. In commercial cleaning, the bid is where profit is decided, because labor is the whole cost and a bid that underestimates hours locks in a loss you can't work your way out of.
Bidding well means estimating the real labor a building takes, pricing it to cover fully-loaded cost plus profit, and pinning down scope so "extra" work doesn't quietly expand the hours. And it means learning: comparing what you bid to what accounts actually consume, so your next bid is sharper instead of repeating the same optimistic mistake.
WHERE THE LOSING CONTRACT STARTS
walkthrough underestimates hours ─┐
scope left fuzzy ├─► optimistic bid ─► locked-in loss
competitive number to win ─┘ (crew runs over every shift)
Fix it at the bid, not in the field.Owner symptoms
Accounts routinely run more hours than you bid.
Your bids are based on a quick walkthrough and a competitive gut number.
You don't compare what you bid to what accounts actually take.
Why this happens
Bidding cleaning work is deceptively hard: a building's true cleaning time depends on square footage, layout, traffic, surfaces, and scope, and a quick walkthrough tends to underestimate all of it. Competitive pressure pushes the number down further. And because most owners never compare their bids to actual hours worked, the underestimate is never caught — so the same optimism gets baked into the next bid. The loss is set before the crew ever starts, and nobody traces it back to the estimate.
Common mistakes
Underestimating hours from a quick walkthrough.
Bidding to win on a competitive number the labor can't support.
Leaving scope fuzzy, so "extra" tasks expand the real hours.
Never comparing bid to actual, so estimates never improve.
Business consequences
Bad bidding fills a cleaning company with contracts that can't make money, no matter how well they're run. The crews aren't the problem; the numbers were wrong before they arrived. These accounts drain the margin the good ones earn, and because the shop keeps bidding new work the same optimistic way, it keeps adding losers. Growth in revenue doesn't become profit. The owner who bids on real labor estimates, prices to cover loaded cost plus profit, pins down scope, and learns from actuals wins the work that can actually pay — and stops manufacturing losses at the bid table.
How experienced operators think about it
They treat the bid as the most important number in the business and refuse to let optimism or competitive pressure set it. They estimate labor realistically for the specific building and scope, price to cover fully-loaded cost plus a real profit, and nail down exactly what's included so scope can't quietly expand the hours. Above all, they close the loop: they compare what they bid to what the account actually consumes, treat the gap as a lesson, and let it sharpen the next bid. Bidding, to them, is a discipline that compounds, not a gut call repeated.
Practical actions
Estimate labor realistically for the specific building, layout, and scope — not a quick guess.
Price to cover fully-loaded cost plus profit, not just to beat a competitor.
Pin down scope in the bid so extra tasks don't expand hours for free.
Compare bid to actual hours on every account, and adjust your estimating.
Walk away from work you can only win by underbidding the labor.
Questions every owner should ask
How do my bids compare to the hours accounts actually take?
Am I estimating real labor, or putting down a competitive number and hoping?
Is scope pinned down in my bids, or left to expand?
Frequently asked questions
How do I estimate cleaning hours accurately for a building I just walked?
Base it on your own history — how long comparable buildings actually take your crews, by square footage, layout, surfaces, and scope — rather than an on-the-spot guess. That's why comparing past bids to actual hours matters: it gives you real benchmarks to estimate from. A careful walkthrough plus your own actuals beats gut every time.
Won't bidding realistically cost me contracts to lowball competitors?
You'll lose some — the ones you'd have lost money on anyway. Lowballing competitors often win contracts that quietly bleed them, then cut corners or fail. Bidding to actually profit means winning sustainable accounts and walking away from ones that can't pay. A contract you lose because you wouldn't underbid the labor isn't a loss.
Related articles
Running a Profitable Commercial Cleaning Company — the pillar.
Which Cleaning Contracts Make Money — where bids get judged.
Pricing and Raising Rates in Commercial Cleaning — pricing the bid.
Estimating vs. Actuals: Closing the Gap — the general loop.
Try a free Weekly Focus assessment
If your accounts keep running over the hours you bid, the loss started at the bid. Throne of Profit's free Weekly Focus assessment is a no-cost way to see where to start.