The #1 Pricing Mistake in Cleaning: Using Wage as Labor Cost
The most common way cleaning businesses lose margin isn't charging too little per hour — it's calculating labor cost wrong. A cleaner paid $18/hr does not cost you $18/hr. The real cost is $24–$32/hr once you add payroll taxes, workers' comp, liability insurance, paid time off accrual, and a share of vehicle and equipment costs.
When you price jobs using the wage instead of the loaded rate, every job leaks 15–25% of what you thought was margin. Over 20 jobs a week, that's the difference between a profitable business and one that grinds.
The fix is a single formula you calculate once and update quarterly. Use the free Cleaning Labor Cost Calculator to get your exact loaded rate in minutes.
2026 Cleaning Labor Cost Benchmarks by Role
| Role | Avg Wage / hr | Loaded Rate / hr | Key Variance Factors |
|---|---|---|---|
| Residential house cleaner | $15 – $22 | $22 – $32 | Workers' comp rate, PTO, drive time |
| Commercial janitorial worker | $14 – $20 | $21 – $30 | Shift differentials, equipment share |
| Carpet cleaning technician | $18 – $30 | $26 – $44 | Equipment lease, specialty training |
| Lead cleaner / team supervisor | $22 – $32 | $32 – $46 | Admin time, client handoff, QA |
| Airbnb / STR turnover specialist | $16 – $24 | $23 – $35 | Variable hours, supply cost absorption |
| Deep clean specialist | $18 – $26 | $26 – $38 | Longer task times, supply-intensive |
Loaded rate = gross wage + payroll taxes (7.65%) + workers' comp (2–8% by state) + general liability (1–3%) + PTO accrual (3–5%) + vehicle/equipment share ($2–$4/hr).
Regional Labor Cost Variance: Cleaning Workers 2026
| Region | Residential Cleaner Wage | Loaded Rate | Workers' Comp Note |
|---|---|---|---|
| Bay Area / Silicon Valley | $22 – $32/hr | $32 – $46/hr | CA workers' comp ~7% |
| Los Angeles / SoCal | $20 – $28/hr | $29 – $41/hr | CA workers' comp ~7% |
| New York Metro / NJ | $20 – $28/hr | $30 – $42/hr | NY comp ~4–6% |
| Seattle / Pacific NW | $20 – $26/hr | $29 – $38/hr | WA L&I rate varies by class |
| Chicago / Midwest | $15 – $21/hr | $22 – $31/hr | IL comp ~3–5% |
| Texas (Dallas, Houston, Austin) | $13 – $18/hr | $19 – $27/hr | TX comp ~2% |
| Southeast (Atlanta, Charlotte) | $13 – $18/hr | $19 – $26/hr | Lower minimum wage states |
| Florida (Miami, Orlando) | $14 – $20/hr | $20 – $29/hr | FL comp ~3–4% |
Workers' comp rates for cleaning are one of the biggest regional variables. California's ~7% rate vs. Texas's ~2% adds $3–$5/hr to your loaded rate for the same wage level.
How to Calculate Your Loaded Cleaning Labor Rate
Start with gross hourly wage
Use the actual wage you pay your cleaner — not the minimum wage, not what you wish you could pay. If you pay a team lead $22/hr and a cleaner $17/hr, calculate each separately. Mixed teams need a blended rate.
Add payroll taxes (FICA + FUTA)
Federal payroll taxes add 7.65% (6.2% Social Security + 1.45% Medicare) to every dollar of wages. On a $18/hr wage, that's $1.38/hr. Add 0.6% FUTA (federal unemployment) on the first $7,000/year — negligible but real.
Add workers' compensation insurance
Workers' comp for cleaning is rated per $100 of payroll. Rates vary dramatically by state: California ~6–8%, Texas ~1.5–3%, Florida ~3–5%. At $18/hr, California workers' comp adds $1.08–$1.44/hr. Look up your state's cleaning industry code rate — don't estimate this.
Add general liability and other insurance
General liability insurance for cleaning businesses typically runs 1–3% of revenue or $1–$3/hr per cleaner when allocated per working hour. If you carry bonding, key replacement, or equipment insurance, prorate those here too.
Add PTO, sick time, and benefits
If your cleaners accrue PTO or sick days, those are real wage costs spread across productive hours. 5 days PTO on a 50-week work year adds ~2% to effective labor cost. Some states (California, New York) mandate paid sick leave — factor that in.
Add vehicle and equipment allocation
Vehicle costs (mileage reimbursement or fleet depreciation + insurance) and equipment (vacuum amortization, mop/bucket replacement) typically add $2–$5/hr per cleaner. If cleaners use their own cars, you may reimburse at the IRS mileage rate ($0.67/mile in 2024).
Sum and apply to job pricing
Your loaded rate is the sum of all the above. Use it in the formula: <strong>Job Price = (Loaded Rate × Estimated Hours + Supplies) ÷ (1 − Target Margin)</strong>. For 45% target margin: a 2-hour job at $27/hr loaded + $6 supplies = ($54 + $6) ÷ 0.55 = $109 minimum price.
Loaded Rate Formula and Job Pricing Examples
Loaded Hourly Rate = Wage × (1 + Payroll Tax % + Workers' Comp % + Liability % + PTO %) + Vehicle/Equipment per hour
Example — California residential cleaner at $20/hr: $20 × (1 + 0.0765 + 0.07 + 0.02 + 0.04) + $3.00/hr vehicle = $20 × 1.2065 + $3.00 = $27.13/hr loaded.
Example — Texas commercial janitorial at $15/hr: $15 × (1 + 0.0765 + 0.02 + 0.015 + 0.03) + $2.50/hr = $15 × 1.1415 + $2.50 = $19.62/hr loaded.
Job pricing from loaded rate — 3-bedroom house clean, 3 hours, 2 cleaners, $12 in supplies, 50% target margin:
Total labor = $27.13 × 3 hrs × 2 cleaners = $162.78. Add $12 supplies = $174.78. Divide by (1 − 0.50) = $349.56 minimum price.
Use the Cleaning Labor Cost Calculator to run these numbers automatically — enter your wage, insurance rates, and PTO and it outputs your loaded rate and minimum job price at your target margin.
Want this running automatically?
ServiceHub automates follow-ups, reminders, and booking confirmations so nothing falls through the cracks.
Loaded Rate Components at a Glance
| Cost Component | Typical % of Wage | Notes |
|---|---|---|
| Gross wage | Base | The number on the paycheck |
| FICA payroll taxes | 7.65% | Fixed federal rate |
| Workers' comp | 2 – 8% | Varies significantly by state |
| General liability | 1 – 3% | Or ~$1–$3/hr allocated |
| PTO / sick leave | 2 – 5% | Mandatory in CA, NY, WA |
| Vehicle / equipment | $2 – $5/hr flat | Not a % — add as flat amount |
| Total loaded multiplier | ~1.13 – 1.25× | Before vehicle add-on |
How to Use Labor Cost in Your Gross Margin Target
Residential cleaning businesses typically target 40–55% gross margin. Commercial cleaning contracts with high volume and fixed scope often operate at 30–45% — lower margin but more predictable. Carpet cleaning and specialty services can reach 55–65% on good jobs.
Gross margin = (Revenue − Direct Costs) ÷ Revenue. Direct costs include loaded labor + supplies + subcontractor costs. It does not include your own salary, rent, or marketing — those hit net margin.
If your gross margin is below 35%, check these in order: (1) Is your loaded rate calculated correctly — or just using wage? (2) Are actual job times 20%+ longer than your estimates? (3) Are your supply costs absorbing 10%+ of revenue? Any one of these alone can destroy margin.
Track actual vs. estimated time per job type monthly. If your standard 2-bedroom clean consistently takes 2.5 hours instead of 2, your prices need to reflect that — or you're losing margin on every job.
FAQ: Cleaning Labor Cost
How much does a house cleaner cost per hour for a cleaning business?▼
What is a 'loaded labor rate' in cleaning?▼
What workers' comp rate should I use for cleaning?▼
How do I calculate the minimum price for a cleaning job?▼
How often should I update my cleaning labor cost calculations?▼
Should supplies be included in the loaded labor rate?▼
Disclaimer
The price ranges and rates presented in this guide are based on industry benchmarks and averages for the US market in 2026. Actual cleaning costs and loaded labor rates vary significantly depending on regional wages, state workers' comp rates, insurance premiums, and vehicle operating expenses. These figures are provided for educational and informational reference only and do not constitute a quote, contract, or guaranteed pricing. Always obtain custom estimates or calculate rates using your own actual costs.
Calculate Your Exact Cleaning Labor Cost
Enter your cleaner's wage, workers' comp rate, insurance, and vehicle costs. The calculator outputs your true loaded hourly rate and minimum job price at your target margin — no spreadsheet needed.
