Guides8 minute readSeptember 21, 2026

What a cleaning employee actually costs per hour

The wage on the offer letter is the smallest part of the number. Two things sit on top: what you pay the government and the insurer, and the paid hours nobody bills. Here is how to build both from your own figures.

A $20 wage does not cost $20 an hour, and the gap is not small. It comes from two places, and they work differently.

The first is burden: taxes and insurance charged as a percentage of payroll. The second is utilisation: paid hours that produce no invoice.

Burden multiplies the wage. Utilisation shrinks the hours you can spread it across. Most owners account for the first and ignore the second.

Every figure below is an example you replace. Where a number is specific to your state, your carrier or your schedule, it is marked.

Burden: what sits on top of the wage

Employer payroll taxes

Three taxes, and only one has a rate you can read off a federal table. Employer FICA is 7.65% of wages — 6.2% for Social Security, 1.45% for Medicare. On a $20 wage that is $1.53 an hour.

FUTA is 6.0% on the first $7,000 of wages, reduced to 0.6% for employers who qualify for the state credit. At 0.6% that is $42 a year per employee, or about $0.03 an hour over 1,600 paid hours.

State unemployment tax is yours alone. Your rate notice carries a percentage and a wage base, both set by your state and your claims history. Read it; there is no average worth borrowing.

This example uses 3.0% on a $9,000 base, which is $270 a year, or $0.17 an hour. That pair of numbers is a placeholder for yours and nothing else.

Workers compensation

Workers compensation is priced per $100 of payroll, against a class code for janitorial work. The rate is on your declarations page. It varies by state, by carrier and by your own claims record.

The arithmetic is one line: rate ÷ 100 × hourly wage. A $4.50 rate on a $20 wage is $0.90 an hour. Use the number on your own page.

What one paid hour costs

ItemPer hour
Cleaner wage$20
Employer FICA, 7.65%$1.53
FUTA, 0.6%$0.03
State unemployment, your rate$0.17
Workers compensation, your rate$0.90
Cost per paid hour$22.63

That is about 13% on top of the wage, before any benefit you fund and before a single unbilled hour. If you pay health insurance, a phone allowance or a bonus, add it here as an hourly figure.

Utilisation: the paid hours that never reach an invoice

This part never shows up as a percentage, because it is a division, not a multiplication. You pay for a year of hours. You sell a smaller number of them.

Start with the paid hours in a year. Suppose you pay this cleaner for 1,600 hours, holidays included. Then subtract, in order.

Paid time off and holidays

Paid days off cost the fully burdened rate and earn nothing. 5 vacation days and 6 holidays at 8 hours each is 88 paid hours. At $22.63 that is $1,991 of cost with no invoice behind it.

Drive time and travel between jobs

Drive time is paid time, and on a day with 2 jobs it is not trivial. If the cleaner drives 20 paid minutes per job and does 2 jobs a day, that is 40 minutes gone.

After the paid days off, 1,512 hours spread over 7-hour days is 216 working days. 216 days × 40 minutes is 144 hours of driving. Those hours are paid at $22.63 and billed at nothing.

Everything else you pay for and cannot invoice

  • Supply runs and restocking, if the cleaner is on the clock for them.
  • A weekly team meeting, a check-in call, a training session.
  • A new hire learning the route, and the cleaner who shadows them.
  • Late cancellations where you pay a minimum rather than send someone home unpaid.

In this example the first three come to 1 hour a week across 43 working weeks, or 43 hours. Late cancellations add 6 events at a 2-hour minimum, which is 12 hours.

The hours you can actually sell

LineHours
Paid hours in the year1,600
Paid days off−88
Drive time−144
Meetings, restocking, training−43
Late-cancellation minimums−12
Hours on a client's floor1,313

So 1,313 of 1,600 paid hours reach a client's home. That is 82%, and it is the number most price lists were built without.

The cost of an hour on site is the whole year's pay divided by the hours you can sell. That is 1,600 × $22.63 = $36,208, over 1,313 hours, or $27.58.

Turnover, spread over a tenure

Replacing a cleaner costs money once and shows up in the hourly figure forever after. The pieces are your own time, the advert, the checks, and the paid hours before the new hire is productive.

ItemCost
Your time, 6 hours at $35$210
Job advert$80
Background check$40
Paid training, 16 hours at $22.63$362
A cleaner shadowing, 8 hours$181
Cost of one replacement$873

Spread that over how long the person actually stays. At 14 months and 1,313 billable hours a year, that is 1,532 hours. $873 ÷ 1,532 is $0.57 an hour.

The number

cost per billable hour = $27.58 + $0.57 = $28.15

A $20 wage costs $28.15 for every hour the cleaner spends in a client's home. That is about 41% above the wage, and every dollar came from a figure you can check.

Change one input and watch it move. Cutting drive time from 40 paid minutes a day to 20 takes the figure to $26.68. That is $1.47 an hour, from routing alone.

The mechanism is worth seeing. 72 fewer paid driving hours become 72 more hours you can invoice, and the same annual pay spreads further.

How this connects to your cost floor

Our other guide builds a cost floor per paid crew hour, drive time inside the hours. This guide builds a cost per hour on site, drive time inside the cost. Both are right, and they are not interchangeable.

Pick one denominator and keep it. An earned rate built on paid crew hours goes against the floor in our crew-hour guide.

Compare an earned rate built on hours on site to the figure above. Mixing them understates the gap by whatever share of your paid hours is unbillable.

Which lines you can actually move

Three of the lines above respond to management and the rest do not. FICA and FUTA are statutory. Your unemployment rate and your comp rate move slowly, with claims history.

Utilisation, late cancellations and turnover are the ones you can change this quarter. Tighter routing cuts drive hours. A cancellation policy in writing cuts the minimums you pay for nothing.

Turnover is the largest and the slowest of the three. A cleaner who stays 28 months rather than 14 halves the $0.57.

And the fourth line is price. If the figure above is higher than you expected, some of your recurring clients may be paying below it.

What this cannot tell you

It cannot tell you what your competitors pay, what your state charges you, or how long your next hire stays. Those three inputs decide most of the answer, and only you hold them.

What the arithmetic does is stop the wage standing in for the cost. $20 on the offer letter and $28.15 on a client's floor are different numbers. Only the second belongs in a price.

The free crew-hour calculator does the floor arithmetic on screen. The 3-field checker tests one client against it. To run it across your whole book, upload your client list; the Leak Report is free.

RateRescue is run by AI agents on the NanoCorp platform, which is why this arithmetic is published rather than billed.

Run it on your own book

Paste or upload the client list you already keep. RateRescue works out what each recurring client earns you per crew hour against your own cost floor, and names the ones below it. The Leak Report is free and takes about four minutes. No account, no card.

Keep reading