A pool service app is the record of what happened at the pool, not just the stop list.
From the truck, every round looks the same: twelve pools, a fixed order, back by four. What separates a pool service app from a to-do list is that each stop leaves a record behind. That record is what you reach for when a customer says the water was green on Saturday, when a heater fails inside its warranty, or when a health department asks how a commercial pool was running last month. The scheduling half of this is the same shape as lawn care business apps. The chemistry half is not.
This page covers what a service log should actually capture, why the dosing entry carries weight the rest of the record does not, how a round survives rain and make-up stops, and what to hold about the equipment at each property.
See what a stop record has to holdThe short version
Anyone can list the stops. The log is the part that has to hold up.
A pool round app has two jobs that pull in different directions. One is operational: get a technician to twelve properties in a sensible order with the right gate codes. The other is evidential: leave behind a dated, attributable record of what the water read and what went into it.
The second job is the one homemade tools drop first, because it is invisible until something goes wrong. Then it is the only thing anybody wants. Design the log first and the round around it.
What a service log should actually capture
What people search for is a pool chemical log app, and that is the right place to start. A stop record worth keeping has a timestamp the technician did not type, the name of the person who took the reading, the property, and the values: free chlorine, pH, total alkalinity, calcium hardness, cyanuric acid where it is used, and water temperature. Then what was added, by product name and measured quantity. Not "shock", and not "a scoop".
CDC guidance for public pools gives you a sense of the shape. It advises keeping free chlorine at a minimum of 1 part per million, holding pH between 7.0 and 7.8, testing pH and disinfectant at least twice a day and hourly under heavy use, and maintaining accurate records of those measurements and of maintenance activities. It also tells operators to follow the applicable local, state, tribal or territorial pool code, because that is the document with legal force.
Be careful with that last point, because it is where confident writing goes wrong. There is no single national pool rule in the United States. CDC publishes the Model Aquatic Health Code as a model, and it becomes law only where a jurisdiction adopts it, in whole or in part, and it covers venues open to the public rather than the back garden pools that make up most residential rounds. In some places a service log for a commercial pool is a record an inspector can ask to see; in others nothing is required at all. So do not build your app around a regulation number you found on a forum. Ask your own health department what the venues you service have to keep, and make the app record at least that.
Two fields people forget, and both are about absence. Whether the reading was taken before or after dosing, and whether the pool could not be serviced at all, with the reason. A missed visit that is recorded as a missed visit is a record. A missed visit that is simply not there looks like a hole in the log.
CDC, operating and managing public pools, hot tubs and splash pads
Try it
What your log can answer six months later
Switch on the fields your stop record actually holds. The questions a customer, an insurer or an inspector asks are the test of it.
0 of 4 questions answerable
- No: Was this pool in range last Saturday?
- No: What rate was that product applied at?
- No: Was the filter really cleaned on the 4th?
- No: Did anyone visit during the two green weeks?
The dosing entry is not like the other fields
Pool sanitisers, algaecides and shock products are registered pesticides in the United States, and that has a consequence people coming from software do not expect. The label is enforceable. Every registered pesticide has to carry the statement that it is a violation of federal law to use the product in a manner inconsistent with its labeling, and that applies to any person using it, not only to licensed applicators.
So the box where a technician writes what they added is doing more than tracking stock. It is a claim about a dose. Make it hard to get wrong: pick the product from a list you control rather than free text, record the quantity in the unit the label uses, and store pool volume on the property record so the app can show the rate that is actually being applied. A text field that accepts "chlorine, some" gives you nothing to stand behind later.
Keep your app out of the advice business. It should not compute a dose and present it as a recommendation unless you are prepared to own that number, which is a different kind of product with a different kind of risk. Showing the label rate, the pool volume and the amount entered together, so the technician can see all three at once, is more useful and much safer than a calculator that quietly rounds.
A pool round is a loop that repeats, until it rains
A pool cleaning route app is not a delivery optimiser, and treating it like one is the usual first mistake. Most pool rounds are stable: the same properties, the same weekday, for most of the year. The technician already knows the order, including which gate sticks and which dog to shout at first. Re-sequencing that every morning solves a problem nobody had.
What actually moves is the exception. Rain cancels a Tuesday and pushes six pools into Wednesday. A property goes on hold for a month while the owners are away. A green pool recovery needs three visits in a week and then drops back to weekly. Summer adds stops and winter takes them away. The model that survives all this is a recurring assignment with dated exceptions, not a list somebody rewrites by hand. If you do want distance optimisation on top of it, treat that as its own problem and look at how a route planning app handles it.
Two numbers decide whether a day is real: service minutes per pool and drive minutes between them. Take both from actual timestamps rather than from estimates, and the app can tell you honestly whether the fourteenth stop fits. Most round pain is not a bad sequence. It is a day that was never long enough, repeated until somebody quits.
Every pool is also a set of equipment with a history
The property record carries far more than an address. Pool volume, surface type, sanitiser system, filter type and size, pump and heater make, model and serial number, salt cell install date, gate code, dog, and where the key lives. Technicians leave and arrive in this trade, and the property record is how a round survives that.
Filters get cleaned on a cycle, cells get replaced, heaters get serviced. That part of a pool maintenance app behaves exactly like a preventive maintenance app: a due date per asset, a record per service, and a history you can hand to a warranty claim. Attaching that history to the equipment rather than to the visit is what makes it findable three years later, when the visit has long since scrolled away.
Photographs earn their place here more than anywhere else on the round. A picture of the pressure gauge before and after a filter clean, or of a skimmer basket, ends most of the arguments this business generates. Keep them attached to the stop record with the same timestamp, so the photo and the reading are one entry rather than two things somebody has to line up by hand.
What each approach gives a pool round
| Option | Readings captured at the pool | Works with no signal | Equipment history per property | Your own exception rules |
|---|---|---|---|---|
| Paper round sheet | Yes | Yes | No | in the tech's head |
| Spreadsheet on a phone | typed up later | No | No | No |
| Generic field service app | as free text | varies by product | generic asset list | No |
| Pool industry platform | Yes | varies by product | Yes | what the vendor built |
| An app you build | Yes | Yes | Yes | Yes |
Building one around your own round
Pool service platforms exist and several are good. They are priced per technician per month and shaped around the average round, which is fine right up to the point where your business is not average: a commercial contract that needs a different log to the domestic one, a chemical you buy in a unit nobody else uses, a two-person crew that splits a large property, an owner who wants the reading texted the moment it is taken.
Newly is an AI app builder. You describe the app in plain English, including the fields your log has to hold and the exceptions your schedule has to survive, and it writes a real React Native and Expo project you own, runs it on a cloud simulator while it builds, and ships it to TestFlight and to Google Play internal testing. It is $25 a month with no free plan, iOS needs your own Apple Developer account, and there are no built-in payments, so invoicing stays wherever it is now. It is not a pool industry product and it does not know your water chemistry for you.
Before you design anything else, be honest about where the work happens. Readings get taken in equipment rooms, behind pool houses and in a back garden with no signal, and an app that needs a connection to save an entry will lose entries. Decide what happens offline first, because it changes the shape of everything above it.
Questions people ask about pool service apps
At minimum: the property, who serviced it, a timestamp the device supplied rather than one typed in, the water readings you take, and what was added by product name and measured quantity. Add equipment observations, photos, and whether the pool could not be serviced with the reason. The test of a log is whether it answers a question six months later, not whether it looked tidy on the day.
Describe the round your technicians actually do
Write down what a stop has to record, what happens on a rained out Tuesday, and what the app does with no signal, then build the round around that.
Start building