State distribution
Hardness across indexed ZIPs
Counts describe published ZIP profiles, not a population-weighted statewide sample.
State water index
Search 685 indexed communities and 723 ZIP profiles, then compare the underlying utility, source, distance, and reporting context.
Median indexed hardness
281PPM
Very Hard
Indexed range 182–834 PPM
Understanding Iowa
Iowa systems draw from rivers, alluvial aquifers, glacial deposits, and deeper bedrock units. Treatment and source blending can matter as much as distance.
In this index, very hard is the largest category, covering 721 of 721 profiles with hardness data. The state median is 281 PPM, but the full indexed range is 182–834 PPM.
State distribution
Counts describe published ZIP profiles, not a population-weighted statewide sample.
Evidence coverage
284
Low-confidence hardness profiles
282
Nearest site more than 25 miles away
Reported source water
Highest medians
Lowest medians
City directory
Search by city or county, then sort by name, hardness, or ZIP coverage.
685 cities · 723 ZIP profiles
685 cities found
Page 1 of 29
Franklin County · 1 ZIP
275PPM
Guthrie County · 1 ZIP
522PPM
Dallas County · 1 ZIP
352PPM
Wapello County · 1 ZIP
300PPM
Washington County · 1 ZIP
274PPM
Plymouth County · 1 ZIP
464PPM
Monroe County · 1 ZIP
202PPM
Marshall County · 1 ZIP
271PPM
Linn County · 1 ZIP
265PPM
Hardin County · 1 ZIP
281PPM
Franklin County · 1 ZIP
273PPM
Kossuth County · 1 ZIP
316PPM
Wayne County · 1 ZIP
191PPM
Butler County · 1 ZIP
274PPM
Buena Vista County · 1 ZIP
397PPM
Chickasaw County · 1 ZIP
255PPM
Sioux County · 1 ZIP
453PPM
Polk County · 1 ZIP
329PPM
Lyon County · 1 ZIP
522PPM
Iowa County · 1 ZIP
268PPM
Story County · 4 ZIPs
317PPM
Jones County · 1 ZIP
267PPM
Clinton County · 1 ZIP
281PPM
Jackson County · 1 ZIP
274PPM
County comparison
| County | Median | Range | ZIP profiles |
|---|---|---|---|
| Lyon County | 515 PPM | 419–834 | 8 |
| Guthrie County | 506 PPM | 322–522 | 7 |
| Sioux County | 461 PPM | 419–465 | 11 |
| Plymouth County | 457 PPM | 443–464 | 9 |
| Clay County | 449 PPM | 321–449 | 5 |
| O'Brien County | 434 PPM | 409–449 | 7 |
| Woodbury County | 430 PPM | 411.5–456.5 | 13 |
| Carroll County | 425 PPM | 376–472 | 11 |
| Polk County | 421 PPM | 291–420.5 | 28 |
| Boone County | 421 PPM | 327–420.5 | 6 |
| Sac County | 420 PPM | 376–434.5 | 6 |
| Osceola County | 419 PPM | 419–449 | 5 |