Guide
How to Price Cleaning Services
A pricing framework for residential and commercial cleaning jobs: hourly, flat-rate, square-foot, and profitability math.
By CleanBizStack Editorial
Published Updated 9 min read
Last reviewed by the editorial team on

Most cleaning operators undercharge for their first year and spend the next two years trying to claw the prices back. This guide is the playbook to skip that step — a working framework for pricing residential and commercial cleaning jobs that holds up when you do the math at the end of the month. It is opinionated. Adjust it to your market.
The short version
If you only read one paragraph: figure out your true cost per hour (wages, taxes, supplies, overhead), pick a target gross margin (40–55% for residential, 25–40% for commercial), set a minimum job size, and quote flat-rate as soon as you have data. Walk away from any client who needs you to lose money to keep them. That is the whole framework. The rest of this guide is how to put numbers on each step.
- Know your cost per hour before you quote anything. Wages, payroll taxes, supplies, mileage, insurance, software, marketing.
- Pick a target margin. Residential: 40–55%. Commercial: 25–40%.
- Quote flat-rate after the first clean. Hourly punishes you for being efficient.
- Set a minimum job size. Anything under it does not pay for the drive.
- Raise prices annually on recurring accounts. No exceptions.
Step 1 — Calculate your true cost per cleaning hour
Most underpricing starts here, because the obvious cost (the cleaner's wage) is only about half the real number.
For a cleaning business that pays a cleaner $20/hour:
| Cost component | Typical amount per cleaning hour |
|---|---|
| Cleaner wage | $20.00 |
| Payroll taxes (employer FICA + FUTA + SUTA + workers' comp) | $3.50–$5.00 |
| Cleaning supplies and consumables | $1.50–$2.50 |
| Vehicle (fuel, insurance, depreciation) per billed hour | $1.50–$3.00 |
| General liability insurance | $0.40–$0.80 |
| Software (scheduling, payroll, accounting) | $0.50–$1.00 |
| Phone, office, admin time | $1.50–$2.50 |
Add them up. A cleaner you pay $20/hour costs the business roughly $28 to $35 per billed hour, before any owner profit, before marketing, before overhead. If you bill that hour at $30, you made $0 and worked for free.
This is the math that turns "I charge $35 an hour and I am busy" into "I am broke and I am busy."
Step 2 — Pick your pricing model
Three models are in common use. Pick one per service line; do not mix them inside a single quote.
Hourly. "$50 per hour, two-hour minimum." Easy to quote, terrible economics. As you and your team get faster, hourly billing pays you less for the same outcome. Use hourly only for the first visit to a new property where you genuinely cannot estimate scope.
Flat-rate. "$185 for a standard clean." The default for recurring residential work. Quote it after you have cleaned the property once and timed it. The client gets certainty; you keep the margin you earn by being efficient. Flat-rate is the model your estimating tool is built for.
Square-foot. "$0.12 per square foot per visit." The standard for commercial and janitorial bids. Adjust by scope intensity — a finance office at $0.10/sqft is not the same job as a medical clinic at $0.18/sqft. Square-foot pricing needs a written scope of work to be defensible.
A cleaning business serving both residential and light commercial accounts typically ends up with a mix: flat-rate for recurring houses, hourly for one-time deep cleans of unfamiliar properties, square-foot for commercial bids.
Step 3 — Set your prices off cost, not off competitors
The "look at three competitors and price in the middle" approach is how undercharging spreads. Your costs are not your competitor's costs. Their wages, their insurance, their fuel are not your numbers.
A working formula for residential flat-rate:
Quote = (estimated hours × fully-loaded hourly cost) ÷ (1 − target margin)
If a three-bedroom takes 3 hours, your fully-loaded cost is $32/hour, and you want a 45% margin:
Quote = (3 × 32) ÷ (1 − 0.45) = $96 ÷ 0.55 = $175
Round up to $185 — the round number reads better on a proposal and the extra $10 covers small estimation errors.
For commercial square-foot:
Price per sqft per visit = (cost per visit) ÷ (square footage × target margin factor)
The same property might bid out at $0.09/sqft if you are tight on costs and aiming for thin margin to win the contract, or $0.15/sqft if it is a higher-touch space.
Step 4 — Set a minimum job size
Small jobs lose money invisibly. A 90-minute clean across town that grosses $120 sounds fine until you add the 35 minutes of drive each way — now you have spent 2 hours and 40 minutes of labor on a $120 gross.
A practical minimum for solo and small-team residential operators in 2026: $135 to $175 per visit, depending on metro. Below your minimum, you politely say "the smallest job we book is $X — if you would like a more thorough scope, we can build that up to make it worth the trip."
Step 5 — Quote with a real document, not a text message
The single biggest pricing-related complaint in operator forums: "I quoted them $200, they swore I said $150, and now they will not pay." Verbal quotes lose this argument every time.
A written quote includes:
- The exact scope (rooms, surfaces, what is included and what is not — "we wipe baseboards on deep cleans, not on standard recurring cleans")
- The flat price, or hourly rate with an estimated range
- Recurring discount (if any) and the recurring price
- Deposit policy (typical: 25–50% for deep cleans and move-outs)
- Cancellation policy (typical: $50–$75 fee for cancellations under 24 hours)
You can build all of this manually in a Google Doc; you can also use the cleaning business quote template or proposal template as a starting point. Cleaning-focused scheduling tools like Jobber and Housecall Pro build the quote, the deposit capture, and the e-signature into a single document — see the proposal software category for that workflow end-to-end.
Step 6 — Decide your discount and surcharge rules in advance
Pricing decisions made in the moment usually cost you money. Decide before the phone rings:
- Recurring discount. 10–20% off the one-time rate for weekly or bi-weekly recurring is standard. Never deeper than 25% — the recurring relationship is worth a lot, but not so much that you should clean for free.
- First-clean premium. First visits and deep cleans are 1.5 to 2 times standard. Move-outs are 2 to 3 times. State this on the website, on the quote, and in the first phone call. Nobody likes "oh by the way, the first one costs more" mid-job.
- Weekend / holiday surcharge. 25–50%. Optional, but it limits weekend work to clients who really need it.
- Pets surcharge. Two or more shedding pets adds 15 to 30 minutes to a standard clean; build it into a flat $15–$25 surcharge or into the base rate quietly.
Step 7 — Raise prices on a schedule
Recurring clients almost never volunteer to pay more. You set the schedule.
- Annually on every recurring account, at the same date every year. A 3–6% annual increase tracks roughly with wage inflation and is rarely contested.
- Whenever costs change. A wage increase, a new insurance carrier, a fuel price jump — any of these is a reason to re-quote new bookings, even if you hold existing recurring accounts steady until the next annual review.
- On the customer's anniversary or on January 1. Either is fine; pick one and stick to it.
The script most operators use: "Starting [month], your recurring rate will be [$X]. Thanks for being one of our regulars — please let us know if you have any questions." Most clients say yes. The ones who push back almost always say yes to a smaller increase. The few who walk were unlikely to stay through the next round of cost increases anyway.
What the numbers actually look like in 2026
Concrete ranges, U.S. national averages, mid-2026:
| Job type | Typical price range |
|---|---|
| Standard residential clean (3BR/2BA, ~1,800 sqft) | $130–$250 |
| Deep clean (same property) | $250–$450 |
| Move-out clean (same property) | $300–$600 |
| Recurring weekly (10–15% off standard) | $115–$215 |
| Recurring bi-weekly (5–10% off standard) | $125–$225 |
| Airbnb turnover clean | $90–$180 |
| Standard janitorial (per cleaner per hour) | $25–$50 |
| Janitorial per sqft per visit | $0.08–$0.20 |
| Post-construction clean | $0.30–$0.50 per sqft |
Coastal cities and high-cost metros run 20–40% above these ranges. Lower-cost metros sit at the bottom of the range. The honest answer to "what do I charge in [my city]" is "look at three actual quotes from competitors in your zip code, then run your own cost math, then price for your margin — not theirs."
Common mistakes
- Pricing off your previous job's wage instead of your fully-loaded cost. The single most common mistake. Cleaning is not a wage business; it is a labor + supplies + overhead + risk business.
- Quoting from a phone call. Send a written quote. Every time.
- Letting the deep-clean rate become the recurring rate. "Just keep doing what you did last time" at the deep-clean scope, at the recurring price. Always quote the recurring rate explicitly.
- Discounting to win bad clients. A client who only stays at a 30% discount is a client you cannot afford. Walk away.
- Forgetting drive time and gas in the price. Especially on small jobs in spread-out service areas.
- Never raising prices. A recurring account at five-year-old prices is the most expensive client in your book.
Tools that make pricing easier
A few that operators reach for once they outgrow a spreadsheet:
- A real estimating tool prevents the "I quoted $200, they remember $150" argument by capturing the quote in writing with the scope attached.
- A scheduling tool with proposals built in — Jobber and Housecall Pro both ship this — turns a quote, a deposit capture, and an e-signature into one customer-facing document.
- An accounting tool like QuickBooks is where you check whether the prices are actually working — gross margin per job, per cleaner, per service line. Pricing without margin reporting is guessing.
And the practical starting point: the quote template and proposal template are downloadable starting documents you can adapt to your service mix in an afternoon. The full picture of what you will be paying for the tooling around all this is in the software cost guide; the broader playbook for finding the clients you are going to be pricing for is in the marketing and getting clients guides.