How to Calculate the Saturation Index on the Pool Deck

Why this matters

Every reading on the panel can sit inside its own range and the water can still be eating the plaster or scaling the heater. Range checks look at each number alone; the saturation index looks at how they push on each other. It takes about two minutes with a calculator on your phone, and it is the number that settles a replaster dispute, explains a heater full of scale, and tells you which of the four readings to move when balance is off. This card owns the arithmetic; the scale and etching background is in 'Calcium Hardness and Scale Management'.

What the index says, in one paragraph

The Langelier Saturation Index (LSI) predicts whether water will deposit calcium carbonate (positive, scaling) or dissolve it (negative, corrosive to plaster, grout and metal). Zero means saturated: water neither adds nor takes calcium carbonate. Five inputs drive it: pH, water temperature, calcium hardness, total alkalinity and cyanuric acid. The shop band used across this shelf is -0.3 to +0.3, as in 'Calcium Hardness and Scale Management'.

The formula: LSI = pH + TF + CF + AF - 12.1

  • TF, the temperature factor, read from a table.
  • CF, the calcium factor: log10 of calcium hardness, minus 0.4.
  • AF, the alkalinity factor: log10 of carbonate alkalinity, which is total alkalinity minus a correction for cyanuric acid.
  • 12.1 is the constant for typical pool water. Many worksheets step up to 12.2 for high-dissolved-solids water such as a salt pool. Pick one per pool type, write it on the worksheet, and hold it, so this week's index compares with last week's.

The steps

1. Take the five readings from the same sample, at the same visit. Run the panel per 'How to Run the Weekly Water Test Panel at the Pool'. Mixing a calcium reading from last week with this week's pH gives an index for water that never existed.

2. Read the water temperature at elbow depth, away from returns. For a spa or any heated pool, also note the heated temperature; scale forms where water is hottest, which is the heat exchanger and the spa, not the pool body.

3. Look up the temperature factor. The common table:

Water F TF Water F TF
32 0.0 76 0.6
37 0.1 84 0.7
46 0.2 94 0.8
53 0.3 105 0.9
60 0.4
66 0.5

Use the nearest row, or interpolate. Published tables differ by up to about 0.1 at the same temperature, which is why the shop holds one.

4. Compute the calcium factor: log10(calcium hardness) minus 0.4. On a phone calculator, type the hardness, press log, subtract 0.4. The coarse table in 'Calcium Hardness and Scale Management' rounds the same values to 0.1.

5. Correct total alkalinity for stabilizer, then take the log. The alkalinity test counts cyanurate along with carbonate, and only carbonate counts toward scaling. The field correction is carbonate alkalinity = total alkalinity minus CYA / 3. That one-third factor holds near pH 7.5; at higher pH a larger share of the stabilizer reads as alkalinity, at lower pH a smaller share. Then AF = log10(carbonate alkalinity). Skipping this step on a pool carrying 60 to 100 ppm CYA overstates the index by roughly 0.1 to 0.2, enough to call corrosive water balanced.

6. Add, subtract the constant, round at the end. Carry two decimals through the sum and round the final index to one decimal only when you write it in the log.

7. Judge it at both ends of the pool's temperature range. One index at today's temperature is half the answer. Drop the TF to the coolest water the pool sees while open and raise it to the heated temperature if there is a heater. A pool that is balanced only at today's temperature is balanced for one week.

The worksheet, filled in

   LSI WORKSHEET - 16,000 gal plaster, gas heater
   constant used: 12.1

   inputs
     pH ................................ 7.6
     water temp ........................ 84 F
     calcium hardness .................. 300 ppm
     total alkalinity .................. 100 ppm
     cyanuric acid ..................... 60 ppm

   factors
     TF  table at 84 F ................. 0.70
     CF  log10(300) - 0.4 = 2.48 - 0.4 . 2.08
     CA  100 - 60/3 = 100 - 20 ......... 80 ppm
     AF  log10(80) ..................... 1.90

   sum   7.6 + 0.70 + 2.08 + 1.90 ...... 12.28
   LSI   12.28 - 12.1 .................. +0.18
   band  -0.3 to +0.3 .................. IN

Check it the other way: if alkalinity had not been corrected for stabilizer, AF would be log10(100), which is 2.00, and the index would read +0.28, still in band but 0.1 closer to scaling than the water really is. The correction matters more as stabilizer climbs.

Worked example: same water, three temperatures

The worksheet above is a backyard pool with an attached spa that shares its water through a spillover and is heated to 104 F on weekends. The pool body runs 84 F now and will cool to about 60 F in the shoulder months.

Pool at 84 F: +0.18, as worked. In band.

Pool at 60 F: TF drops from 0.70 to 0.40, so the index drops by 0.30, to about -0.12. In band.

Spa at 104 F: TF rises to 0.90 (the 105 F row), up 0.20 from the pool, so the index is +0.38. Out of band on the scaling side, and the spa side is exactly where the heater sits.

Which reading to move. The index is out only at the hot end, by 0.08. The levers and what each costs:

  • pH moves the index one for one: 0.1 pH is 0.1 LSI. Muriatic acid works in an hour and can be reversed. But it is the reading that drifts most, so a pH-only fix has to be held every visit.
  • Carbonate alkalinity moves it by its log: halving it drops the index about 0.30. It also sets how fast pH climbs, so it is the lever when pH will not stay where you put it.
  • Calcium hardness moves it by its log too: halving it drops the index about 0.30. Raising it is easy and slow to undo; lowering it means draining.
  • Temperature is not yours to set on the pool, but on a heated spa the set point is a lever the customer controls.

The call. Lower pH from 7.6 to 7.5. Recomputed: the sum drops by 0.10, so the spa reads +0.28, the pool at 84 F reads +0.08 and the pool at 60 F reads -0.22. All three in band, with one small acid dose and nothing permanent. Taking pH to 7.4 instead would put the spa at +0.18 but the pool at 60 F at -0.32, just past the corrosive edge, which trades a heater problem for a plaster one. The index is what made that visible.

Rules for picking which reading to move

Work them in this order and stop at the first that closes the gap at both ends of the temperature range:

  1. Is any single reading outside its own range in 'Pool Chemistry Quick Reference'? Fix that one first. Balancing an index around an out-of-range reading builds on the wrong foundation.
  2. Is the gap 0.3 or less? Use pH, within its range. It is fast, cheap and reversible.
  3. Does pH keep drifting back? Then the lever is alkalinity: lower it if pH climbs, raise it if pH crashes. Lowering alkalinity is in 'Muriatic Acid Handling and Dilution'; raising it is 'How to Raise Total Alkalinity With Sodium Bicarbonate'.
  4. Is the pool corrosive at its coolest temperature even with pH and alkalinity mid-range? Raise calcium, per 'How to Raise Calcium Hardness With Calcium Chloride'.
  5. Is it scaling at its hottest even with pH at the low end of its range? Calcium is too high for this pool, and the fix is dilution, per 'Calcium Hardness and Scale Management'.

Checking your own number before you act on it

Sanity-check with doublings. Because CF and AF are logs, doubling either calcium or carbonate alkalinity adds about 0.30, and halving it subtracts about 0.30. So from the worksheet, a pool at 150 ppm calcium instead of 300 would read about -0.12 at 84 F, and one at 600 ppm about +0.48. If your computed index for a changed reading does not move by roughly that much, a log went in wrong.

Predict the change before you dose, then confirm it. Write the index you expect after the adjustment on the ticket next to the dose. On the next visit, recompute from fresh readings. If the new index misses the prediction by more than 0.1, one of the readings behind it has moved for another reason (rain, a fill, a feeder change), and that reading is the next thing to chase rather than the index itself.

Sign check. Rough white crust at the waterline, a heater with a scale-lined exchanger, or cloudy water after a calcium add all mean positive. A finish turning rough and dull, grout washing out of tile joints, or pitting at plaster around returns all mean negative. If the field evidence and your sign disagree, recheck the readings before believing the arithmetic.

Where the arithmetic goes wrong in the field

  • Stabilizer left out of the alkalinity factor. The index reads high, so a corrosive pool looks balanced. Most common on trichlor-fed pools, which carry the most CYA.
  • Total dissolved solids ignored on a salt pool. Using 12.1 on water near 3,000 ppm salt reads the index a little higher than worksheets that correct for it. Neither is wrong if held consistently; switching between them week to week makes a trend out of nothing.
  • Temperature from the heater display or the air. The heater's set point is not the pool's water temperature, and the air temperature is neither. Read the water.
  • A log entered as a table value from memory. Recompute when you are near the band edge. The table and the log agree to 0.1, and 0.1 is often the whole margin.
  • One index for the season. Spring water at 60 F and the same water at 84 F are 0.3 apart. Log the index every visit, with the temperature it was computed at.

References

  • See related: Calcium Hardness and Scale Management (scale and etching background, dilution)
  • See related: Pool Chemistry Quick Reference (target ranges for each reading)
  • See related: How to Raise Calcium Hardness With Calcium Chloride
  • See related: Muriatic Acid Handling and Dilution (acid handling, alkalinity knockdown)
  • Langelier, W. F., the original saturation index method for water treatment, as adapted for pools in trade practice