Water hardness in Wisconsin
Wisconsin has a median ambient water hardness of 110 mg/L, which is 6.4 grains per gallon and classes as moderately hard. That is the middle of 33,118 samples across 72 counties.
This is ambient water, not tap water. These figures come from samples taken from wells, streams and springs by USGS, EPA and state agencies. Municipal utilities treat, blend and sometimes soften water before it reaches a tap, so a city supply can be considerably softer than the ground beneath it. Treat this as a good guide for a private well and an approximate one for city water. Your utility's annual water quality report gives the real number for a municipal tap, and a test strip gives it for yours.
Every monitored county in Wisconsin
Ranked hardest first. The middle 50% column shows how much the samples within a county vary, which matters more than the median where a county spans two geologies.
| County | mg/L | gpg | Class | Middle 50% | Samples |
|---|---|---|---|---|---|
| Iowa County | 390 | 22.8 | Very hard | 310 to 410 | 219 |
| Calumet County | 375 | 21.9 | Very hard | 290 to 490 | 72 |
| Lafayette County | 350 | 20.4 | Very hard | 300 to 460 | 139 |
| Kewaunee County | 340 | 19.9 | Very hard | 308 to 380 | 115 |
| Ozaukee County | 340 | 19.9 | Very hard | 300 to 390 | 147 |
| Dodge County | 330 | 19.3 | Very hard | 290 to 390 | 205 |
| Fond du Lac County | 330 | 19.3 | Very hard | 280 to 400 | 211 |
| Washington County | 320 | 18.7 | Very hard | 240 to 370 | 420 |
| Sheboygan County | 317 | 18.5 | Very hard | 250 to 353 | 478 |
| Rock County | 316 | 18.5 | Very hard | 290 to 340 | 215 |
| Green County | 310 | 18.1 | Very hard | 300 to 330 | 145 |
| Jefferson County | 310 | 18.1 | Very hard | 260 to 340 | 189 |
| Manitowoc County | 310 | 18.1 | Very hard | 220 to 350 | 401 |
| Door County | 300 | 17.5 | Very hard | 230 to 370 | 95 |
| Grant County | 300 | 17.5 | Very hard | 110 to 360 | 510 |
| Columbia County | 280 | 16.4 | Very hard | 250 to 340 | 219 |
| Racine County | 275 | 16.1 | Very hard | 230 to 376 | 396 |
| Waukesha County | 275 | 16.1 | Very hard | 250 to 360 | 873 |
| Crawford County | 270 | 15.8 | Very hard | 255 to 300 | 139 |
| Richland County | 260 | 15.2 | Very hard | 240 to 270 | 55 |
| Walworth County | 257 | 15 | Very hard | 230 to 310 | 757 |
| Vernon County | 250 | 14.6 | Very hard | 230 to 260 | 295 |
| Outagamie County | 243 | 14.2 | Very hard | 190 to 352 | 306 |
| Kenosha County | 238 | 13.9 | Very hard | 218 to 310 | 195 |
| Pierce County | 230 | 13.4 | Very hard | 190 to 280 | 206 |
| Green Lake County | 222 | 13 | Very hard | 180 to 260 | 127 |
| Milwaukee County | 219 | 12.8 | Very hard | 130 to 320 | 1,892 |
| Waupaca County | 217 | 12.7 | Very hard | 170 to 260 | 246 |
| Brown County | 198 | 11.6 | Very hard | 170 to 299 | 1,371 |
| Marquette County | 191 | 11.2 | Very hard | 162 to 252 | 77 |
| Winnebago County | 190 | 11.1 | Very hard | 170 to 310 | 254 |
| Sauk County | 185 | 10.8 | Very hard | 100 to 270 | 184 |
| Buffalo County | 180 | 10.5 | Hard | 140 to 220 | 177 |
| Waushara County | 180 | 10.5 | Hard | 143 to 210 | 193 |
| St. Croix County | 178 | 10.4 | Hard | 120 to 200 | 471 |
| Adams County | 160 | 9.3 | Hard | 110 to 180 | 69 |
| Oconto County | 160 | 9.3 | Hard | 140 to 200 | 248 |
| La Crosse County | 150 | 8.8 | Hard | 58 to 260 | 280 |
| Shawano County | 143 | 8.4 | Hard | 81 to 192 | 936 |
| Menominee County | 140 | 8.2 | Hard | 108 to 172 | 832 |
| Marinette County | 122 | 7.1 | Hard | 110 to 140 | 599 |
| Monroe County | 120 | 7 | Moderately hard | 78 to 210 | 58 |
| Portage County | 120 | 7 | Moderately hard | 56 to 214 | 730 |
| Dunn County | 110 | 6.4 | Moderately hard | 91 to 180 | 232 |
| Forest County | 110 | 6.4 | Moderately hard | 67 to 140 | 531 |
| Langlade County | 110 | 6.4 | Moderately hard | 84 to 130 | 273 |
| Polk County | 95 | 5.5 | Moderately hard | 79 to 160 | 650 |
| Florence County | 92 | 5.4 | Moderately hard | 67 to 119 | 894 |
| Taylor County | 85 | 5 | Moderately hard | 35 to 130 | 26 |
| Wood County | 79 | 4.6 | Moderately hard | 50 to 150 | 375 |
| Washburn County | 75 | 4.4 | Moderately hard | 60 to 86 | 114 |
| Clark County | 74 | 4.3 | Moderately hard | 53 to 100 | 211 |
| Barron County | 72 | 4.2 | Moderately hard | 59 to 89 | 171 |
| Burnett County | 68 | 4 | Moderately hard | 58 to 81 | 366 |
| Trempealeau County | 68 | 4 | Moderately hard | 53 to 135 | 311 |
| Pepin County | 63 | 3.7 | Moderately hard | 53 to 76 | 316 |
| Ashland County | 62 | 3.6 | Moderately hard | 54 to 76 | 4,485 |
| Juneau County | 59 | 3.4 | Soft | 37 to 79 | 91 |
| Dane County | 58 | 3.4 | Soft | 27 to 300 | 1,900 |
| Eau Claire County | 57 | 3.3 | Soft | 34 to 77 | 220 |
| Iron County | 56 | 3.3 | Soft | 50 to 70 | 504 |
| Sawyer County | 54 | 3.2 | Soft | 33 to 73 | 118 |
| Marathon County | 51 | 3 | Soft | 41 to 71 | 133 |
| Chippewa County | 46 | 2.7 | Soft | 34 to 60 | 450 |
| Rusk County | 46 | 2.7 | Soft | 27 to 77 | 148 |
| Price County | 45 | 2.6 | Soft | 37 to 58 | 64 |
| Jackson County | 40 | 2.3 | Soft | 29 to 54 | 232 |
| Vilas County | 39 | 2.3 | Soft | 21 to 46 | 1,805 |
| Oneida County | 35 | 2 | Soft | 29 to 47 | 171 |
| Bayfield County | 24 | 1.4 | Soft | 19 to 42 | 920 |
| Douglas County | 20 | 1.2 | Soft | 9 to 71 | 1,328 |
| Lincoln County | 14 | 0.8 | Soft | 7 to 41 | 333 |
Source: Water Quality Portal (USGS, EPA and state agencies), waterqualitydata.us, retrieved 2026-09-19. 2,904,346 samples across 3,110 counties.
What this means for a household in Wisconsin
At 6.4 grains per gallon, a family of four would need a softener of about 16,000 grains to regenerate roughly weekly, using around 264 lb of salt a year. Size it for your own household.
72 of these counties include well samples, so the figures are a reasonable guide for private well water there. Municipal supplies in the same counties may be softer, because utilities often blend or treat.
Hardness follows geology rather than borders. Where a county sits on limestone or dolomite the water is hard; on granite, basalt or sandstone it is soft. That is why neighbouring counties in this table can differ by a factor of several.