Wisconsin Water Hardness by County

Water in Wisconsin has a median hardness of 110 mg/L as CaCO₃ — "moderately hard" on the USGS scale — based on 33,134 measurements at 6,437 monitoring stations. Iowa County has the state's hardest measured water (390 mg/L); Lincoln County the softest (13.6). Rank: #26 of the 50 states and D.C.

Wisconsin water hardness map — what the numbers mean. Data verified 2026-07-22.

Of Wisconsin's 72 measured counties, 35 very hard, 7 hard, 17 moderately hard, and 13 soft. The hardest are Iowa County (390 mg/L), Calumet County (380), and Lafayette County (350). Lincoln County is the softest at 13.6 mg/L (soft).

About 74% of Wisconsin's roughly 5.9 million residents in counties with gate-passing hardness data live where tap water is hard or worse.

Statewide, Wisconsin's median works out to 6.4 grains per gallon and ranks #26 of the 50 states and D.C. Across 33,134 measurements at 6,437 stations — 11,905 of them since 2000 — the middle 80% of readings fall between 27 and 340 mg/L. The public record runs from 1901 to 2026.

See where Wisconsin sits nationally on the national map, or what its number means on the hardness scale.

Download the Wisconsin water hardness map (PNG) — Water hardness by county in Wisconsin: 72 counties mapped from USGS/EPA data, statewide median 110 mg/L (moderately hard); darker counties have harder water.

By county

Water hardness by county

The table lists all 72 measured Wisconsin counties, hardest first. Their medians span 390 mg/L in Iowa County to 13.6 in Lincoln County — a 28.7× range.

County water hardness, hardest first — median mg/L as CaCO₃.
CountyMedianBandResultsSitesNewest
Iowa County390Very hard219522000
Calumet County380Very hard71432007
Lafayette County350Very hard139712004
Kewaunee County340Very hard115372018
Ozaukee County340Very hard145832013
Dodge County330Very hard2051322014
Fond du Lac County330Very hard2101202026
Washington County320Very hard4211662023
Rock County316.5Very hard214702018
Sheboygan County315Very hard5751182013
Green County310Very hard143312004
Jefferson County310Very hard1891082014
Manitowoc County310Very hard407962025
Door County300Very hard95572008
Grant County300Very hard510902014
Columbia County280Very hard2171272015
Waukesha County275Very hard8722252026
Racine County274.5Very hard392742023
Crawford County270Very hard139472010
Richland County260Very hard55242004
Walworth County257Very hard7511672026
Vernon County250Very hard295672024
Kenosha County241Very hard223552024
Outagamie County231Very hard297632015
Pierce County230Very hard217622023
Green Lake County222Very hard127282023
Milwaukee County220Very hard1,9451942023
Waupaca County218.5Very hard242642026
Brown County198Very hard1,3581972020
Marquette County190Very hard73332026
Winnebago County190Very hard254712015
Buffalo County180Very hard176352024
St. Croix County180Very hard4641512023
Sauk County180Very hard182542019
Waushara County180Very hard203882026
Adams County160Hard68302023
Oconto County160Hard248422026
La Crosse County150Hard280512014
Shawano County144Hard9281632026
Menominee County140Hard8271562022
Marinette County123Hard597612020
Portage County120Hard7171802026
Dunn County110Moderately hard232652014
Forest County110Moderately hard5261582025
Langlade County110Moderately hard272812026
Monroe County110Moderately hard66292004
Polk County95Moderately hard6451162023
Florence County92.3Moderately hard888432023
Taylor County85Moderately hard26182001
Wood County79Moderately hard3751892004
Washburn County74.5Moderately hard114412026
Clark County74Moderately hard211442004
Barron County72Moderately hard174832025
Burnett County68Moderately hard351972025
Trempealeau County68Moderately hard309452014
Pepin County62.9Moderately hard318202016
Ashland County62Moderately hard4,4812132021
Dane County61.4Moderately hard1,8402732020
Juneau County60Moderately hard94242004
Eau Claire County57Soft220632014
Iron County56Soft504502019
Sawyer County54Soft118442001
Marathon County51Soft134452026
Chippewa County46Soft450892013
Rusk County46Soft149632025
Price County45.5Soft64242006
Jackson County40Soft232352003
Vilas County38.9Soft1,7773162026
Oneida County35Soft178712026
Bayfield County23.5Soft9191232025
Douglas County20Soft1,3231452025
Lincoln County13.6Soft332462013
7 additional results from sites without county attribution (not shown).

ZIP codes

ZIP codes in Wisconsin

The ZIP codes below are grouped by the Wisconsin county they fall in. Each ZIP takes its county's measured median — shown in the group header — so this is a ZIP-to-county guide, not a separate reading for every ZIP. To check the water system serving a specific address, use the lookup.

Iowa County · 390 mg/L · Very hard

5350353506535075352653533535435354453553535655358053582

Calumet County · 380 mg/L · Very hard

53014530615308854110541235412954160541695491554952

Lafayette County · 350 mg/L · Very hard

535045351053516535305354153586535875359953803

Kewaunee County · 340 mg/L · Very hard

54201542055421654217

Ozaukee County · 340 mg/L · Very hard

5300453012530215302453074530805309253097

Dodge County · 330 mg/L · Very hard

5300353006530165303253034530355303953047530485305053059530785309153098530995355753579539165392253933

Fond du Lac County · 330 mg/L · Very hard

530105301953049530575306553079539195393153963549325493554937549715497454979

Washington County · 320 mg/L · Very hard

5300253017530225302753033530375304053076530865309053095

Rock County · 316.5 mg/L · Very hard

53501535055351153520535255353453536535375354553546535485356353576

Sheboygan County · 315 mg/L · Very hard

5300153011530135302053023530315304453070530735307553081530835308553093

Green County · 310 mg/L · Very hard

53502535215352253550535665357053574

Jefferson County · 310 mg/L · Very hard

53036530385309453137531565317853538535495355153594

Manitowoc County · 310 mg/L · Very hard

5301553042530635420754214542155422054227542285423054232542415424554247

Door County · 300 mg/L · Very hard

54202542045420954210542115421254213542345423554246

Grant County · 300 mg/L · Very hard

535545356953573538015380253804538055380653807538085380953810538115381253813538165381753818538205382553827

Columbia County · 280 mg/L · Very hard

53555539015391153923539255392853932539355395453955539565396053969

Waukesha County · 275 mg/L · Very hard

5300553007530185302953045530465305153058530665306953072530895310353118531195312253127531465314953150531515315353183531865318853189

Racine County · 274.5 mg/L · Very hard

53105531085312653139531675317753182531855340253403534045340553406

Crawford County · 270 mg/L · Very hard

538215382654626546285463154645546545465554657

Richland County · 260 mg/L · Very hard

53518535405355653581535845392454664

Walworth County · 257 mg/L · Very hard

5311453115531205312153125531285314753157531765318453190531915319553585

Vernon County · 250 mg/L · Very hard

54621546245463254634546395465154652546585466554667

Kenosha County · 241 mg/L · Very hard

5310453140531425314353144531585316853170531795318153192

Outagamie County · 231 mg/L · Very hard

541065411354130541365414054152541655417054911549135491454922549315494254944

Pierce County · 230 mg/L · Very hard

54003540115401454021540225472354740547505476154767

Green Lake County · 222 mg/L · Very hard

539265393953946539475494154968

Milwaukee County · 220 mg/L · Very hard

531105312953130531325315453172532025320353204532055320653207532085320953210532115321253213532145321553216532175321853219532205322153222532235322453225532265322753228532335323553295

Waupaca County · 218.5 mg/L · Very hard

549265492954933549455494654949549505496154962549775498154983

Brown County · 198 mg/L · Very hard

5411554126541555417354180542085422954301543025430354304543075431154313

Marquette County · 190 mg/L · Very hard

53920539305394953952539535396454960

Winnebago County · 190 mg/L · Very hard

5490154902549045492754947549565496354964549805498554986

Buffalo County · 180 mg/L · Very hard

5461054622546295475554756

St. Croix County · 180 mg/L · Very hard

5400254007540135401554016540175402354025540275402854082

Sauk County · 180 mg/L · Very hard

5356153577535785358353588539135393753940539415394253943539515395953961

Waushara County · 180 mg/L · Very hard

54923549305494054943549655496654967549705498254984

Adams County · 160 mg/L · Hard

539105393453936539655445754613

Oconto County · 160 mg/L · Hard

541015412454138541395414154149541535415454161541715417454175

La Crosse County · 150 mg/L · Hard

546015460354614546235463654644546505465354669

Shawano County · 144 mg/L · Hard

541075411154127541285413754162541665441454416544505448654499549285494854978

Menominee County · 140 mg/L · Hard

5413554150

Marinette County · 123 mg/L · Hard

541025410454112541145411954125541435415154156541575415954177

Portage County · 120 mg/L · Hard

5440654407544235444354458544675447354481544825490954921

Dunn County · 110 mg/L · Moderately hard

547255473054734547375473954749547515476354772

Forest County · 110 mg/L · Moderately hard

54103544655451154520545415454254566

Langlade County · 110 mg/L · Moderately hard

544095441854424544285443054462544645448554491

Monroe County · 110 mg/L · Moderately hard

54619546385464854656546605466654670

Polk County · 95 mg/L · Moderately hard

5400154005540065400954020540245402654810548245482654837548535485854889

Florence County · 92.3 mg/L · Moderately hard

5412054121

Taylor County · 85 mg/L · Moderately hard

54433544475445154470544805449054766

Wood County · 79 mg/L · Moderately hard

544105441254413544415444954454544665446954475544895449454495

Washburn County · 74.5 mg/L · Moderately hard

54801548175485954870548715487554888

Clark County · 74 mg/L · Moderately hard

5442054422544255443654437544465445654460544795448854493544985474654771

Barron County · 72 mg/L · Moderately hard

5400454728547335476254805548125482254829548415485754868

Burnett County · 68 mg/L · Moderately hard

548135483054840548455487254893

Trempealeau County · 68 mg/L · Moderately hard

5461254616546255462754630546615474754758547605477054773

Pepin County · 62.9 mg/L · Moderately hard

54721547365475954769

Ashland County · 62 mg/L · Moderately hard

545145451754527545465480654846548505485554861

Dane County · 61.4 mg/L · Moderately hard

5350853515535175352353527535285352953531535325355853559535605356253571535725357553589535905359353597535985370353704537055370653711537135371453715537165371753718537195372653792

Juneau County · 60 mg/L · Moderately hard

539295394453948539505396253968546185463754646

Eau Claire County · 57 mg/L · Soft

54701547035472054722547385474154742

Iron County · 56 mg/L · Soft

54525545345453654547545505455954565

Sawyer County · 54 mg/L · Soft

54828548355484354862548675487654896

Marathon County · 51 mg/L · Soft

54401544035440554408544115441754421544265442754440544485445554471544745447654484

Chippewa County · 46 mg/L · Soft

547245472654727547295473254745547485475754768

Rusk County · 46 mg/L · Soft

54526545305456354731548195484854895

Price County · 45.5 mg/L · Soft

5445954513545155452454537545525455554556

Jackson County · 40 mg/L · Soft

54611546155463554642546435465954754

Vilas County · 38.9 mg/L · Soft

545125451954521545385454054545545545455754558545605456154568

Oneida County · 35 mg/L · Soft

5446354501545295453154539545485456254564

Bayfield County · 23.5 mg/L · Soft

54814548215482754832548395484454847548565486554891

Douglas County · 20 mg/L · Soft

54820548365483854842548495485454864548735487454880

Lincoln County · 13.6 mg/L · Soft

54435544425445254487

629 ZIP codes are not served by a mapped community water system — most are private-well areas. See well water hardness.

Check any ZIP's utility and hardness →

Source

Groundwater vs surface water

Wisconsin's groundwater measures harder than its surface water — 210 mg/L across 7,865 samples versus 94.4 across 24,156, about 2.2× harder. Wells draw from groundwater, so well owners in Wisconsin tend to see the harder number — 210 mg/L, very hard. Groundwater readings there run 18.3 to 400 mg/L across the middle 80% of samples. The comparison draws on 3,977 groundwater and 2,360 surface-water monitoring sites; 29 readings above 2,000 mg/L were logged but held out of the medians as outliers.

Groundwater (wells)

210 mg/L as CaCO₃ · 7,865 results at 3,977 stations.

Surface water (rivers, lakes)

94.4 mg/L as CaCO₃ · 24,156 results at 2,360 stations.

Groundwater measures about 2.2× harder than surface water here.

Chemistry

Water chemistry in Wisconsin

Beyond the hardness number, Wisconsin's water carries a fuller chemical signature — here is how its measured parameters compare to national benchmarks.

TDS

96 mg/L · n=8,892

96 mg/L — below the national county median of 226.

pH

7.9 pH · n=46,834

pH 7.9 — within the EPA secondary range of 6.5–8.5, on the alkaline side.

Alkalinity

117 mg/L as CaCO3 · n=5,997

117 mg/L — substantial buffering capacity, which resists pH swings.

Calcium : Magnesium

26.2 : 12.6 mg/L2.08 : 1 · n=9,522

Calcium is about 56% of Wisconsin's hardness (26.2 mg/L Ca to 12.6 mg/L Mg), a little more magnesium-rich than the national ~68% calcium share.

Parameter medians may include a small share of quality-control samples; the hardness lane is fully QC-filtered.

Aquifers

Major aquifers under Wisconsin

3 aquifer systems supply much of Wisconsin's measured groundwater.

  • Silurian-Devonian aquifersmedian 340 mg/L across 615 samples at 438 sites: very hard.
  • Cambrian-Ordovician aquifer systemmedian 280 mg/L across 1,845 samples at 1,056 sites: very hard.
  • Sand and gravel aquifers (glaciated regions)median 120 mg/L across 3,634 samples at 1,672 sites: hard.

Together these systems account for 6,094 measured samples at 3,166 sites. Aquifer medians pool samples across a whole system and can mask local variation — see the national aquifer map for how these compare across states.

Trend

Hardness over time

1930s2020s310

Wisconsin's decade median moved from 310 mg/L in the 1930s to 125.5 in the 2020s. Over the series, the decade median peaked at 310 mg/L in the 1930s and bottomed at 64 in the 2010s. Decade medians reflect where and what agencies sampled in each era, not just changes in the water itself.

Scale

Where Wisconsin sits on the scale

On the USGS scale, Wisconsin's 110 mg/L is moderately hard — 6.4 grains per gallon, between the 60 and 120 mg/L soft and hard cutoffs.

SoftModerately hardHardVery hard60 · 3.5 gpg120 · 7.0 gpg180 · 10.5 gpg110 mg/L — Moderately hard
Harder than 43% of the 2,977 measured county medians.

Questions

Frequently asked questions

Is Wisconsin's water hard?
Wisconsin's median hardness is 110 mg/L as CaCO₃, "moderately hard" on the USGS scale and below the national county median of 140 mg/L. About 74% of residents in measured counties have hard-or-worse water.
Which county in Wisconsin has the hardest water?
Iowa County, with a median of 390 mg/L as CaCO₃ across 219 measurements.
Is well water harder than city water in Wisconsin?
Groundwater measures harder here — about 2.2× the surface water — so wells tend to run harder (groundwater 210 vs surface water 94.4 mg/L).
How do I find my exact hardness in Wisconsin?
Search your ZIP on the lookup tool, read your utility's Consumer Confidence Report, or test at home with a kit.
Is Wisconsin's water harder than the national average?
No. Wisconsin's median of 110 mg/L is below the national county median of 140 mg/L; it ranks #26 of the 50 states and D.C.

Compare

States with similar hardness

Two states measure closest to Wisconsin's 110 mg/L: District of Columbia at 113 mg/L and Kentucky at 120 mg/L. Wisconsin measures harder than 50% of states. Browse the full ranking on the statistics page.

More: hardness scale · check your address · national statistics · the national map.

By . Source: USGS/EPA Water Quality Portal — 33,134 Wisconsin measurements. Data last verified . Methodology.

Cite this page:Wisconsin Water Hardness by County.” Hard Water Map. Retrieved 2026-07-22, https://hardwatermap.com/water-hardness/wisconsin/