Window Cleaning Business KPIs: Rounds, Routes, Rebooks

By Mark Fulton · 2026-10-02 · 11 min read

Window Cleaning Business KPIs: Rounds, Routes, Rebooks

A window cleaning round runs on five numbers: revenue per route hour (money collected divided by on-site time plus drive time), round retention (customers still on the round after a full cycle divided by customers at the start), weather days lost per season, add-on share (add-on revenue divided by total revenue), and the route-hour value of any street you are thinking of adding. All five come off a customer list, a calendar and a payment log. None needs a crew, a time clock or dispatch software, because a round is one person, one vehicle and a repeating interval. The number that surprises people most is the first one: the same price per house can earn you very different money per hour depending on how far apart the houses are.

A round is a different animal from one-off jobs. A landscaper or a cleaner quotes, wins, does the work and moves on. A window cleaner sells a place on a route. You visit the same houses every four, six or eight weeks, the customer pays a small, predictable amount, and the business is worth roughly what that repeating book is worth. So the useful numbers are about the route and the repeat, not about the single job.

Most of the KPI advice you will find for "cleaning" is written for commercial janitorial contractors with staff, contracts and safety audits. The one place where window cleaners swap actual numbers is practitioner forums, and those threads are a pile of individual lists: weekly revenue, recurring revenue per week, churn, margin. Good instincts, but nobody says how to collect any of it. This post is the collection part.

What makes a window cleaning round different from one-off jobs?

Four things change the math.

The repeat interval is the product. A customer on a four-weekly cycle is worth more per year than one on an eight-weekly cycle at the same price, but they also fill more of your calendar. You are not just selling windows, you are selling slots on a route.

Your time is split three ways. On-site time, drive time and everything else (quotes, collecting payment, restocking, cleaning down the van). Only the first earns directly. A round that looks busy can still be a thin earner if the middle number is large.

Weather decides some of your days. Rain does not always stop work, but wind, ice and lightning sometimes do, and a lost day on a round does not vanish, it either shifts everything back or gets skipped. Either way it costs something.

Density beats price. Two rounds charging identical prices can pay completely differently if one runs along three streets and the other zigzags across a town. Price per house is the number everyone quotes. Earnings per hour on the road is the one that pays the bills.

For the general version of all this, the home service business KPIs post covers the numbers any visiting-trade business should watch. This one goes narrower, into the numbers that only exist because you work a round.

How do you work out revenue per route hour?

Revenue per route hour is the money you collected for a block of work divided by every hour that block took, including the driving.

Revenue per route hour = revenue collected ÷ (on-site hours + drive hours)

Leave out the quoting, admin and van cleaning for now. Those matter, but they are the same whether you run a dense round or a sprawling one. The point of this number is to compare routes and streets against each other, and drive time is the part that differs.

You can collect it with two timestamps and a notebook line per day: when you left for the first house, when you finished the last one, and how many houses and how much money fell in between. If you use a calendar, drop each stop in as an appointment and put the minutes between stops in the note. After a month you will have the figure for each of your regular routes.

Worked example: one day, costed stop by stop

The numbers below are illustrative, chosen to make the arithmetic easy to follow. They are not an industry average, and your prices and speeds will differ. The only real figure is the IRS mileage rate, which comes straight from the IRS standard mileage rates page, where the business rate is listed as 76 cents per mile for 2026. That is a tax rate, not your actual vehicle cost, so treat it here as a rough stand-in for what each mile of driving costs you in fuel and wear. Ask your accountant what applies to your own filing.

Assume a price of $30 per house and 18 minutes on site at every stop. The only thing we change is the gap between stops.

Dense street Spread-out route
Price per house $30 $30
Minutes on site 18 18
Minutes driving between stops 2 15
Minutes per stop, all in 20 33
Assumed driving speed 20 mph 30 mph
Miles driven per stop about 0.7 7.5
Mileage cost per stop at $0.76 about $0.51 $5.70
Money left per stop after mileage about $29.49 $24.30
Stops per hour of route time 3 about 1.8
Revenue per route hour $90.00 about $54.55
Revenue per route hour after mileage about $88.47 about $44.18

The price per house is identical, and the hourly figure on the spread-out route is roughly half. Nothing about the quality of the cleaning changed. All of the gap is the road.

Two things follow from that.

First, if you are pricing a new street, price the street's density, not just the house. A customer 15 minutes from your next stop needs a higher price to earn the same hourly figure, or needs to be bundled with neighbours.

Second, the number tells you where to focus recruiting. A new customer on a street you already visit raises your revenue per route hour. A new customer across town may lower it, even though the first month's invoice looks the same.

If you want to see how this feeds your wider profit picture, the cleaning business KPIs post uses the same hours-first thinking for house cleaners, where drive time between homes plays the same role.

How do you measure round retention?

Round retention is the share of your customers who are still on the round after one full cycle of the year.

Round retention = customers still on the round at the end of a period ÷ customers at the start of that period

Count only the customers who were on the round on day one. New customers you added during the period do not go in either number, or retention will look better than it is.

Here is a clean way to do it by hand. On the first of a quarter, count the active customers on your list. On the last day of the quarter, count how many of those same names are still active. A customer is "active" if you completed a visit in the last two intervals, so a four-weekly customer who last paid nine weeks ago is not.

Illustrative example: you start the quarter with 200 customers and 186 of them are still active at the end. Retention is 186 ÷ 200 = 93% for the quarter. The 14 who left are worth more attention than the 93%. Write down why each one left if you know: moved, price, a missed visit, a dispute, switched to someone cheaper, or simply stopped answering. After two quarters, the pattern in that list tells you what to fix.

Retention also gives you a ceiling on growth. If you lose 14 customers a quarter, you must win 14 new ones just to stand still. The customer retention rate post covers the general formula and the pitfalls of counting it badly.

What do lost weather days cost across a season?

Count them. This is the one number that most rounds never write down, so the true cost stays a vague feeling.

Keep a simple tally: the date, whether the day was fully lost or partly lost, and what you did about it (moved the visits to the next dry day, skipped them, or caught up on a weekend).

Then price the loss with a plain formula.

Cost of lost days = lost days × revenue on an average working day

Illustrative example: if an average full day brings in $450 and you lose 6 full days over a season, that is $2,700 of scheduled work that either got pushed or never happened. If you caught up all of it on later days, the real cost is the extra hours and the slip in your repeat interval. If you skipped some, the loss is cash.

The point is not to predict the weather. It is to see how much slack your calendar needs. If a pattern emerges, such as a run of lost days every winter, you can plan around it: book fewer new customers into the weeks after, or lean on interior work and add-ons while the outdoor days are short. Our seasonal cash flow post goes deeper on handling the lean months.

On safety, wind, ice and storms are a judgment call for you and no KPI replaces that. For lightning specifically, the US National Weather Service keeps a lightning safety resource hub with guidance on when to get indoors.

Which add-ons change the day's numbers?

Add-on share is add-on revenue divided by total revenue for a period.

Add-on share = add-on revenue ÷ total revenue

Typical add-ons on a window round are gutters, screens, frames and sills, conservatories or sunrooms, and one-off deep cleans. The reason to track them is that an add-on happens at a house you are already standing at. There is no extra drive time. So an extra $20 of gutter work on a stop adds revenue and hardly any minutes, which pushes revenue per route hour up where a brand-new customer would not.

Log each add-on as its own line against the customer, not folded into the visit total. Otherwise you cannot see which ones earn and which ones just feel busy. After a month, sort by add-on type and compare the time it took against what it paid.

One honest warning: an add-on that takes 40 minutes and pays $20 is worse than the basic visit. Time each new add-on a few times before you start offering it to everyone.

What should you check before adding a new street?

Before you take on a pocket of new customers, run the same arithmetic you ran above.

  1. Where is it relative to your existing stops? Minutes from the nearest current house, not distance on a map.
  2. How many houses could you realistically win? One customer 15 minutes away is a drive. Six on the same street is a route.
  3. What is the revenue per route hour of the new street versus your current average? If it is below your average, the street needs a higher price, a bundled signup, or a pass.
  4. Does the interval fit? Will it fit into a day you already have, or does it create a half-day you cannot fill?
  5. What does it do to your slack? If your calendar has no room for lost weather days, new work makes catching up harder.

You can run this in ten minutes before you quote. It is the cheapest decision you will make all month, and it protects the most expensive resource you have, which is your own hours.

How do you track all of this without software?

You need three records and a weekly look.

  • A customer list with name, address, interval, price, last visit and next visit.
  • A calendar with each stop as an appointment and the drive minutes in the note.
  • A payment log where each payment is a line with the customer, the amount and whether it was a standard visit or an add-on.

Then once a week, fifteen minutes: total the revenue, total the route hours, divide. Count customers gained and lost. Note any weather days. That is the whole system, and it fits the free tier of the dashboard, where the appointments and money modules hold exactly those records. If you keep the figures in a spreadsheet instead, that works too. The key is that the same fields get filled in every week. Keeping mileage records is also good practice for your own books, and IRS Publication 463 explains what the IRS expects for car expenses. For anything about what you can or cannot deduct, ask an accountant, because this post only covers the operating numbers.

Put each round in the appointments module with drive time in the note, and read revenue per route hour after a month. Open the dashboard free, no account needed, and your data stays in your browser unless you turn on Pro sync.

FAQ

How do I work out what I earn per hour on a round?

Divide the money collected for a stretch of work by the on-site hours plus the drive hours for that same stretch. Use a full day or a full route so the figure includes the real gaps between houses. Leave out quoting and admin when you are comparing routes, and include them when you want a true take-home figure for the week.

How many houses can one window cleaner do in a day?

It depends on house size, how much each visit includes, and how far apart the houses are, so any single number would be a guess. Work it out from your own data: minutes on site plus minutes driving gives minutes per stop, and the length of your working day divided by that is your ceiling. In the worked example above, 20 minutes per stop on a dense street and 33 on a spread-out one produce very different days from identical prices.

How often do customers stay on a window cleaning round?

There is no honest universal figure, because it varies by area, price and how well you service the round. Measure your own: customers still active at the end of a quarter divided by customers at the start. After two or three quarters you will have a baseline, and a change in it is the signal worth acting on.

Do I need software to manage a window cleaning round?

Not to get started. A customer list, a calendar and a payment log give you every number in this post. Software starts to pay for itself when you add staff, take online bookings at volume, or need automated invoicing. Until then the limit is whether you actually fill in the records each week, not which tool holds them.


SMBDashboard is a free, local-first small business dashboard. Your data stays in your browser unless you switch on Pro sync.