«I service 34 sites, yet at the end of the month I keep less than I did when I had twenty. I sat down and worked out the margin on each contract separately. Turned out eight sites were running at a loss. The average was hiding them: the strong ones were carrying the weak ones, and I never saw it.» — owner of a cleaning company, Kyiv
Cleaning is a business where growing revenue is easy and finding profit by eye is nearly impossible. You have plenty of sites, the crews go out every day, the acts are signed, the money lands in your account on time. Then on the last day of the month you look at the balance and can't work out where it went. You even have more clients than before. Sound familiar? Then let's unpack why this happens and how to start seeing profit not for the company as a whole, but for each site on its own. Because that's exactly where it leaks.
Margin per site in plain words
Margin per site is how much money is actually left from a specific contract after you've paid to service it. Take the revenue from a site for the month and subtract the direct costs of that site: the wages of the people cleaning there, the chemicals and consumables used there, and the crew's travel. Office rent, the accountant, ads, and your own salary stay out of this for now — those are costs of the whole company, not of one site.
The difference matters. When you look at company profit as a whole, you see one big pot where everything has blended together. When you count margin per site, you see which contract feeds you and which one is quietly eating you. In cleaning this is especially important, because sites are wildly different: a 400-square-metre office and cleaning a single stairwell are two different businesses inside yours.
You need to count this margin every month, not once a quarter, and certainly not «when I get around to it». Cleaning changes fast: a client adds a floor, chemicals go up in price, a crew starts running late so you put on an extra person. Each of those small things shifts the margin of a specific site, and if you don't look at it regularly, a site can spend half a year in the red before you notice. The rule is simple: close the month, then spend an evening running through the margin of every contract.
The main line is payroll, and it eats the contract
In cleaning, staff payroll isn't one of the cost lines — it's the cost line. On a typical site it takes 45 to 65 percent of the contract's revenue. So of every thousand hryvnias the client pays, 450 to 650 goes straight to the people doing the cleaning. That's normal for the trade. What isn't normal is not counting it per site and assuming it's «around 50% on average».
Next come materials and chemicals. Trivial on paper, in practice another 8–15% of the contract, and on high-traffic sites (a supermarket, a station, a shopping mall) a full 20%. Bags, wipes, floor products, gloves, replacement pads. It drains away every day, almost unnoticed, until you count it separately for one specific site. And on large floors it's easy to overspend chemicals, because nobody measures the dosage — the crew pours «by eye», and that comes straight out of your margin.
And third, logistics. Getting a crew to a distant site eats time and money that the rate often doesn't cover. A site across town, where the crew spends an hour each way, can have a fine price per square metre and still run at zero, because you pay people for the road and the client doesn't pay for it.
The most common mistake here is splitting wages across sites by eye. A cleaner works at three addresses, and the owner tells himself «well, roughly equally». In reality she spends four hours at one site, two at another, an hour and a half at the third. If you split her wage by actual time rather than equally, the picture per site changes sharply: the one that looked fine turns out to be thin, because it takes more man-hours than you thought.
Why the company average lies
Here's the trap. Say you have 30 sites. Total company margin is a pleasant 22%. You feel calm. But 22% is an average. Inside it, three fat contracts run 35% each, a dozen normal ones run 20%, and eight sites drag a minus. The strong contracts use their money to plug the hole left by the weak ones, and while it's all in one pot, you never see that hole.
The problem is that you service the loss-making contracts just as diligently as the profitable ones. People travel, chemicals get used, the foreman calls. You pour resources into them and they return less than they take. Every new site like that adds turnover and subtracts profit. That's how you end up with more clients and less money. Not because the business is bad, but because you can't see who inside it is bleeding.
There's an even sneakier side to the average. It reassures you at exactly the moment you should be on your guard. The company grows, you take on new sites, turnover is up 40% in half a year, and the overall margin holds at the same 22%. It looks like everything's under control. In reality half of the new contracts are weak, and they slowly eat into the profit of the older strong ones. You don't see it because the number «22%» hasn't moved. You'll see it when the strong sites can no longer carry the rest and the balance in your account suddenly caves in. Then you're putting out a fire instead of never letting it start.
Example: five sites under one roof
Let's look at a live picture. A company services five sites. Here's what the month looks like once you count each one separately.
| Site | Revenue/mo | Wages + materials + travel | Margin |
|---|---|---|---|
| Praktyka business centre, offices | 48,000 UAH | 30,000 UAH | 18,000 UAH (37%) |
| Narodnyi supermarket | 62,000 UAH | 41,000 UAH | 21,000 UAH (34%) |
| One-off post-renovation clean | 18,000 UAH | 12,000 UAH | 6,000 UAH (33%) |
| Rivyera residential, stairwells | 26,000 UAH | 24,500 UAH | 1,500 UAH (6%) |
| Beauty salon on the outskirts | 12,000 UAH | 14,500 UAH | −2,500 UAH |
Together that's 166 thousand in revenue and 44 thousand in margin. An average of 27%. Looks fine. Now look closely at the last two rows. The beauty salon runs at a loss: it's far away, the crew spends more on the road than it earns on the cleaning itself, plus the site is small and you haul chemicals there almost specially. The residential stairwells give a token 6% — effectively you service them for free, because wages and travel ate almost everything.
These two sites live off the supermarket and the business centre. Drop them and the company earns more straight away, with less turnover and less hassle. That's what the average hides.
Now imagine you have not one such «salon» but eight, all on different edges of the city. Each on its own looks like a trifle: a minus of two or three thousand, is that even money. Together they eat 20 thousand of profit every month and half of your logistician's free time, because they all have to be squeezed into a route somewhere. That's exactly why small loss-making sites are more dangerous than one big problem site: the big one is visible at once, and eight small ones dissolve quietly into turnover.
What to do with these numbers
Once you see the margin on each site, the decisions become simple and concrete. First, the loss-making contracts. You don't have to drop them at once. You have to renegotiate. Work out the price at which the site would reach at least 15% margin and go to the client with that figure. Some will agree to pay more, because switching contractors and training a new crew is a headache for them too. Whoever won't agree, you part with calmly, and that frees up people for profitable sites.
The conversation with the client is easier than it seems when you have a number in hand. You don't say «it's not enough for us, pay more». You say: at the current price we don't even cover the crew's wages on your site, here's the calculation, and we're proposing a new rate. When the client sees specifics rather than «we want more», the talk goes calmly. Half of the sites owners considered «impossible to raise» go up quietly the moment there's an argument in figures.
Second, travel. Put your sites on a map. If a crew spends an hour on the road for a two-hour clean, that hour has to be either in the price or off your books. Sometimes it's enough to redraw the routes so a crew handles two or three nearby sites per trip instead of criss-crossing the whole city. One cleaning company in Kyiv freed up an entire crew after redrawing its routes, simply because people stopped spending half the day on transport.
Third, one-off jobs versus subscriptions. A one-off post-renovation or deep clean gives high margin at once, but you can't forecast it: here today, gone tomorrow. A subscription gives lower margin per site, but a steady, predictable flow and a busy crew. A healthy portfolio keeps the balance: subscriptions cover fixed costs and keep people occupied, one-offs give you extra on top. The mistake is building the whole business on one-offs and then wondering why one month is feast and the next is famine.
And fourth, the one hardly anyone counts — staff turnover and overtime. A cleaner quits, you put two people on the site instead of one while you look for a replacement, or you pay the current crew overtime. That's real money, and it lands on exactly the site where the gap opened. If people churn every month on a given contract, its margin will always sit below your estimate, because you're constantly paying to patch holes. Count just once what a single departure costs: the search, the training, a newcomer's mistakes in the first two weeks, the overtime for the rest of the crew. You get a figure that makes it obvious why keeping a person is cheaper than finding a new one.
How it sounds in real life
«Come on, the salon pays on time, why touch it». It does pay. But behind that money is a crew that drives an hour and a half there and back, and chemicals you haul over on a separate trip. The client is reliable and the site is a loss-maker. The two have nothing to do with each other.
«All my sites are profitable, I'm not stupid enough to work at a loss». That's the most common line, and it's almost always untrue. Not because the owner is stupid, but because he does the maths in his head on the big sites, where the margin is obvious, and never checks the small ones. And the loss hides precisely in the small and distant ones.
«I'll take on a couple more contracts, lift the turnover, and it'll get easier». If any of those contracts is loss-making, it'll get harder. More turnover, more crews, more hassle and less money in hand. In cleaning, turnover doesn't equal profit, and the bigger the company, the more painfully that shows.
«I'll cut the price to win the tender and make it back on volume». In cleaning that almost never works. Volume means more people and more chemicals, so your direct costs grow together with revenue. If the margin per unit was thin, more volume simply scales your problem rather than saving you from it.
How to see it in Finmap
To count margin per site you don't need a complex system. You need money to come in and go out tied to a specific site from the very start. In Finmap it works like this.
Income by site. You set up each contract as its own category or project: Praktyka business centre, Narodnyi supermarket, Rivyera residential. A payment lands and you see at once how much each site brought in for the month, instead of one lump sum.
Direct costs, kept separate. You book crew wages, chemicals and travel against that same site. Now the cost of revenue sits right next to the revenue, and the margin calculates itself, without a calculator or a notebook. It's worth tagging one-off jobs in a category separate from subscriptions, so you can later see how much profit comes from your stable base and how much from irregular extras.
Margin on each. You open the report and see a ranked list: this site runs 37%, this one 6%, and this one is in the red. The very average that reassured you breaks apart into concrete contracts you can actually work with.
Payment calendar. Cleaning lives on payroll, and payroll has to be paid on time no matter when the client pays. The calendar shows upcoming payments and receipts in advance, so you see a cash gap before it happens, not on the day you have to hand money to the crews.
Here are a few things worth doing this very week.
- Work out the margin on each site for at least one month. Not in your head — on paper or in Finmap, with real wage and chemical figures.
- Flag every contract below 15% margin. That's your list for a price review.
- For each loss-making site, calculate the break-even price and take it to the client.
- Split crew wages by actual time on site rather than equally — that keeps the margin honest.
- Put your sites on a map and review the crew routes — travel often eats more than it seems.
- Keep the balance of subscriptions and one-offs: steady contracts cover payroll, one-offs give profit on top.
- Watch the sites with high turnover — margin there is always below the estimate because of overtime.
On a related note — if you want to look at profit more broadly than a single site, read Margin by Direction, Location and Channel, and to keep cleaning's biggest line — payroll — under control, see Payroll: What Percentage of Revenue Is Normal.
«Profit in cleaning isn't where the big site is. It's where you don't drive a crew across the whole city for two hours of work.»
«A loss-making contract doesn't shout. It works quietly while you think you've gained clients.»
Money Doesn't Disappear. You Just Don't See It.
The profit in your cleaning company doesn't vanish anywhere. It simply dissolves into the handful of sites you service at a loss without seeing it behind the average. Work out the margin on each contract and the picture becomes obvious in a single evening. Finmap shows income by site, direct costs kept separate, and the margin of each, so you can see who feeds you and who eats you. Try it free for 14 days and look at your sites in a new light.
Frequently Asked Questions
Three lines: the wages of the people cleaning that specific site, the chemicals and consumables used there, and the crew's travel. Don't load office rent, the accountant, ads or your own salary onto a site — those are costs of the whole company.
In cleaning, wages usually take 45–65% of a contract's revenue, and that's a normal range for the trade. It's a warning sign when a specific site goes above 70%: after chemicals and travel there's almost no profit left.
First, renegotiate the price: work out what it takes to reach at least 15% margin and take that figure to the client. Some will agree. Whoever won't, you part with, and the people free up for profitable sites.
Because the overall margin is an average. Inside it, strong contracts plug the hole left by loss-makers, and while it's all in one pot the loss-makers stay invisible. Count the margin on each site separately and the minus shows itself.
One-offs give higher margin at once, but you can't forecast them. Subscriptions give lower margin but a steady flow and a busy crew. A healthy portfolio keeps both: subscriptions cover fixed costs, one-offs give profit on top.
