Contract profitability

Why a cleaning contract loses money,
and why nobody notices.

Written for commercial cleaning contractors and for the people who put work out to tender. A contract is sold as a price and delivered as hours. Everything interesting happens in the gap between the two.

The short answer

Revenue is fixed the day you sign. Hours are not.

Which means only one half of the equation can move, and it moves every week.

A cleaning contract is sold as an annual price. It is delivered in labour hours. From the moment the contract starts, the money coming in is settled and the cost of delivering it is not.

So when a contract disappoints, the cause is rarely the client. It is almost always that the site absorbs more labour than the quote allowed for. Scope creeps by a room at a time. Access is slower than assumed. Cover for an absence costs more than the person being covered. Supervision takes longer at the difficult sites, which are exactly the sites where nobody has time to check.

The uncomfortable part is that none of that shows up anywhere. Every one of those is small enough to be invisible on its own, and the ledger reports the total, months later, with no explanation attached. A contractor is then left with a number and no idea what caused it.

Which produces the pattern most contractors will recognise. Two sites at the same annual value, one comfortable and one exhausting, and no way to say why beyond a feeling that one of them is harder work.

01

At month end

The number arrives after the month it describes. By then the hours are spent and the only remaining option is to accept it.

02

At renewal

A contract comes up and the honest answer to whether it was worth holding is a guess dressed up as experience.

03

When wages move

An award increase lands across the whole book at once. Sites that were thin become unviable, and there is no list of which ones they are.

04

When you win more work

Growth multiplies whatever the estimating error already was. A quoting habit that is slightly optimistic is survivable at ten sites and serious at fifty.

Those are the four moments the problem becomes visible, and all four are too late to do anything about it. That is the actual problem. Not that contracts lose money, but that they finish losing money before anybody can act.

Honest assessment

What the accounts tell you, and what they cannot.

Accounting software is not failing at this. It was never the tool for it.

What you haveWhat it establishesWhat it does not establish
Contract valueWhat the client agreed to pay for the year.Whether that price was ever the right one for this site.
Invoices issuedWhat was billed, and when.Whether the work behind the invoice was actually delivered.
Payroll totalWhat the workforce cost across the business.Which contract each of those hours belonged to.
Company gross marginWhether the business as a whole is working.Which sites are carrying the others, which is the only version that is actionable.
Year end profitWhat happened.Why it happened, or what to change before it happens again.
A quote or tenderThe hours somebody once assumed the site would take.Whether that assumption ever turned out to be true.

Read the last row again. Almost every contractor holds an estimate of the hours a site should take, and almost none of them ever compare it to what the site took. The estimate is treated as a document for winning work rather than a forecast to be checked, which is why the same error repeats through every tender that follows it.

For contractors

Four principles that decide whether a contract holds its margin.

Not a system design. The principles underneath any operation that keeps its contracts honest.

01

Hours are the unit, not dollars

Money is the outcome. Labour hours are the thing that actually moves, and the only thing you can still influence once the contract is signed.

Watch the hours
02

A quote is a forecast

Every tender contains an assumption about how long the site will take. A forecast nobody checks against the outcome is a guess that gets repeated at the next tender, and the one after that.

Close the loop
03

Drift is quiet

Contracts rarely fail suddenly. They absorb a little more each month, and every individual month is small enough to explain away. The pattern is only visible if somebody is looking at the pattern.

Look while it is small
04

The cause decides the fix

Added scope is a conversation with the client. Slow access is a conversation with the site. A poor estimate is a lesson for the next quote. All three look identical in a total, and all three need a different response.

A total is not a diagnosis

There is a growth argument here as well as a margin one. A contractor who knows what their sites actually take can quote the next one with confidence rather than hope, and can walk away from work that will not pay. Both of those are harder to do on instinct than most people admit.

For the people putting work to tender

Why the cheapest tender is usually the expensive one.

Not a warning about bad contractors. A warning about how tenders are compared.

01

Price is compared, hours are not

Every bid quotes a number. Few evaluations ask how many labour hours sit behind it, which is the part that determines whether the service can actually be delivered.

02

A thinner bid is a thinner service

Materially fewer hours for the same scope means better productivity, a different method, or an unrealistic estimate. The tender process should establish which, because two of those outcomes are fine and one is not.

03

Ask for hours per site, not a total

A single labour figure across a portfolio hides everything. Per site is where an unrealistic assumption becomes visible before you sign rather than afterwards.

04

Price every bidder on one scope

If bidders are interpreting the scope differently, the cheapest number is measuring interpretation rather than value. Normalise the scope first and the comparison becomes real.

05

An underpriced contract fails on your site

A contractor who cannot make the numbers work does not absorb it quietly. It appears as turnover, thin cover, missed periodic work and a service that decays through the year.

06

Ask what happens at renewal

A contractor who can tell you what a site actually took, rather than what was quoted, is running an operation rather than hoping. That answer is worth more than a discount.

None of this argues for paying more. It argues for comparing the right thing. A contract awarded on price alone tends to be renegotiated, varied or replaced within its own term, and all three of those cost the client time that never appears on any invoice.

Reading the signs

What tells you a contract is drifting, and what tells you it is held.

Drifting
  • Nobody can say what a site was supposed to take.
  • Cover for absence is arranged without anyone costing it.
  • Extra work is done to keep a client happy and never priced.
  • Performance is discussed in feelings rather than figures.
  • The quote is filed once the contract is won.
  • Margin is known for the business and not for a site.
Held
  • Every site has an expectation somebody can state.
  • Cover is visible as a cost, not just as a gap filled.
  • Added scope becomes a conversation rather than a favour.
  • A drifting site is noticed in the month it starts drifting.
  • The next quote is informed by the last outcome.
  • The question is which sites, not whether the year was alright.

The difference between the columns is not sophistication and it is not budget. It is whether anybody is looking at the right level. Company margin is the wrong level, because it averages a good contract and a bad one into a number that describes neither.

Common questions

Contract profitability, answered directly.

How does a cleaning contractor work out whether a contract is profitable?

Not from the ledger. A cleaning contract is sold as a price and delivered as hours, so profitability is decided by the gap between the hours that were priced and the hours actually used. Revenue is fixed the day the contract is signed. Hours are not, and they move every week.

Why do cleaning contracts lose money?

Almost never because the client is underpaying. Far more often because the site absorbs more labour than the quote allowed for. Scope creeps, access is slower than assumed, supervision takes longer, cover costs more than the original cleaner, or the estimate was simply optimistic. Each is small. Together they are the margin.

Is revenue per site enough to know if a contract is working?

No. Two sites at the same annual value can be a good contract and a bad one, and they look identical on an invoice. Revenue tells you what was sold. It says nothing about what it cost to deliver, which is the only half that changes.

How often should a cleaning contractor review contract profitability?

Frequently enough to act while a correction is still possible. Reviewing at year end tells you what happened. Reviewing while the contract is running lets you do something about it, which is a different exercise entirely.

Why does the cheapest cleaning tender often cost more?

Because price and labour hours are quoted separately and only price gets compared. A materially lower bid for the same scope usually means fewer hours have been allowed. Those hours either appear later as a variation, or they do not appear at all and the service quietly falls short.

What should a contractor do when a site is running over its hours?

Find out why before changing anything. Overrun caused by scope that was added is a pricing conversation with the client. Overrun caused by access delays is a site conversation. Overrun caused by an unrealistic original estimate is a lesson for the next quote. The three look identical in a total and need completely different responses.

How do you make the next quote more accurate?

Price it against what the last comparable site actually took, rather than what the last quote assumed. Most contractors estimate from experience and never close the loop by checking the estimate against the outcome, which is why the same error repeats across every tender.

Where StandardsIQ fits

Twenty minutes.
One of your own sites.

StandardsIQ is an operations platform for commercial cleaning contractors in Australia. It exists so a contractor can answer the questions on this page about a site they name, in the month it matters, rather than at year end. Related reading: how cleaning work is proved.

Book a demonstration

Contractors, and the clients assessing them, are both welcome to ask.