Pool Service Business KPIs for a Solo Route

By Mark Fulton · 2026-10-06 · 12 min read

Pool Service Business KPIs for a Solo Route

A solo pool route runs on five numbers: chemical cost per stop (chemical purchases divided by stops completed), stops per day (limited by minutes on site plus minutes driving, not by ambition), drive share (drive minutes as a percentage of your total route time), add-on revenue (repairs and extras sold on top of the weekly visit), and end-of-season churn (customers who left divided by customers you started with). All five come off a one-page route sheet and your chemical receipts. None needs route software, a technician time clock or an industry benchmark. The question that matters is not whether your numbers match someone else's range. It is whether this week's numbers are better or worse than your own last month, and which stop is dragging them down.

A weekly pool route has an odd shape for a business. Your price per visit is fixed and small. Your revenue is capped by how many visits fit in a day. Your costs hide in two places that never show up on an invoice: the chemicals you carry out of the truck and the minutes between driveways. And the book of customers you spent years building can shrink all at once when a season ends or a neighbour undercuts you.

That is why generic KPI lists written for companies with technicians, dispatchers and a back office tend to miss. A solo operator has one truck, one pair of hands and a notebook. The useful numbers are the ones you can collect between the pump room and the next gate.

This post builds one route sheet, shows the four totals it produces every Friday, and explains how to read them. It is informational, not financial or tax advice. Where a number touches filing or deductions, ask a bookkeeper or accountant.

Which pool route numbers change what you do next week?

Plenty of pool numbers are interesting. Only a few change a decision before the next Monday.

Chemical cost per stop tells you whether a pool, a tech habit or a supplier is quietly eating your margin.

Stops per day tells you what a full route actually is for you, so you can tell whether the next customer fits or pushes out someone else.

Drive share shows how much of your paid-for day is spent in the truck rather than at a pool.

Add-on revenue shows whether the weekly visit is also a doorway to repairs, filter cleans and equipment work, which is where a lot of route income comes from.

End-of-season churn tells you what the book is worth going into the next year.

Numbers that look useful but rarely change a decision on a solo route include social follower counts, website visits, and any ratio that needs a second person to measure. For the general version of this thinking across visiting trades, the home service business KPIs post covers the core set. This one goes narrower, into the route.

One caution up front. Many pool KPI pages print "good" ranges: a chemical cost that should be between two figures, a churn rate to stay under, a stops-per-day target. Those ranges depend on climate, pool size, whether you service salt or chlorine systems, how dense your streets are, and what your local market charges. Without a disclosed sample behind them, they are guesses with a table around them. Use your own history as the benchmark. After eight weeks of a route sheet you will have one that is actually about your business.

The weekly route sheet

This is the whole system. One sheet, one row per stop, filled in as you go or at the end of each day.

Field What to write Why it earns its place
Stop Customer name or address Lets you total by customer later
Minutes on site From arrival to leaving Feeds stops per day and revenue per route hour
Drive minutes From the previous stop to this one Feeds drive share and exposes outlier pools
Chemicals used What you added, roughly, in cost terms or units Spots pools that burn through chemicals
Add-on sold Yes or no, plus amount Feeds add-on revenue

On Friday you total four things from it:

  1. Stops completed, with total on-site minutes and total drive minutes.
  2. Chemical cost per stop: the week's chemical purchases divided by stops completed.
  3. Drive share: drive minutes divided by (on-site minutes plus drive minutes).
  4. Add-on revenue: everything sold on top of the visit price, in dollars.

Keep the receipts for chemicals in one place. Track purchases, not usage estimates, because "about a scoop" drifts and a receipt does not. The IRS says in its small business recordkeeping guidance that you may choose any system suited to your business that clearly shows income and expenses, so a sheet and a receipt folder is a legitimate starting point. What counts for your own return is a question for your accountant.

How do you work out chemical cost per stop from receipts?

Chemical cost per stop = chemical purchases for the period ÷ stops completed in the same period

Use the same window for both halves. If you buy chlorine in bulk once a month, divide the month's purchases by the month's stops, not a single week's. Buying a pallet in one week and dividing by that week's stops will make one week look terrible and the next three look free.

Illustrative example, not real data: you spend $620 on chemicals in a week where you complete 80 stops. That is $7.75 per stop. The figure on its own means little. Its value is in comparing it with your own last month, then asking why it moved. A rising number usually has one of three causes: a few pools consuming far more than the rest (a green recovery, a heavy bather load, a failing pump), a habit of over-treating "to be safe", or a change in what you pay your supplier.

The per-pool view is where you find the problem. If your sheet records chemicals by stop, you can see that eight pools account for most of the spend. Those pools may need a different price, a different service plan, or a conversation about the equipment or the water balance. Without the per-stop column all you see is a total that crept up.

What is your real stops-per-day ceiling?

A route has a hard ceiling set by arithmetic:

Stops per day = usable route minutes ÷ (minutes on site + minutes driving per stop)

"Usable" means the part of the day you spend on the route itself. It leaves out loading the truck, restocking and quoting, which happen whether you do 10 stops or 18.

Here is how the ceiling moves with nothing but the gap between stops. Every figure below is illustrative: 450 usable minutes and 20 minutes on site per stop.

Drive minutes between stops Minutes per stop, all in Stops in 450 minutes
5 25 18
8 28 16
15 35 12

Same pools, same time on site, same truck. Stretching the gap from 5 to 15 minutes costs you six stops a day. On a $40 visit (also an illustrative figure), that is $240 of daily revenue that never gets invoiced, and the cause is the map rather than the work.

This is why route density often matters more than headline price. A pool five minutes from your next stop is worth more to your day than the same pool fifteen minutes away at the same fee. If your sheet records drive minutes per stop, the outliers jump out. The pools that cost you 20 minutes of road each way are usually the ones to reprice, bundle with neighbours, or let go at season end. The same density logic drives any repeating round, and the window cleaning business KPIs post works through it for houses on a cleaning round.

How do repairs and add-ons change route profit?

The weekly visit is the base. Repairs, filter cleans, equipment work and one-off services sit on top of it. Because you are on site every week, you see problems early, which puts you in a good position to quote work. That makes add-on revenue a number worth watching separately.

Track it as add-on revenue per week and add-on share, which is add-on revenue divided by total revenue. A route that earns only the base visit is exposed: one missed week or one lost customer hits the whole total. A route with steady add-ons has a second income layer that does not depend on adding pools.

Keep the logging honest. Record the add-on against the customer and the stop, not in a lump sum at month end, so that you can later see which customers actually buy and which never do. If you track quotes, note the ones that were declined too. A customer who declines three filter cleans in a row is telling you something about how you pitch or how they decide.

For the follow-up mechanics, the quote follow-up system post covers how to keep declined and pending quotes from disappearing.

Worked example: one illustrative week, costed

Everything below is made up to show the arithmetic. It is not an industry average. The only real figure is the IRS business mileage rate of 76 cents per mile, which the IRS standard mileage rates page lists for July 1 to December 31, 2026. That is a tax rate, not your true truck cost, so treat it here as a rough stand-in for fuel and wear, and ask your accountant what applies to your filing.

Line Figure
Stops completed 80
Price per visit $40
Visit revenue $3,200
Minutes on site (80 × 20) 1,600
Drive minutes 650
Total route minutes 2,250 (37.5 hours)
Drive share (650 ÷ 2,250) about 29%
Chemical purchases $620
Chemical cost per stop $7.75
Miles driven 150
Mileage at $0.76 $114
Revenue after chemicals and mileage $2,466
Per route hour about $65.76

Now test a new pool at the same $40 visit. If it sits on a street you already work, it adds maybe 3 extra drive minutes and 1 mile. Its stop takes about 23 minutes all in and leaves $31.49 after chemicals ($7.75) and mileage ($0.76). That is about $82 per route hour, above your week's average.

If it is across town and adds 18 minutes of driving and 12 miles, the stop takes about 38 minutes and leaves $23.13 after chemicals and $9.12 of mileage. That is about $36.52 per route hour, roughly half the other pool, for an identical invoice.

How do you measure end-of-season churn?

In seasonal climates the book shrinks when the weather turns, and in every climate customers leave for other reasons. Churn is just a count, and it is easiest to see when you measure it over a fixed window.

Churn = customers who left during the period ÷ customers at the start of the period

Count only the customers who were on the route on day one. New customers added mid-period go in neither number. If you add them, churn looks better than it is.

Illustrative example: you start the season with 90 pools and 11 stop service by the end. Churn is 11 ÷ 90, about 12%. The percentage is less useful than the list of 11. For each one, write down why they left if you know: moved, sold the house, price, a missed visit, a dispute about equipment, switched to a cheaper operator, or simply stopped answering. After two seasons the pattern is clearer than any benchmark.

Then check your cash. A route business that loses visits at season end has a revenue dip to plan for, and the seasonal business cash flow post covers how to set money aside for the quiet months.

When does adding a pool cost the route more than it earns?

Before you say yes to a new customer, run the same arithmetic as the example above with your own numbers:

  1. Estimate the extra drive minutes and miles the stop adds to a normal day.
  2. Add your typical minutes on site for a pool that size.
  3. Subtract your own chemical cost per stop and the mileage.
  4. Divide what is left by the minutes the stop takes, expressed in hours.
  5. Compare that with your current revenue per route hour.

If the new pool earns far less per route hour than the route average and cannot be bundled with neighbours, it is not automatically a no. It may be a stop you would take at a different price, or one that fills a slow day. The point is to make that decision with the figures in front of you rather than discover it in a Friday total six weeks later. Whether and how to reprice is a business judgment for you to make, and a bookkeeper can help with the cost side.

Putting the route sheet in the dashboard

You can run the route sheet on paper or in a spreadsheet, and many solo operators do. If you prefer one screen, open the dashboard free. Log chemical purchases as expenses in the money module, record each stop against its customer, and after four weeks you will have a real chemical cost per stop and a drive share from your own data.

Be aware of the free tier limits: 25 customers and 200 money entries. A solo route with more than 25 pools will want Pro, which removes the caps and adds CSV export, or a spreadsheet for the stop-by-stop detail. Your data stays in your browser unless you turn on Pro sync.

FAQ

How much profit is there in a pool service stop?

It depends on your price per visit, your chemical cost per stop, your drive time and your mileage, so a single figure for everyone would be made up. Work it out for your route: visit price minus chemical cost per stop minus the mileage cost of the stop, then divide by the minutes the stop takes to get a per-hour view. The worked example above shows how the same $40 visit can leave very different amounts per route hour depending on where the pool sits.

How do I track chemical costs per pool?

Add a chemicals column to your route sheet and fill it at every stop, then keep every chemical receipt in one folder. For the route-wide figure, divide the period's purchases by the stops completed in that period. For a per-pool view, total the chemicals column by customer. Purchases are more reliable than usage guesses, and the per-customer total shows which pools are expensive to keep clean.

How many pools can one tech service in a day?

It is set by usable route minutes divided by minutes on site plus drive minutes per stop. The table above shows the same 450 minutes producing 18, 16 or 12 stops depending only on the gap between pools. Time your own stops for two weeks and use your own numbers rather than someone else's target, because pool size, equipment and street density change the answer.

How do I know if a pool is worth keeping on my route?

Compare what the stop leaves after chemicals and mileage, per hour of route time, with your route average. A pool that earns much less per hour, sits far from your other stops, and has no add-on history is the usual candidate to reprice or release at season end. Check the customer's add-on and referral history before deciding, and keep the decision based on the figures, not on how the last visit felt.


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