Dip and shoot
Lay the strip on white paper in the shade and take the picture. The app finds the strip on its own and reads every pad. A 7-in-1 and a 4-pad strip are told apart from the photo, not from a setting.
Now launching on iPhone
PoolLevels reads your test strip from a photo, works out the saturation index the way a water chemist would, and hands you one dose sized for your pool, with the arithmetic printed underneath. No colour wheel. No guessing. No trip to the store to be told what you already measured at home.
Launch build is with Apple for review. Days away.
iPhone. No account. Your readings stay on your phone.
How it works
Lay the strip on white paper in the shade and take the picture. The app finds the strip on its own and reads every pad. A 7-in-1 and a 4-pad strip are told apart from the photo, not from a setting.
Each pad's colour sits beside the chart colour it matched, and any pad the app is unsure of is flagged so you can see which numbers to trust. Prefer your own numbers? Type them. The chemistry is identical either way.
Corrosive, balanced or scaling, then a single dose sized for your gallons, the working shown, and the rule that keeps you out of trouble: half first, circulate, retest, then the rest.
The saturation index from pH, total alkalinity, calcium hardness, cyanuric acid and water temperature, using the Plummer and Busenberg carbonate equilibria and Davies activity coefficients. Cyanuric acid is not quietly treated as zero: leaving it out moved a real sample by 0.18 and flipped its verdict from corrosive to balanced, so a missing reading suppresses the verdict instead.
Sized for your pool's actual gallons, rounded to a precision you can pour, with the arithmetic shown so you can check it. Always half first, circulate, retest, then the rest. It is easy to add more and very hard to take any out.
There is no sign in, no advertising and no tracking across other apps. Your readings, your pool and your strip photos are stored on the device and nowhere else. The only thing the app sends us is anonymous usage counts, such as which screens get opened.
Straight from the app's own maths
Real inputs, run through the shipping code. The index, the verdict, the dose and the line of arithmetic are exactly what the app returned.
Add 35 fl oz of muriatic acid.
That brings pH from 7.8 toward 7.5, and takes alkalinity about 7 ppm down with it.
26 fl oz per 10,000 gal per 10 ppm × (20,000 ÷ 10,000 = 2) × (6.7 ÷ 10 = 0.667) = 35 fl oz
Always add acid to water, never water to acid.
Dissolved solids are assumed at 1,000 ppm for a chlorine pool unless you enter the figure from a store printout, which can move this index by around 0.1. The app says which it used on screen.
What it costs
$0
No card, no account, no time limit$4.99 a month
or $41.99 a year, billed through the App StoreA strip read is a first look, not a lab result. The readings come from matching each pad to the printed colour chart, corrected where that kind of strip has been checked against store tests, and the app flags any pad it cannot place. A store printout or a drop kit is still the reference, and the app is at its most reliable when you type those numbers in.
From the founder
I built PoolLevels for my own pool. Every store test ended with a printout telling me what to add for numbers I already had in my hand, and every strip left me squinting at a colour chart in the sun. I wanted the chemistry done properly, the dose sized for my water, and the working on the screen so I could check it myself. That is the whole app.
Ben Mouton, Alstig, Inc.
Free to start. Pro is $4.99 a month or $41.99 a year.