
On this page
Your city water quality report lists hardness as 238 ppm (or mg/L), while your new water softener's programming screen asks for a hardness setting in grains per gallon (gpg). Those two numbers look completely unrelated, yet they describe the same calcium and magnesium hardness, both expressed as calcium carbonate. Divide your ppm or mg/L reading by 17.1 (238 / 17.1 = 13.9, rounded up to 14 gpg) and you have the exact figure your control valve needs.
The constant that connects them

In residential water testing, parts per million (ppm) and milligrams per liter (mg/L) are identical one-to-one units. A grain, by contrast, is an older apothecary weight unit (1/7,000th of a pound, or 64.8 milligrams) dissolved in one US gallon (3.785 liters) of water. Dividing 64.8 mg by 3.785 liters gives the universal water-treatment constant: 1 gpg = 17.1 mg/L (ppm).
Per the Water Quality Association, American National Standards NSF/ANSI 44 and NSF/ANSI 330 define "soft water" using this exact ratio: water containing less than 1 grain per gallon (or less than 17.1 mg/L) of hardness as calcium carbonate equivalent. Keep two simple conversion rules in mind:
- From ppm or mg/L to gpg (for programming a softener): Divide the ppm/mg/L number by 17.1, then round up to the nearest whole number.
- From gpg to ppm or mg/L (for comparing against lab reports): Multiply the gpg number by 17.1.
Quick conversion chart: ppm (mg/L) to gpg and USGS tiers
How many ppm counts as soft? It depends on which scale you read, and the two disagree only at the bottom. The U.S. Geological Survey's general scale has four tiers: soft (0 to 60 mg/L), moderately hard (61 to 120 mg/L), hard (121 to 180 mg/L), and very hard (over 180 mg/L). The grain-based scale used across the softener industry is stricter about "soft": under 1 gpg (17.1 mg/L) is soft, which matches the NSF/ANSI 44 definition, and 1 to 3.5 gpg is slightly hard. Above 3.5 gpg the two scales line up, because 60, 120, and 180 mg/L convert to 3.5, 7, and 10.5 gpg. So 50 mg/L water is "soft" in a USGS summary, yet a softener's output is judged against the under-1-gpg mark.
Use this reference table to convert common lab or city report values straight into the whole-number gpg setting your control valve expects:
| Report reading (ppm or mg/L) | Exact division (÷ 17.1) | Valve setting (rounded gpg) | USGS & WQA hardness tier |
|---|---|---|---|
| 0 - 17 mg/L | 0 - 1.0 gpg | 1 gpg (already soft) | Soft (NSF/ANSI 44 soft benchmark) |
| 50 mg/L | 2.92 gpg | 3 gpg | Soft (USGS) / Slightly hard (WQA) |
| 85 mg/L | 4.97 gpg | 5 gpg | Moderately hard (61 - 120 mg/L) |
| 120 mg/L | 7.02 gpg | 8 gpg | Hardness threshold (top of Moderately hard) |
| 150 mg/L | 8.77 gpg | 9 gpg | Hard (121 - 180 mg/L) |
| 180 mg/L | 10.53 gpg | 11 gpg | Top of Hard / start of Very hard |
| 220 mg/L | 12.87 gpg | 13 gpg | Very hard (over 180 mg/L) |
| 250 mg/L | 14.62 gpg | 15 gpg | Very hard |
| 300 mg/L | 17.54 gpg | 18 gpg | Very hard |
| 400 mg/L | 23.39 gpg | 24 gpg | Very hard |
| 500 mg/L | 29.24 gpg | 30 gpg | Very hard |
How to read a city report that lists both an "Average" and a "Range"
Pull up a municipal Consumer Confidence Report (CCR) and you will usually see two columns next to Total Hardness: an annual Average (for example, 165 ppm) and a detected Range (for example, 110 - 245 ppm). The range means the water reaching taps changed during the year, for example when a utility draws from or blends different sources.
Test your own tap first; if you must use the report, convert the high end of the range, not the average:
- If you convert the 165 ppm average (9.6 -> 10 gpg) and your tap is actually at 245 ppm (14.3 -> 15 gpg), the valve counts gallons as if the water were 10 gpg. On a weekly cycle the resin runs out after about 4 to 5 days, and hard water bleeds through for the rest of the week.
- If you convert the 245 ppm peak (15 gpg), you stay ahead of the mineral load year-round at the cost of some extra salt in softer months. A home drop-count titration test of your own tap, repeated if the season or source changes, gives the real number.
What actually goes into the head unit

A digital control head expects hardness in the unit printed on its own display, and on boards sold in the US that is almost always the converted gpg whole number. On the Pentair Fleck 5600SXT the parameter is labeled H for Feedwater Hardness on the Master Programming chart. A Clack WS1 can be set to show ppm or degrees instead, so check the unit beside the number before you type. Punching a ppm figure such as 205 into a gpg screen instead of 12 makes the computer think your water is 17 times harder than it really is, so it regenerates about every night.
Follow three rules when entering your final number:
- Round decimals up to the next whole grain: If 225 ppm / 17.1 = 13.15 gpg, enter 14 gpg (never round down, which risks hardness bleed-through on the last day of the cycle).
- Add iron compensation on well water after converting: If your lab report shows 205 mg/L hardness (12 gpg) plus 1.5 ppm (mg/L) of clear-water ferrous iron, add 3 to 5 gpg per 1 ppm of iron (1.5 x 3 to 5 = about 5 to 8 gpg) for a final programmed setting of about 17 to 20 gpg; use the multiplier your valve or softener manual gives. A softener handles ferrous iron only up to about 1 to 3 ppm depending on the unit; above that, or with red-water iron, it needs a dedicated iron filter.
- Use the same compensated gpg for sizing: Feed that final number into our water softener sizing formula and hardness setting walkthrough.
ppm to gpg and back
Questions people ask
Is ppm the exact same thing as mg/L on a water report?
Yes. One milligram of dissolved mineral in one liter of fresh water (1,000,000 milligrams of water) is literally one part per million. Whether your report prints "mg/L," "ppm," or "ppm as CaCO3," divide that number by 17.1 to get grains per gallon (gpg).
What if my water report only lists Calcium (Ca) and Magnesium (Mg) separately instead of Total Hardness?
On comprehensive lab reports, Calcium and Magnesium are sometimes listed as individual elements in mg/L rather than combined "Total Hardness as CaCO3." To calculate Total Hardness as CaCO3 from the two separate ions, multiply Calcium (mg/L) by 2.5 and multiply Magnesium (mg/L) by 4.1, add those two results together, and then divide the total by 17.1 to get gpg.
How do I convert water hardness from ppm to dH (German degrees)?
One German degree (°dH) is defined as 10 mg/L of calcium oxide, which equals about 17.85 mg/L as calcium carbonate. Divide ppm (mg/L as CaCO3) by 17.85 to get °dH. Between the two softener units, 1 gpg is about 0.96 °dH and 1 °dH is about 1.04 gpg. If a report or valve shows French degrees (°f), 1 °f is 10 mg/L as CaCO3.
Should I round 11.2 gpg down to 11 or up to 12 on my softener display?
Always round up to the next whole number (12 gpg). Rounding up builds in a tiny safety margin so the control valve triggers regeneration right before the resin bed is completely exhausted.
Why does a handheld TDS meter read 250 ppm even after my water softener is working?
A cheap digital TDS (Total Dissolved Solids) pocket meter measures electrical conductivity of all dissolved ions in water - including the sodium ions that a water softener trades in place of calcium and magnesium. Because ion exchange is a trade rather than removal, a TDS meter cannot measure water hardness and will read about as high on fully softened water as it did before. Use a hardness test instead.
Sources
- U.S. Geological Survey, Water Science School
- Water Quality Association, "Scale Deposits"
- Pentair, Fleck 5600SXT Service Manual, Master Programming Mode Chart


