Skip to content

State water index

Minnesota water hardness

Search 252 indexed communities and 321 ZIP profiles, then compare the underlying utility, source, distance, and reporting context.

Median indexed hardness

318PPM

Very Hard

Indexed range 46.1–716 PPM

ZIP profiles
321
Cities
252
Matched utilities
252
Counties
81

Understanding Minnesota

Why local comparisons matter here

Minnesota's water landscape includes major rivers and lakes, glacial aquifers, and deeper bedrock sources from the Twin Cities to prairie and northern forest regions.

In this index, very hard is the largest category, covering 300 of 319 profiles with hardness data. The state median is 318 PPM, but the full indexed range is 46.1–716 PPM.

State distribution

Hardness across indexed ZIPs

Counts describe published ZIP profiles, not a population-weighted statewide sample.

Soft · 0–60 PPM7
Moderately hard · 61–120 PPM12
Hard · 121–180 PPM0
Very hard · 181+ PPM300

Evidence coverage

What the current records support

Hardness estimate
99%
Lead 90th percentile
100%
Copper 90th percentile
32%

96

Low-confidence hardness profiles

96

Nearest site more than 25 miles away

Reported source water

Utility source mix

Groundwater
226
Surface water
25
Groundwater influenced by surface water
1

City directory

Explore Minnesota by city

Search by city or county, then sort by name, hardness, or ZIP coverage.

252 cities · 321 ZIP profiles

252 cities found

Page 1 of 11

Ada

Norman County · 1 ZIP

407PPM

Single indexed valueNo active flag

Adrian

Nobles County · 1 ZIP

419PPM

Single indexed valueNo active flag

Aitkin

Aitkin County · 1 ZIP

196PPM

Single indexed valueNo active flag

Albany

Stearns County · 1 ZIP

333PPM

Single indexed valueNo active flag

Albert Lea

Freeborn County · 1 ZIP

306PPM

Single indexed valueNo active flag

Alexandria

Douglas County · 1 ZIP

390PPM

Single indexed valueNo active flag

Annandale

Wright County · 1 ZIP

327PPM

Single indexed valueNo active flag

Apple Valley

Dakota County · 1 ZIP

320PPM

Single indexed valueNo active flag

Appleton

Swift County · 1 ZIP

385PPM

Single indexed valueNo active flag

Arden Hills

Ramsey County · 1 ZIP

181PPM

Single indexed valueNo active flag

Arlington

Sibley County · 1 ZIP

320PPM

Single indexed valueNo active flag

Atwater

Kandiyohi County · 1 ZIP

338PPM

Single indexed valueNo active flag

Avon

Stearns County · 1 ZIP

338PPM

Single indexed valueNo active flag

Babbitt

St. Louis County · 2 ZIPs

58PPM

Range 57–59.5No active flag

Barnesville

Clay County · 1 ZIP

408PPM

Single indexed valueNo active flag

Baxter

Crow Wing County · 1 ZIP

274PPM

Single indexed valueNo active flag

Bayport

Washington County · 1 ZIP

320PPM

Single indexed valueNo active flag

Becker

Sherburne County · 1 ZIP

320PPM

Single indexed valueNo active flag

Belle Plaine

Scott County · 1 ZIP

318PPM

Single indexed valueNo active flag

Bemidji

Beltrami County · 1 ZIP

189PPM

Single indexed valueNo active flag

Benson

Swift County · 1 ZIP

385PPM

Single indexed valueNo active flag

Big Lake

Sherburne County · 1 ZIP

318PPM

Single indexed valueNo active flag

Bird Island

Renville County · 1 ZIP

299PPM

Single indexed valueNo active flag

Blaine

Anoka County · 2 ZIPs

325PPM

Single indexed valueNo active flag

County comparison

Highest indexed county medians

CountyMedianRangeZIP profiles
Clay County705 PPM382.5–7167
Pennington County542 PPM541.5–541.51
Roseau County541 PPM540.5–540.52
Pipestone County516 PPM516–5161
Polk County472 PPM188.5–635.53
Red Lake County472 PPM472–4721
Big Stone County434 PPM434–4341
Nobles County419 PPM419–4192
Jackson County419 PPM419–4192
Rock County419 PPM419–4191
Traverse County408 PPM408–4081
Norman County407 PPM407–4071