Cleaning business KPIs: the 15 numbers to track, with formulas and working targets

Cleaning business KPIs are the handful of numbers that tell you whether the company is making money, keeping clients and keeping staff: revenue per labor hour, labor cost %, close rate, recurring client churn, on-time rate, complaint rate and review rate, among others. Track five weekly and the rest monthly, write each formula down once, and set targets as working goals you revise from your own history, not as industry averages.

Go to section10
Written by BroombookPublished · Updated 13 min read 8 sections 5 sources cited

Key takeaways

  • Revenue per labor hour (revenue ÷ all paid hours including drive time) is the one number that tells you whether prices and routes work.
  • Close rate = jobs booked ÷ quotes sent. Track it by source: a 50% rate on referrals and a 15% rate on marketplace leads can both be reasonable working numbers.
  • Monthly churn = recurring clients lost ÷ recurring clients at month start. 1 ÷ churn is roughly how many months a client stays.
  • Set targets as working goals from your own last three months, not from “industry averages” nobody can source, and move them each quarter.
  • A weekly scorecard with five numbers beats a monthly dashboard with twenty. Review it every Monday in ten minutes.

What are KPIs for a cleaning company?

KPIs (key performance indicators) for a cleaning company are the few numbers you check on a fixed schedule because they predict profit, client retention and staff retention before the bank balance does. A metric is anything you can measure; a KPI is a metric with a formula, an owner, a target and a review day.

Most owners can pull dozens of numbers from their booking software, payroll and bank account. The problem is not data, it is choosing. A good set has about 15 KPIs: five you look at weekly, the rest monthly. Each one needs four things written down:

  • A formula that does not change from month to month, so the trend means something.
  • A source: which report or export the inputs come from.
  • A target, labeled as a working goal, set from your own history and revised each quarter.
  • An action: what you will do when it misses two periods in a row.

Our guide on how to grow a cleaning business walks through a full example dashboard for a four-cleaner company and what each number means at each stage of growth. This page is the reference that sits next to it: every KPI with its formula, a working target range, how often to check it, and a scorecard you can copy.

One warning before the tables. You will see “industry benchmark” numbers for cleaning companies all over the web, almost never with a source. Treat the targets below the same way: they are working goals that fit many small residential and commercial companies, not measured averages. Your first real target is whatever you did last quarter, plus a little.

The KPI table: formulas, working targets and how often to check

Fifteen KPIs in five groups. “Working target” means a goal to aim at and revise, not a benchmark. Check the weekly ones every Monday and the monthly ones in the first week of the month.

GroupKPIFormulaWorking target (revise from your own data)Check
SalesClose rateJobs booked ÷ quotes sent, by lead sourceReferrals and website 40% to 60%; marketplaces 10% to 25%Weekly
Quote response timeMedian minutes from inquiry to first replyUnder 60 minutes in business hoursWeekly
Cost to win a clientMarketing spend + lead fees + referral credits ÷ new clientsPaid back within 2 to 3 visits of marginMonthly
DeliveryRevenue per labor hourRevenue ÷ all paid cleaner hours (site + drive + other)At least loaded hourly cost ÷ (1 minus your overhead-and-profit share); see belowWeekly
UtilizationHours on site ÷ paid hours75% to 85%Weekly
On-time arrival rateVisits started within the promised window ÷ visits95% or betterWeekly
Time per job vs. estimateActual minutes ÷ estimated minutes, by job and by cleaner0.9 to 1.1Monthly
MoneyLabor cost %Wages + payroll taxes + workers’ comp + paid drive time ÷ revenueResidential 45% to 55%; commercial nights often higherMonthly
Gross margin(Revenue minus labor, supplies and vehicle costs) ÷ revenue35% to 45%Monthly
Days to collectAverage days from invoice to payment (commercial), or % of visits paid same day (residential)Commercial under 30 days; residential 95%+ same day with card on fileMonthly
ClientsRecurring client churnRecurring clients lost in month ÷ recurring clients at month startUnder 3% a month (clients stay 30+ months)Monthly
Complaint and re-clean rateVisits with a complaint ÷ visits; re-cleans ÷ visitsUnder 2% complaints, under 1% re-cleansWeekly
Review rateNew public reviews ÷ review requests sent10% to 20%Monthly
TeamCleaner turnoverCleaners who left in 12 months ÷ average headcountLower each year; under 50% is a real achievement in this tradeQuarterly
Cancellations and no-showsClient cancellations inside 24 hours ÷ visits; cleaner no-shows ÷ shiftsUnder 3% client; under 1% cleanerWeekly

The revenue-per-labor-hour floor is arithmetic, not opinion. If a cleaner costs you $25 an hour loaded and you keep 35% of each price for overhead and profit, each paid hour must bring in $25 ÷ 0.65 = $38.46 before supplies. Change those two inputs to yours and the floor is yours.

How do you track close rate and cost to win a client?

Track close rate as booked jobs divided by quotes sent, by lead source, each week. The overall number hides the useful one: a referral that closes at 55% and a marketplace lead that closes at 12% should get different reply scripts and different budgets.

Set the log up right

  • Every inquiry gets a row the day it arrives: date, source, job type, quoted amount, first reply time, outcome, recurring or not.
  • Count a quote as “sent” when a price reaches the client, not when they ask. Unanswered inquiries are a different KPI (response time).
  • Close the row after 14 days. Anything booked later is a nice surprise, not a reason to keep rows open.

Cost to win a client, with payback

Add up what you spent in the month to get new clients (ads, lead fees, referral credits, printed flyers) and divide by the new clients booked. Then divide that by what one visit leaves you after labor and supplies. If a client costs $120 to win and a visit leaves $55, payback is a little over two visits; a one-time client who never rebooks lost you money, and a recurring client paid off before the second month. Our guide to cleaning leads shows how to set a maximum price per lead from this math.

What to do when it misses

  • Low close rate, fast replies: the price or the quote format. Test a range instead of a single number, and offer two start times.
  • Low close rate, slow replies: fix the reply, not the price. Set a notification and a saved first message.
  • Good close rate, high cost per client: cut the source with the worst payback, not the one with the fewest leads.

How do you measure revenue per labor hour and utilization?

Measure revenue per labor hour by dividing the week’s revenue by every hour you paid cleaners for, including driving between jobs, loading the car and waiting on a locked door. Utilization is the share of those paid hours spent actually cleaning.

The hours have to be real. Clock-in and clock-out at the door, not a planned schedule, and drive time counted because, for employees, travel from job site to job site during the workday must be counted as hours worked under federal rules (29 CFR 785.38). The cost of that driving is also real: the IRS business standard mileage rate, which many owners use as a stand-in for fuel, wear and insurance, is 76 cents per mile from July 1, 2026.

A weekly example (hypothetical numbers)

  • Revenue this week: $6,400 from 40 visits.
  • Paid hours: 122 on site, 24 driving, 6 loading and meetings = 152.
  • Revenue per labor hour: $6,400 ÷ 152 = $42.11.
  • Utilization: 122 ÷ 152 = 80%.

If the floor from the table above is $38.46, this week is fine. If next week shows $36 with the same utilization, prices or job lengths slipped; if utilization fell to 70%, the routes did. The two numbers together point at the fix, which is why they share a line on the scorecard. The scheduling side of that fix is covered in how to grow a cleaning business, under recurring plans and tight routes.

Time per job vs. estimate

Divide actual minutes by the estimate on the quote for each visit. A ratio above 1.1 on one client means the quote is wrong; above 1.1 for one cleaner on every client means training. Commercial accounts should also be checked against a production rate (square feet per hour or minutes per fixture). ISSA, the cleaning industry association, describes how to build those rates in How to Calculate Cleaning Times; your own timed numbers replace the published examples over time.

Which money KPIs matter, and where do the inputs come from?

Three money KPIs matter monthly: labor cost %, gross margin and how fast you collect. They come from payroll, your card processor and your bookkeeping, and they only work if revenue and costs are matched to the same month.

That matching is the cash-versus-accrual question. The SBA’s guide to managing your finances describes both methods and the financial statements small businesses keep, starting with the balance sheet. For KPIs, the practical rule is: count a visit’s revenue in the month it was done and the wages for it in the same month, even if the commercial invoice is paid 30 days later. Otherwise a strong sales month looks like a weak margin month.

Labor cost %

Wages plus payroll taxes, workers’ compensation and paid drive time, divided by revenue. In our experience, residential companies that pay by the hour and route tightly often land in the mid-40s to mid-50s; commercial night work, with lower prices per hour, can run higher and still work because overhead per job is lower. The working target is a range, and the trend matters more than the level: two points up for two months is a price problem, a route problem or an overtime problem, and payroll tells you which.

Gross margin

Revenue minus labor, supplies and vehicle costs, divided by revenue. This is what is left to pay for software, insurance, marketing, your own time and profit. The cleaning business profit calculator runs the whole stack from price to profit if you want to test a price change before you make it.

Collections

For residential clients with a card on file, the KPI is the share of visits paid the same day; it should be close to 100%, and every exception is a conversation. For commercial accounts, track average days from invoice to payment. One account drifting from 20 days to 45 is an early sign the client is in trouble or about to switch.

How do you track churn, complaints, reviews and turnover?

Track churn as recurring clients lost in the month divided by recurring clients at the start of the month, and treat every lost client as a row with a reason. Track complaints weekly, review rate monthly and cleaner turnover quarterly.

Churn, with reasons

A client is “lost” when they cancel their recurring plan or go 60 days without a visit and without a pause request. Record the reason in five buckets: moved, price, quality, scheduling, other. 1 ÷ monthly churn is roughly the average months a client stays, so 2.5% means about 40 months and 5% means about 20. If quality is the top reason two months running, your complaint KPI should have warned you first.

Complaints and re-cleans

Count every visit where the client raised a problem, and separately every visit you redid for free. Record the room and the cleaner. A supervisor’s job, in O*NET’s words, is to inspect work performed to ensure that it meets specifications and established standards; the complaint log tells the supervisor which homes to inspect next.

Review rate

New public reviews divided by requests sent. Low rate with many requests: the ask is badly timed or buried. Few requests: the ask is not automatic. Send it after the visit the client just praised, not on a calendar.

Cleaner turnover and no-shows

Cleaners who left in the last 12 months divided by average headcount. Cleaning has high turnover everywhere, so the target is “lower than last year”, and the input that moves it is usually the schedule: full weeks, short drives and predictable days. A cleaner no-show rate above 1% of shifts is a hiring or scheduling problem, not bad luck. See how to hire cleaners for the hiring side.

The weekly scorecard you can copy

A weekly scorecard is one row per week with five numbers, filled in every Monday in ten minutes. It is the single most useful KPI habit for a company under ten cleaners, because it catches drift within a week instead of at month end.

WeekRevenue per labor hourUtilizationClose rate (quotes → booked)Complaints / re-cleansCancellations < 24hNote
Oct 6$41.8081%9 → 4 (44%)1 / 01Normal week
Oct 13$37.2072%11 → 5 (45%)1 / 13Two cancellations in the same zone left gaps; drive time up
Oct 20$42.5083%8 → 3 (38%)0 / 00Filled the gaps with a waitlist client

These are made-up numbers to show the shape. The point of the note column is that each miss gets a cause the same week, while you still remember it.

Monthly review, first week of the month

  1. Add the monthly KPIs: labor %, gross margin, churn with reasons, review rate, cost to win a client, days to collect.
  2. Compare each with the working target and the last three months. Mark anything missed twice in a row.
  3. Pick at most two things to change this month. More than two and nothing changes.
  4. Revise one or two targets each quarter from what you actually did.

Where the inputs come from

Visits, quotes, cancellations and complaints come from your booking system; hours from clock-ins; wages from payroll; payments from your processor or bank. The fewer places those live, the more likely the scorecard gets filled in. Broombook keeps visits, recurring schedules, clock-in hours, card payments and review requests in one account, and timesheet hours export as a CSV for payroll, which covers most of the weekly inputs; what it does not do is replace your bookkeeping for the monthly margin numbers. Any software works for this as long as the hours and the visits are real.

Which KPIs should a new cleaning business track first?

In the first year, track four: close rate, revenue per labor hour, recurring client count and complaints. Everything else either has too few data points to mean anything yet or follows from those four.

  • Close rate tells you whether your price and your reply are right before you spend on ads.
  • Revenue per labor hour, even when the labor is you, tells you whether the price per job survives drive time. A solo owner at $32 an hour all-in is a cleaner with a van, not yet a business.
  • Recurring client count, week by week, is the growth number. Churn needs 50-plus recurring clients before a percentage means much; until then, count heads and reasons.
  • Complaints, as a list rather than a rate, because at 30 visits a week one complaint is 3%.

Add labor % and gross margin in the month you hire your first cleaner, utilization and on-time rate when you have two cleaners on separate routes, and cleaner turnover after your first year with staff. A KPI added before you can act on it is a spreadsheet column, not a KPI.

FAQ

Frequently asked questions

What are the most important KPIs for a cleaning business?

Revenue per labor hour, labor cost %, close rate, recurring client churn and complaint rate. Together they cover pricing and routes, profit, sales, retention and quality. Add on-time rate, review rate and cleaner turnover once you have staff.

What is a good revenue per labor hour for a cleaning company?

The floor is arithmetic: your loaded hourly labor cost divided by (1 minus the share of each price you keep for overhead and profit). At $25 loaded and 35% kept, that is $38.46 per paid hour before supplies. Above the floor you are fine; below it, more clients only add work.

What labor cost percentage should a cleaning business aim for?

As a working goal, residential companies often aim for labor (wages, payroll taxes, workers’ comp and paid drive time) at 45% to 55% of revenue; commercial night work can run higher and still work. Track your own trend and treat two months of drift as the signal, not the level itself.

How do you calculate client churn for a cleaning business?

Recurring clients lost in the month divided by recurring clients at the start of the month. A client is lost when they cancel their plan or go 60 days without a visit or a pause. 1 divided by monthly churn is roughly how many months an average client stays.

How often should I review cleaning business metrics?

Five numbers weekly (revenue per labor hour, utilization, close rate, complaints, short-notice cancellations) and the rest monthly in the first week of the month. Revise targets quarterly from your own results.

Are there industry benchmarks for cleaning company KPIs?

There are many numbers online, but very few with a source, so treat them as working goals rather than measured averages. The most reliable benchmark is your own last three months; aim to beat it a little each quarter.

Sources

  1. SBA: Manage your finances (financial statements, cash and accrual accounting)
  2. ISSA: How to Calculate Cleaning Times
  3. IRS: Standard mileage rates
  4. eCFR: 29 CFR 785.38, Travel that is all in the day’s work
  5. O*NET OnLine: First-Line Supervisors of Housekeeping and Janitorial Workers (37-1011.00)

General information for cleaning business owners, not legal, tax or insurance advice. Rules and prices vary by state and city.