A pool service tech running 18-22 weekly maintenance stops per day has about 15-18 minutes per pool — test water, dose chemicals, brush walls, skim, empty baskets, backwash, log the visit, drive to the next stop. The difference between a profitable route and a money-losing one is usually 2-3 extra minutes per stop from a bad drive path or a missing bucket of muriatic on the truck.
Pool service is also a chemistry problem. Free chlorine should sit between 1.0-4.0 ppm (target 2-3); pH 7.4-7.6; total alkalinity 80-120 ppm; calcium hardness 200-400; cyanuric acid (CYA) 30-50 for an outdoor residential pool. Techs who adjust these predictably keep customers. Techs who dump "three scoops and a cup" cause algae blooms, cloudy water, and cancellations.
This guide covers the six automation levers that turn a 15-pool-a-day route into a 22-pool-a-day route and cut churn at the same time.
Typical Workflow Today
Most pool service shops under 10 routes run on spreadsheets, text messages, and a laminated route sheet taped to the dashboard. The route order is whatever the owner set up in 2019. Chemicals are mixed "by feel" — the tech who has been on that pool for a year knows it needs a gallon of muriatic every 3 weeks, but the vacation-week fill-in has no idea. Customers are billed monthly by the office manager from a spreadsheet.
The hidden costs: 10-20% of stops that take too long from detours, 5-10% callbacks for algae or cloudy water, chemical waste from overdosing, and 1-3% of monthly billing that falls through the cracks because a CSR forgot to mark a vacation hold.
Step 1: Optimize Routes by Drive Time, Not Mileage
The biggest mistake in route building is optimizing for mileage. What you actually pay for is drive time — and drive time is a function of traffic, not distance. A 2-mile stretch of a 4 PM arterial can be 18 minutes. A 6-mile stretch at 7 AM on a residential side street is 9 minutes. Same route, 22 minutes or 11 minutes depending on the hour.
Your routing engine needs live traffic data baked into the optimization. Plan the route for the actual time of day the tech will be there. A 9-noon route needs a different order than a 1-4 PM route, even for the same 20 stops.
For residential weekly service, cluster by zip code first, then optimize within the cluster. Group pools that need backwash (longer visit) early when the tech is fresh. Put pools with dogs, locked keypads, or chatty customers in the first half. Crush the last third with in-and-out stops.
For a 4-route shop, this discipline moves the daily average from 16-18 stops per route to 21-23. That is 4-5 additional stops per tech per day, at $65-$95 per stop in monthly-billing equivalent, times 4 techs — roughly $200-$400K of annual revenue capacity without hiring.
Step 2: Log Every Water Test With a Structured Form
Every stop should produce a structured water-chemistry log: free chlorine (ppm), combined chlorine (to catch chloramines), pH, total alkalinity, calcium hardness (monthly), CYA (monthly), salt (if saltwater), and water temperature. Paper logs buried on a clipboard do not count — the log lives on the customer record, timestamped, so you see trends across weeks.
For saltwater, log salt ppm (target 2700-3400) and generator output percentage. For chlorine pools, log exact quantities added.
The log is the foundation for everything else. Churned customers almost always have a 3-6 week chemistry drift visible in the log before they complained. With trend data, the app can flag "CYA climbed from 45 to 85 ppm over 8 weeks — consider partial drain" before it becomes a stabilizer lock-up.
Step 3: Automate Dosing Math and Chemical Decisions
Pool chemistry dosing is straightforward math once you know the volume. For a 20,000-gallon pool with pH 8.0 and a target of 7.5, you need roughly 24-32 oz of muriatic acid (31.45%) to drop pH by 0.5 — though alkalinity, CYA, and temperature shift the number. Raising free chlorine from 1.0 to 3.0 ppm in a 20,000-gallon pool takes about 10-12 oz of liquid chlorine (12.5%) or ~2.5-3 oz cal-hypo granular. Raising total alkalinity by 10 ppm takes about 24 oz of sodium bicarbonate.
Your app should do this math automatically. Enter "20,000 gal, pH 8.0, free Cl 1.0," tap target, get back "add 28 oz muriatic, 11 oz liquid chlorine, wait 15 min, re-test." The tech pours, retests, logs actuals.
Over time, per-pool patterns emerge. A pool in full sun in Arizona with no cover burns 2-3 ppm of free chlorine per day. A shaded pool in coastal California holds chlorine 4-5 days. The app should learn this per pool and recommend starting doses accordingly, not force the tech to re-calculate every visit.
Step 4: Track Chemical Inventory at the Truck Level
A truck that runs out of muriatic acid at stop 14 of 22 just lost the afternoon. Track chemical quantities on the truck as inventory, not as a line-item expense.
At the start of each day, the truck should have a known starting quantity: muriatic (2-4 gal), liquid chlorine (2-4 gal), cal-hypo (4-8 lb bucket), alkalinity increaser (5-10 lb), CYA (5 lb), calcium chloride (5 lb), algaecide (1-2 bottles), salt (per expected stops), shock (4-8 bags).
Each logged dose decrements truck stock. When a chemical drops below par (say, 1 gal muriatic left), the app warns the tech and adds it to tomorrow's restock list. If the decrement would take the truck negative mid-route, the app flags it before dispatch — no afternoon call to the shop for a jug meetup.
The monthly report shows chemical cost per pool. Numbers way above or below the route average flag a very-dirty pool (investigate) or an underdosing tech (coach). A high-performing 4-truck shop typically runs $14-22 per pool per month for a standard chlorine pool — significantly outside that range deserves attention.
Step 5: Auto-Bill Monthly Recurring Routes
Most residential pool service is billed as a flat monthly fee, typically $130-$220 by market and pool size. Auto-billing on the 1st is table stakes in 2026 — ACH pull or card-on-file fires on schedule, emailed receipt goes out, accounting reconciles against the service record. No office manager chasing checks.
Exceptions get more complex: vacation holds (skip a week, pro-rate), add-on services (tile cleaning, filter deep-clean, heater startup, opening/closing), and one-off emergency calls. A vacation hold entered in CRM should auto-skip the route stop and pro-rate the next invoice. A filter deep-clean booked as an add-on attaches to the next monthly invoice as a separate line.
For commercial (HOAs, hotels, apartments), billing is typically Net 30 with an itemized invoice listing visits, chemical usage, and extra work.
Step 6: Customer Communication and Water Report Emails
After every visit, the customer should get a brief water-report email: numbers for the week, what was added, a photo or two of the pool, and any notes ("filter pressure climbing, recommend backwash next week"). 30 seconds to auto-generate from the tech's completed visit.
Customers who get a weekly report have dramatically lower churn than those who never hear from the service. It also heads off "is anyone even coming?" calls when the customer did not see the truck. Proof of service and a marketing touch in one.
For issues requiring action (CYA drift requiring partial drain, equipment failure quote), the tech logs the issue, the app drafts a quote, the customer gets an email with a payment link, and work schedules once approved.
Common Mistakes
- Optimizing routes by mileage, not drive time. Google Maps with live traffic baked in is non-negotiable.
- Skipping weekly chemistry logs. Without trend data, algae blooms are a surprise instead of a forecast.
- Eyeballing doses instead of calculating. Overdosing wastes chemicals; underdosing causes cloudy water and callbacks.
- Not tracking chemical inventory at the truck. Running out mid-route is a guaranteed afternoon disaster.
- Manual monthly billing from a spreadsheet. Auto-ACH/card-on-file for residential routes eliminates 1-3% billing leakage.
- No water-report emails. Weekly reports are the cheapest retention lever in the industry.
- Ignoring CYA drift. Chlorine stabilizer climbs with every trichlor tablet; at 100+ ppm it effectively locks out chlorine effectiveness and requires a partial drain.
How Deelo Helps
Deelo's Field Service app handles route optimization with live-traffic drive-time logic, structured water-chemistry forms per stop, and truck-level chemical inventory. Custom fields per pool hold volume, system type (chlorine, saltwater, UV, ozone), and baseline targets — so the dosing recommendation engine works the moment the tech enters a reading.
Invoicing and CRM handle auto-ACH monthly billing with vacation-hold pro-rating. Automation fires the weekly water-report email, seasonal touchpoints (opening in March, closing in October, heater startup, filter deep-clean), and exception alerts. Docs generates commercial HOA/hotel invoices with itemized visit lists.
At $19/seat/month, a 5-person pool service shop runs the full platform for $95/month. One prevented callback pays for a year of subscription.
Try Deelo free for your pool service operation
No credit card required. Import your routes, set baseline chemistry targets per pool, and see the first day's optimized route map in under an hour.
Start Free — No Credit CardTools Mentioned
| Tool | Role in the Workflow | Typical Cost |
|---|---|---|
| Deelo Field Service + CRM + Invoicing | Route optimization, water-chemistry logs, chemical inventory, monthly billing | $19/seat/mo |
| Google Maps / Mapbox (integrated) | Live-traffic route optimization by drive time | Included via Deelo |
| Stripe / ACH (built into Deelo) | Monthly auto-billing for residential, Net 30 for commercial | 2.9% + $0.30/txn (card) / 0.8% (ACH, capped) |
| Deelo Automation | Weekly water reports, vacation holds, seasonal reminders | Included |
| Taylor / LaMotte test kits | Physical water-chemistry testing (readings logged into Deelo) | $80-$300 one-time |
Pool Service Route and Chemical Tracking FAQ
- How many residential stops should a tech do per day?
- In a tightly clustered territory (suburban subdivision, pool density 30+ per sq mi), 22-26 stops per day. In a spread-out market, 14-18. Aim for under 5 minutes of drive between clustered stops and 12-18 minutes of actual work per pool depending on size and equipment.
- How do I handle chlorine lock (high CYA) without losing the customer?
- Log CYA monthly. Above 60 ppm, flag for a partial drain — typically 1/3 to 1/2 of volume refilled with fresh water. Explain it is routine (every 1-2 years on pools using trichlor tabs) and schedule as an add-on with a line-item price. A structured quote with the why (stabilizer buildup, chlorine effectiveness loss) and the what (drain, refill, retest, rebalance) converts better than "we need to drain your pool."
- What if a customer calls on the day saying 'skip this week'?
- A vacation-hold entry in the CRM should propagate to the route in real time. The tech's route re-optimizes, billing pro-rates the next invoice, and a confirmation text goes to the customer. Without automation, skip requests become phone tag — either missed (tech wastes a stop) or missed bills (office forgets to pro-rate).
- How do I handle a pool that turns green between visits?
- Document chemistry on arrival (especially free chlorine, CYA, and pH — green almost always means free chlorine below 1 ppm with CYA high enough to make normal shocking ineffective). Offer a 3-5 day shock protocol with daily visits (extra service) or a drain-and-refill if CYA is above 80 ppm. The chemistry log is the evidence that justifies the extra charge.
- Is it worth switching to saltwater pools from the service side?
- Saltwater reduces chemical handling but does not eliminate chemistry work. Salt generators produce chlorine from salt; you still manage pH (rises with salt-gen use), alkalinity, CYA (critical — salt pools without CYA burn chlorine fast), and calcium. Monthly cell cleaning and cell replacement every 3-5 years at $400-$900 are the service adds. Operationally, similar work with a different chemical mix.
- How should I price a monthly residential pool service?
- 2026 pricing runs $130-$180/month for a standard chlorine pool (weekly service, chemicals included) in most US markets, $180-$260 for saltwater or larger pools, $250+ for pools with attached spa. Chemicals-included builds $18-$25/month of chemical cost into the price. Know your chemical cost per pool and drive-time cost per stop before pricing.
- What chemistry numbers should trigger an immediate callback?
- Free chlorine below 0.5 ppm, pH above 8.2 or below 6.8, or visible cloudiness/algae should trigger an extra visit within 24-48 hours. Build this as a rule: tests outside these ranges auto-flag the route supervisor and draft a follow-up slot. Catching a drift early is a 10-minute fix; waiting a week is often a multi-day shock protocol.
Related pages
Explore More
Related Articles
Best Personal Injury Case Management Software in 2026
A head-to-head comparison of the top personal injury case management platforms in 2026. Lien tracking, medical record management, demand letters, contingency math, and settlement distribution compared across Clio, MyCase, Filevine, CASEpeer, PracticePanther, Smokeball, and Deelo.
12 min read
How-ToHow to Start a Plastic Surgery Practice: Complete 2026 Guide
A step-by-step guide to launching a plastic surgery practice in 2026. Licensing, credentialing, facility setup, liability insurance, patient pipeline, operations software, and first-year revenue targets.
14 min read
Best OfBest Podcast Management Software in 2026
The top podcast management platforms compared for 2026. Descript, Captivate, Buzzsprout, Transistor, Riverside, and Deelo — features, pricing, and the angle each takes for professional podcasters.
11 min read
ComparisonDeelo vs ServiceTitan: The Honest 2026 Comparison
A genuinely fair side-by-side comparison of Deelo and ServiceTitan for field service businesses. Pricing, features, strengths, weaknesses, and who each platform is really built for.
12 min read