How Much to Charge for a Deep Clean or Move-Out Clean

The short answer

A move-out clean quoted flat at $675 took 36 labor hours. That's $18.75 of revenue for every hour somebody worked.

Here are the numbers. A 2,400 square foot split level, high cost of living area. Quoted $675. The crew was four cleaners for nine hours, which is 36 labor hours.

$675 divided by 36 is $18.75 per labor hour, before supplies, before equipment, before tax, before anything.

The operator never said what he pays a cleaner, so we can't tell you whether that job lost money. What we can tell you is the shape of it. For scale, and it's scale rather than proof, a commercial cleaning operator in the same subreddit carries his labor at $20 an hour in cost. Different operator, different work, and he never named his market. If the move-out crew was paid anywhere near that figure, $18.75 of revenue doesn't cover the wage, let alone the supplies or the drive.

That's a range of outcomes rather than a verdict, and the range exists because the number was a flat price, not hours times a rate.

The rule underneath it: recurring is the only safe flat rate

Two operators, separately: charge hourly on move-outs and deep cleans, never flat rate.

A third has a variation worth stealing. He charges hourly for the first two cleanings, then sets a flat price once he knows how long the property actually takes. Two operators state the rule and one states a route to a flat price that earns it, which isn't quite the same claim and shouldn't be counted as a third vote.

The logic isn't complicated. A flat price is a bet that you know the hours. On recurring work you do, because you've cleaned that house before. On a move-out you've never seen the property with the furniture out of it, and the furniture was hiding the reason it takes longer than you think.

The $675 job was a flat price on a move-out. The rule exists to stop exactly that.

Condition multiplies the hours

One operator carries condition tiers in writing:

ConditionHours
Maintained homebase
Genuinely dirty1.5x
Never been cleaned2.5x to 3x

No price book we've looked at carries this line, ours included when the finding landed. We haven't surveyed the cleaning software market and won't tell you nobody has it. What we can say is that it multiplies the one input that decides whether you made money, and our own product didn't have a field for it.

Read it next to the floor another operator gives: eight hours minimum for a normal home on a deep clean.

One caution about comparing that to the job above, because the units aren't the same. The $675 job ran 36 labor hours across four cleaners. The eight hour minimum was stated without saying whether it means one cleaner's day or the total labor on the job. If it means one cleaner, nine clock hours with four cleaners is a little over that minimum in clock terms and four and a half times it in labor terms, and those are two different sentences. We don't know which the operator meant, so we won't run the multiplication. Ask the question on your own jobs: labor hours or clock hours, and say which on the quote.

Floors protect small jobs. They don't protect long ones

One operator has never done a move-out under $500. That's one stated floor rather than a market rate, and it's the only move-out floor we've collected.

It's real and useful, and it didn't save the $675 job, because the $675 job cleared it. A minimum protects you from jobs that are too small. It does nothing about jobs that run too long. Those are different failures and they need different guards, a floor for one and an hourly basis for the other.

If you only have the floor, you're protected against the cheap job and exposed on the long one.

What the commercial model teaches residential

One operator's complete model for a 5,000 square foot office, per service:

LineFigure
Labor3 hrs at $20/hr cost = $60
Supplies$5
Equipment reserve$5
Direct cost$70
Price$175
Gross margin60%

That model reconciles all the way out. At $175 a service it works out to $9.10 per square foot annually, which on 5,000 square feet is $45,500 a year, which is 260 services, which is five a week. Every figure agrees with every other figure. That's what a priced job looks like.

Now watch what one wrong input does to it. The price never changes:

Actual hoursDirect costGross margin
3.0 (as quoted)$7060%
3.5$8054%
4.0$9049%

Half an hour costs six points of margin. An hour costs eleven.

Every input in that model is known before you sign except one. You know your wage rate, your supply cost, your equipment reserve, and your price. Hours are the only line that can move after the ink dries, and they're the only line you estimated.

An operator in the same room reported the same thing from the other end: 13 extra labor hours dropped an account from 24.4 percent margin to 18.3 percent. Same mechanism, a real account, and nobody's rate moved.

This is one operator's model on one building. It reconciles internally, which is real support, and it's still one building.

Two lines missing from most cleaning models we've collected

Equipment reserve. The commercial model above carries $5 per service for it, which is unusual, because most models we've collected don't. It isn't a cleaning quirk either: three operators in three trades carry it, $20 an hour flat in lawn care, $5 per service in commercial cleaning, and a management fee funding vacuum and sprayer replacement in painting. Your machines have a finite life and every hour of it is being spent on a customer's floor.

Drive and travel time. Missing from the commercial model above, and from most others we've collected.

At five services a week, a thirty minute round trip is two and a half hours a week you aren't paid for. On this operator's numbers, at his $20 labor cost, that's $50 a week against $875 of revenue, or 5.7 points of gross margin.

That figure belongs to this model and doesn't travel. Run the same thirty minutes against a lawn care operator's numbers, five stops at $100 with a crew cost near $35 an hour, and the same unpaid time is closer to seventeen points. Same half hour, three times the damage, because the crew costs more and each stop brings in less. Cost your own drive time at your own rate against your own revenue, and treat anybody's percentage, ours included, as an illustration.

Both of these are hours-side or cost-side. Neither is a rate problem.

How to actually build the price

The operator above works backwards from margin, dividing cost by 0.40 to hit 60 percent. A landscaper in a different room described the same structure, multiplying cost of doing business by 1.67.

Those are the same method at different targets, and it's worth saying because the two numbers look like they disagree:

Target gross marginDivide cost bySame as multiplying by
40%0.601.67
50%0.502.00
60%0.402.50

Two trades, two rooms, and the same structure. They agree on the method and they don't agree on the target, and on $500 of cost the difference between them is $833 against $1,250. Take the method. Pick your own target.

Note what goes into cost. Wages, supplies, equipment reserve, and travel. If travel isn't in there, your margin target is being calculated against a cost that's missing a line.

What we don't have

Saying this out loud, because a gap left silent is a gap somebody fills with an industry average.

We hold no residential hourly sell rate. Not one. The $20 above is a commercial operator's cost, not anybody's price, and we won't convert one into the other for you. If you came here searching for what to charge per hour for residential cleaning, we haven't collected it yet, and a number we made up would be worth less than nothing to you.

We hold no residential production rate, no square feet per hour for deep cleaning of any kind. The hours in this guide are hours operators reported working on specific properties, not a rate you can apply to yours.

What that leaves you is a method, a set of multipliers, and one worked job. That's useful, and it isn't a price list.

The rate check

Do this on every deep clean and every move-out before you send it.

  1. Count labor hours, not clock hours. Four cleaners for nine hours is 36 labor hours, not 9.
  2. Take your quoted price and subtract supplies. Subtract supplies from the price you're about to send.
  3. Divide by labor hours. That's your revenue per labor hour.

Then compare it to what you pay per labor hour. If it isn't comfortably above your wage cost, the job loses money and more volume won't fix it.

The move-out at the top of this guide returns $18.75. Whether that clears its own wage cost is a number only that operator has. The check takes fifteen seconds, and nothing he posted shows him running it.

Get the pricing teardown.

One real job, pulled apart into hours, materials, and margin, every week. Free.

No spam. Unsubscribe whenever you want.

Run your own number

The first four come from your business, not from us. We don't hold a residential cleaning rate, so we won't make one up.

$/ hour

Your wage cost per cleaner-hour, not your sell rate.

cleaners
hours

Clock hours for each cleaner on a maintained home, from your own jobs. One operator puts a normal-home deep clean at eight hours minimum, and didn't say whether that's one cleaner or the whole crew.

%

One cleaning operator runs 60%, a landscaper runs 40%. Pick your own.

One operator's tier card: 1.5x for genuinely dirty, 2.5x to 3x for never cleaned. 2.75 is the middle of that band.

$
$

$5 each is one commercial operator's figure for a 5,000 sq ft office. Replace it with yours.

minutes

Costed at your labor cost for every cleaner in the truck.

$

One operator has never done a move-out under $500. Set it to your own floor, or 0 for none.


Check a flat price

$

Uses the labor cost, crew, hours, condition, supplies and equipment above.

What goes on the quote

  • Basis of pricing, hourly for one-time work, stated plainly, with an estimated range
  • Estimated labor hours, the crew size and the hours shown separately, so the customer sees 4 x 9 rather than a total
  • Condition tier, which tier the estimate assumes, named
  • Supplies, per service
  • Minimum, the floor, stated
  • Travel, if the property is outside your normal radius

Two lines of terms that save an argument.

One-time cleans are billed hourly against the estimate. Recurring service moves to a flat rate after the second visit. That's the two-operator rule with the third operator's route to a flat price attached, and it gives the customer a reason to want the recurring contract.

The estimate assumes the stated condition tier. A property found in worse condition is billed at the same hourly. You're quoting a house you've seen photos of. The oven is a different conversation.

Frequently asked

How much should I charge for a move-out clean?

Charge hourly, not flat. One operator reports never taking a move-out under $500, and another puts an eight hour minimum on a normal-home deep clean. Estimate labor hours against a condition tier, multiply by your own rate, and check the answer against your floor, but don't let the floor be your only guard, because it does nothing about a job that runs long. We haven't collected a residential hourly sell rate, so the rate in that multiplication has to be yours.

Should I quote a flat rate or hourly?

Hourly for move-outs and deep cleans. Flat only on recurring work, and only once you've cleaned the property at least twice and know its real hours. Two operators stated that rule outright and a third arrived at a flat price by exactly that route.

How much longer does a dirty house take?

One operator writes it down as roughly 1.5 times the hours of a maintained home if it's genuinely dirty, and 2.5 to 3 times if it's never been professionally cleaned. That's one operator's tier card rather than a market standard. Condition multiplies hours, and hours are what decide the margin.

What gross margin should I target on commercial cleaning?

One operator runs 60 percent, built by dividing direct cost by 0.40. Direct cost there was three hours of labor at $20, plus $5 supplies and $5 equipment reserve, priced at $175 per service on a 5,000 square foot office. A landscaper in a different trade runs the same structure at a 40 percent target. Pick your own, and make sure travel time is inside your cost figure before you apply any margin target to it.

Why is my margin lower than I calculated?

Almost always hours, almost never rate. On the 60 percent model above, half an extra hour per service costs six points and a full extra hour costs eleven, with the price unchanged. Unpaid drive time on that same model costs another 5.7. On lower-ticket work with a higher crew cost it costs considerably more.

Where these numbers come from. Hours, prices, margins, and minimums in this guide were collected from operators publicly posting real jobs, including the hours they worked. They're field figures, not survey averages and not our estimates. Every cleaning figure on this page comes from one session in one subreddit, and the two jobs it leans on are one move-out and one office. One job is a case study, not a data set. Where we hold no figure at all, we've said so rather than filling the gap. Tune all of it to your own costs and your own market.