Cleaning Business Profit Margin: How to Calculate It, Job by Job

Quick answer
Profit margin is profit ÷ price. To hit a target margin, price the job at cost ÷ (1 − margin). Adding a percentage on top of cost (markup) gives you a lower margin than you think: a 30% markup is only a 23% margin. Then check real profit after each job or each month, because extra time is where margins disappear.
Two owners can charge the same price for the same home and make very different money. The difference is usually not the price. It is knowing the cost of each job, and checking it after the job is done.
Margin and markup are not the same
Margin is the share of the price you keep as profit.
Margin = (Price − Cost) ÷ Price
Markup is how much you add on top of cost.
Markup = (Price − Cost) ÷ Cost
They use the same profit but a different base, so the numbers never match:
| If you add this markup | Your real margin is |
|---|---|
| 25% | 20.0% |
| 30% | 23.1% |
| 43% | 30.1% |
| 50% | 33.3% |
| 100% | 50.0% |

If your plan says "30% profit," use the margin formula to set the price:
Price = Cost ÷ (1 − target margin)
Choose a target margin
There is no single right number. Here is what changes with the margin on our example house cleaning job, which costs $139.86 to do (labor with burden, paid drive time, vehicle, supplies and overhead):
| Target margin | Price | Profit per job |
|---|---|---|
| 20% | $174.83 | $34.97 |
| 25% | $186.48 | $46.62 |
| 30% | $199.80 | $59.94 |
| 35% | $215.17 | $75.31 |
When you pick yours, think about three things:
- Your own pay. If you clean jobs yourself and are not on payroll, put your hours into the labor cost at a fair wage. Otherwise your "profit" is really your salary.
- Slow months and surprises. Cancellations, a broken vacuum, a sick cleaner. The margin pays for these.
- Growth. Hiring, training and marketing cost money before they pay back.
Then compare the price with your local market, as in our house cleaning pricing guide.
Gross margin vs net margin
You will hear both terms:
- Gross margin usually counts only the direct job costs: labor, supplies, travel.
- Net margin also subtracts overhead: insurance, software, phone, marketing, your admin time.
The method in this guide includes a share of overhead in every job, so the margin you see is closer to net. That is the safer number to plan with.
Check the real profit after each job
A price is a forecast. The real margin depends on what actually happened. The most common leak is time.
Our example job was priced for 4.09 cleaner-hours on site. If it really took 5 hours:
| Planned | Actual | |
|---|---|---|
| Hours on site | 4.09 | 5.00 |
| Job cost | $139.86 | $158.70 |
| Price | $199.80 | $199.80 |
| Profit | $59.94 | $41.10 |
| Margin | 30.0% | 20.6% |
Less than one extra hour took a third of the profit. One job like this is noise. A pattern is a pricing problem. Log every job: date, client, service, price, estimated hours, actual hours, and what you really earned.

For commercial contracts: check every month
Commercial contracts hide overruns better, because you are paid the same amount every month. Compare estimated and actual labor hours for each account monthly.
In our commercial example, an office priced at $1,300.43 a month for 26 cleaning hours has a planned profit of $325.11 (25%). If the crew really needs 32 hours, the extra 6 hours at $20.06 cost $120.36. Profit falls to $204.75, a 15.7% margin, every month, for the whole contract.

When a contract runs over, act in this order:
- Fix the routine (wrong equipment, wasted steps, the wrong person on the site).
- Agree paid extra work for anything outside the scope of work.
- Re-price at renewal with your real hours.
Five ways to raise your margin without raising every price
- Set a minimum job price, so small jobs still cover travel and overhead.
- Charge for add-ons (inside the oven, inside the fridge, windows) instead of including them for free.
- Tighten your service area. Drive time is unpaid work for the client and paid work for you.
- Price first visits separately. A first clean takes longer than a maintenance visit.
- Review prices on a schedule, for example every three months, and whenever wages or fuel go up.
Frequently asked questions
What is a good profit margin for a cleaning business?
It depends on your market, your services and whether your own pay is in the costs. Instead of copying a number, pick a target, price with it, and measure your real margin each month.
Is margin the same as markup?
No. Markup is profit divided by cost. Margin is profit divided by price. A 30% markup is a 23.1% margin.
How do I calculate margin on a recurring client?
Use the recurring visit's own time and cost, after any frequency discount. Recurring visits are usually faster, but discounts can cancel that out.
Should overhead be in the job cost?
Yes, if you want to know the real profit. Divide your monthly overhead by your jobs per month and add that amount to each job.
How often should I check my margins?
After every job for house cleaning, if you can, and monthly for commercial contracts. At minimum, review every quarter.
Example numbers in this guide are for illustration. Use your own costs. This is not legal, tax or accounting advice.
Sources
- Example numbers are illustrations built with the method above, not industry data.

