Missouri Water Hardness by County

Water in Missouri has a median hardness of 196 mg/L as CaCO₃ — "very hard" on the USGS scale — based on 34,925 measurements at 5,442 monitoring stations. Clay County has the state's hardest measured water (514.5 mg/L); Pemiscot County the softest (62.3). Rank: #15 of the 50 states and D.C.

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

Of Missouri's 110 measured counties, 76 very hard, 29 hard, and 5 moderately hard. The hardest are Clay County (514.5 mg/L), Henry County (446), and Randolph County (430). Pemiscot County is the softest at 62.3 mg/L (moderately hard).

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

Statewide, Missouri's median works out to 11.4 grains per gallon and ranks #15 of the 50 states and D.C. Across 34,925 measurements at 5,442 stations — 17,042 of them since 2000 — the middle 80% of readings fall between 108 and 394 mg/L. The public record runs from 1901 to 2026.

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

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

By county

Water hardness by county

The table lists all 110 measured Missouri counties, hardest first. Their medians span 514.5 mg/L in Clay County to 62.3 in Pemiscot County — a 8.3× range. 5 more Missouri counties lack gate-passing data.

County water hardness, hardest first — median mg/L as CaCO₃.
CountyMedianBandResultsSitesNewest
Clay County514.5Very hard132452025
Henry County446Very hard435862026
Randolph County430Very hard499442025
Boone County400Very hard1,8811342025
St. Francois County321Very hard8031422026
Audrain County290Very hard39322013
Callaway County290Very hard173632025
Saline County280Very hard110762025
Ray County275Very hard45262014
Atchison County270Very hard38252007
Howard County270Very hard14132023
St. Clair County270Very hard85232024
Clinton County268.5Very hard24152013
Jackson County260Very hard1,5592442025
Buchanan County255Very hard416242023
Caldwell County254Very hard45142013
Clark County250Very hard369352023
St. Charles County250Very hard8472762026
Gasconade County240Very hard24222024
Washington County240Very hard395742026
Lafayette County237Very hard35282023
St. Louis County231.5Very hard1,7311942026
Perry County231Very hard263302024
Holt County230Very hard407442026
Daviess County226.5Very hard84242015
Camden County225Very hard279422025
St. Louis County225Very hard4922011
Benton County224.5Very hard54172022
Cass County220.5Very hard112332025
Miller County220Very hard98222025
Montgomery County219Very hard641222025
DeKalb County217Very hard46192014
Worth County216Very hard67112021
Harrison County215Very hard139272023
Moniteau County215Very hard59172022
Hickory County213.5Very hard76232025
Greene County213Very hard5571312023
Warren County211.5Very hard74272026
Jefferson County211Very hard7311422023
Johnson County210Very hard86492025
Nodaway County210Very hard83302013
Mercer County208Very hard177202024
Pulaski County208Very hard9602442023
Pettis County207.5Very hard98322017
Oregon County207Very hard545522026
Pike County206Very hard10092022
Putnam County206Very hard293272026
Polk County204Very hard185332025
Douglas County203Very hard178302025
Webster County201Very hard102232025
Cape Girardeau County200Very hard420422016
Howell County200Very hard54312025
Laclede County200Very hard90232024
Lewis County200Very hard203352025
Morgan County200Very hard35122016
Osage County200Very hard29162004
Ozark County200Very hard367222023
Platte County199Very hard326362023
Adair County196.5Very hard48132025
Macon County196.5Very hard227562026
Wright County195Very hard26152014
Andrew County191Very hard147192018
Dallas County190.5Very hard486492025
Livingston County188Very hard599302025
Dade County187Very hard111292020
Bates County186Very hard270272023
Knox County186Very hard3292024
Marion County186Very hard247182024
Lawrence County185Very hard310732025
Lincoln County185Very hard342282025
Crawford County183Very hard633502023
Jasper County183Very hard1,7811842026
Maries County183Very hard53152011
Sullivan County182Very hard413302023
Dent County180Very hard166372023
Stoddard County180Very hard168622017
Phelps County179Hard457822025
Cooper County176Hard278312023
Grundy County176Hard158412023
Shelby County175Hard1852022
Iron County174Hard272672025
Christian County172.5Hard616632023
Carter County170Hard180242021
Shannon County170Hard309752023
Texas County169.5Hard130382025
Ripley County160Hard241192023
Linn County157Hard123342025
Newton County157Hard6391202026
Mississippi County156Hard96312019
Barton County153Hard309652025
Chariton County152Hard417462025
Barry County150Hard567922025
Scott County149Hard48352019
Cedar County143Hard162242021
Cole County140Hard268282023
Franklin County140Hard398742023
McDonald County140Hard1,109482026
Stone County138Hard428242023
Madison County137Hard385602025
Dunklin County136Hard251432023
Reynolds County136Hard9571252025
New Madrid County130Hard233562023
Vernon County130Hard315672022
Butler County128.5Hard174382023
Ralls County120Hard20052014
Bollinger County119Moderately hard93132023
Taney County116Moderately hard716402023
Wayne County113Moderately hard236162025
Ste. Genevieve County65.5Moderately hard144292025
Pemiscot County62.3Moderately hard79352018
3 additional results from sites without county attribution (not shown).

ZIP codes

ZIP codes in Missouri

The ZIP codes below are grouped by the Missouri 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.

Clay County · 514.5 mg/L · Very hard

640246404864060640686407264089641166411764118641196415564156641576415864161641656416664167

Henry County · 446 mg/L · Very hard

64726647356474064770647886532365360

Randolph County · 430 mg/L · Very hard

6523965243652446525765259652606527065278

Boone County · 400 mg/L · Very hard

6501065039652016520265203652156521665255652566527965284

St. Francois County · 321 mg/L · Very hard

6303663087636016362463628636376364063653

Audrain County · 290 mg/L · Very hard

633456335263382652326524065264652656528065285

Callaway County · 290 mg/L · Very hard

63388650436505965063650676507765080652316525165262

Saline County · 280 mg/L · Very hard

65320653216532765330653396534065344653476534965351

Ray County · 275 mg/L · Very hard

64017640356403664062640776408464085

Atchison County · 270 mg/L · Very hard

6444664482644916449664498

Howard County · 270 mg/L · Very hard

6523065248652506525465274

St. Clair County · 270 mg/L · Very hard

647246473864763647766478064781

Clinton County · 268.5 mg/L · Very hard

644546446564477644906449264493

Jackson County · 260 mg/L · Very hard

6401464015640166402964030640346405064052640536405464055640566405764058640636406464065640666407064075640816408264086640886410164102641056410664108641096411064111641126411364114641206412364124641256412664127641286412964130641316413264133641346413664137641386413964145641466414764149

Buchanan County · 255 mg/L · Very hard

64401644406444364448644846450164503645046450664507

Caldwell County · 254 mg/L · Very hard

64624646256463764644646496465064671

Clark County · 250 mg/L · Very hard

63430634456345363465634666347263474

St. Charles County · 250 mg/L · Very hard

6330163303633046333263341633486336563366633676336863373633766338563386

Gasconade County · 240 mg/L · Very hard

6309165014650416506165066

Washington County · 240 mg/L · Very hard

63030630716362263626636306363163648636606366463674

Lafayette County · 237 mg/L · Very hard

640016401164020640216402264037640676407164074640766409664097

St. Louis County · 231.5 mg/L · Very hard

63005630116301763021630256303163033630346303863040630426304363044630456307463088631056311463117631196312163122631236312463125631266312763128631296313063131631326313363134631356313663137631386314063141631436314463146

Perry County · 231 mg/L · Very hard

637326374663748637706377563783

Holt County · 230 mg/L · Very hard

6443764451644666447064473

Daviess County · 226.5 mg/L · Very hard

6462064636646406464764648646546467064689

Camden County · 225 mg/L · Very hard

65020650496505265065650796532465567655916578665787

St. Louis County · 225 mg/L · Very hard

63101631026310363104631066310763108631096311063111631126311363115631166311863120631396314763155

Benton County · 224.5 mg/L · Very hard

6532565326653386534565355

Cass County · 220.5 mg/L · Very hard

64012640786408064083640906470164725647346473964742647436474664747

Miller County · 220 mg/L · Very hard

650176502665032650476506465075650826508365486

Montgomery County · 219 mg/L · Very hard

633336335063361633636338465069

DeKalb County · 217 mg/L · Very hard

644226442964430644696447464497

Worth County · 216 mg/L · Very hard

6442064441644566448664499

Harrison County · 215 mg/L · Very hard

6442464426644426445864467644716448164642

Moniteau County · 215 mg/L · Very hard

65018650256504665050650746508165287

Hickory County · 213.5 mg/L · Very hard

6563465650656686572465732657356577465779

Greene County · 213 mg/L · Very hard

656046561265619656486573865742657576577065781658016580265803658046580665807658096581065897

Warren County · 211.5 mg/L · Very hard

633516335763380633816338363390

Jefferson County · 211 mg/L · Very hard

63010630126301663019630206302363026630286304763048630496305063051630526305363070

Johnson County · 210 mg/L · Very hard

6401964040640616409364733647616530565336

Nodaway County · 210 mg/L · Very hard

644236442864431644326443364434644456445564457644616446864475644766447964487

Mercer County · 208 mg/L · Very hard

646326466164673

Pulaski County · 208 mg/L · Very hard

6545265457654616547365534655566558365584

Pettis County · 207.5 mg/L · Very hard

65301653326533365334653356533765350

Oregon County · 207 mg/L · Very hard

6560665690656926577865791

Pike County · 206 mg/L · Very hard

633306333463336633396334463353633596343363441

Putnam County · 206 mg/L · Very hard

6355163565635676465564672

Polk County · 204 mg/L · Very hard

65601656136561765640656496566365674657106572565727

Douglas County · 203 mg/L · Very hard

6560865638657026575565768

Webster County · 201 mg/L · Very hard

65652657066571365746

Cape Girardeau County · 200 mg/L · Very hard

6370163703637396374363744637456374763755637666376963785

Howell County · 200 mg/L · Very hard

6554865688657756577765788657896579065793

Laclede County · 200 mg/L · Very hard

6546365470655366563265722

Lewis County · 200 mg/L · Very hard

6343563438634406344763448634526345763473

Morgan County · 200 mg/L · Very hard

6501165034650376507265078650846532965354

Osage County · 200 mg/L · Very hard

6501665024650356504865051650546506265085

Ozark County · 200 mg/L · Very hard

65609656186562665637656556566665676657156572965741657606576165762657666577365784

Platte County · 199 mg/L · Very hard

6401864028640796409264098641506415164152641536415464163641646443964444

Adair County · 196.5 mg/L · Very hard

635016353363540635446354663559

Macon County · 196.5 mg/L · Very hard

63431635306353263534635386353963549635526355865247

Wright County · 195 mg/L · Very hard

65543656606566265667657046571165717

Andrew County · 191 mg/L · Very hard

64421644276443664449644596448064483644856449464505

Dallas County · 190.5 mg/L · Very hard

65590656226564465685657646576765783

Livingston County · 188 mg/L · Very hard

64601646356463864656646646468664688

Dade County · 187 mg/L · Very hard

656036563565646656616568265752

Bates County · 186 mg/L · Very hard

647206472264723647306474564779

Knox County · 186 mg/L · Very hard

63446634586346063531635376354763563

Marion County · 186 mg/L · Very hard

634016345463456634616346363471

Lawrence County · 185 mg/L · Very hard

648486487365654656646570565707657126572365756

Lincoln County · 185 mg/L · Very hard

633436334763349633626336963377633796338763389

Crawford County · 183 mg/L · Very hard

654416544665449654536545665535655656556665586

Jasper County · 183 mg/L · Very hard

647556480164830648326483364834648356483664841648496485564857648596486264870

Maries County · 183 mg/L · Very hard

65001650136505865443654596558065582

Sullivan County · 182 mg/L · Very hard

63545635566356064630646456464664667

Dent County · 180 mg/L · Very hard

65440655016554165560

Stoddard County · 180 mg/L · Very hard

63730637356373863822638256384163846638506393663960

Phelps County · 179 mg/L · Hard

65401654096543665462655296555065559

Cooper County · 176 mg/L · Hard

650686523365237652766532265348

Grundy County · 176 mg/L · Hard

64641646526467964683

Shelby County · 175 mg/L · Hard

63434634376343963450634516346863469

Iron County · 174 mg/L · Hard

636206362163623636366365063656636636367565439

Christian County · 172.5 mg/L · Hard

65610656206562965630656316565765669657146572065721657286575365754

Carter County · 170 mg/L · Hard

63937639416394363965

Shannon County · 170 mg/L · Hard

6362965438654666547965588

Texas County · 169.5 mg/L · Hard

6544465464654686548365484655426555265555655576556465570655716558965689

Ripley County · 160 mg/L · Hard

6393563939639426395363955

Linn County · 157 mg/L · Hard

6355763566646286463164651646536465964674

Newton County · 157 mg/L · Hard

6480464840648426484464850648586486564866

Mississippi County · 156 mg/L · Hard

6382063823638346384563882

Barton County · 153 mg/L · Hard

64748647596476264769

Chariton County · 152 mg/L · Hard

646586466064676646816523665246652616528165286

Barry County · 150 mg/L · Hard

648746560565623656256564165647656586570865734657456576965772

Scott County · 149 mg/L · Hard

6373663740637426375863767637716377463780637846380163824

Cedar County · 143 mg/L · Hard

647446475665785

Cole County · 140 mg/L · Hard

650236504065053650766510165109

Franklin County · 140 mg/L · Hard

6301363014630156303763039630416305563056630606306163068630696307263073630776307963080630846308963090

McDonald County · 140 mg/L · Hard

64831648436484764854648566486164863648676486865730

Stone County · 138 mg/L · Hard

656116562465633656566567565681656866573765747

Madison County · 137 mg/L · Hard

6364563655

Dunklin County · 136 mg/L · Hard

638216382963837638476384963852638556385763863638766388063933

Reynolds County · 136 mg/L · Hard

6362563633636386365463665

New Madrid County · 130 mg/L · Hard

63828638336384863860638626386663867638686386963870638736387463878

Vernon County · 130 mg/L · Hard

647286474164750647526476564767647716477264778647836478464790

Butler County · 128.5 mg/L · Hard

63901639326394063945639546396163962

Ralls County · 120 mg/L · Hard

63436634596346263467

Bollinger County · 119 mg/L · Moderately hard

6366263750637516376063764637816378263787

Taney County · 116 mg/L · Moderately hard

656146561665627656536567265679656806572665731657336573965740657446575965771

Wayne County · 113 mg/L · Moderately hard

6376363934639446395063951639526395663957639646396663967

Ste. Genevieve County · 65.5 mg/L · Moderately hard

636276367063673

Pemiscot County · 62.3 mg/L · Moderately hard

638266382763830638396384063851638536387763879

362 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

Missouri's groundwater measures harder than its surface water — 312 mg/L across 6,104 samples versus 184 across 28,671, about 1.7× harder. Wells draw from groundwater, so well owners in Missouri tend to see the harder number — 312 mg/L, very hard. Groundwater readings there run 140 to 601.6 mg/L across the middle 80% of samples. The comparison draws on 3,055 groundwater and 2,341 surface-water monitoring sites; 175 readings above 2,000 mg/L were logged but held out of the medians as outliers.

Groundwater (wells)

312 mg/L as CaCO₃ · 6,104 results at 3,055 stations.

Surface water (rivers, lakes)

184 mg/L as CaCO₃ · 28,671 results at 2,341 stations.

Groundwater measures about 1.7× harder than surface water here.

Chemistry

Water chemistry in Missouri

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

TDS

216 mg/L · n=7,773

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

pH

7.8 pH · n=17,423

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

Alkalinity

160 mg/L as CaCO3 · n=19,756

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

Calcium : Magnesium

54.3 : 15 mg/L3.62 : 1 · n=19,615

Calcium is about 69% of Missouri's hardness (54.3 mg/L Ca to 15 mg/L Mg), a little more calcium-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 Missouri

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

  • Alluvial aquifersmedian 429 mg/L across 2,128 samples at 361 sites: very hard.
  • Sand and gravel aquifers (glaciated regions)median 329.5 mg/L across 316 samples at 231 sites: very hard.
  • Mississippian aquifersmedian 291 mg/L across 391 samples at 188 sites: very hard.

Together these systems account for 2,835 measured samples at 780 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

1930s2020s270

Missouri's decade median moved from 270 mg/L in the 1930s to 204 in the 2020s. Over the series, the decade median peaked at 270 mg/L in the 1930s and bottomed at 180 in the 1970s. Decade medians reflect where and what agencies sampled in each era, not just changes in the water itself.

Scale

Where Missouri sits on the scale

On the USGS scale, Missouri's 196 mg/L is very hard — 11.4 grains per gallon, well above the 180 mg/L very-hard cutoff — among the hardest water measured in the US.

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

At 196 mg/L (11.4 gpg), water-softener owners in Missouri typically set their unit to this hardness — settings calculator.

Questions

Frequently asked questions

Is Missouri's water hard?
Missouri's median hardness is 196 mg/L as CaCO₃, "very hard" on the USGS scale and 1.4× the national county median of 140 mg/L. About 98% of residents in measured counties have hard-or-worse water.
Which county in Missouri has the hardest water?
Clay County, with a median of 514.5 mg/L as CaCO₃ across 132 measurements. Even the softest, Pemiscot County at 62.3 mg/L, is still "moderately hard" on the USGS scale.
Is well water harder than city water in Missouri?
Groundwater measures harder here — about 1.7× the surface water — so wells tend to run harder (groundwater 312 vs surface water 184 mg/L).
How do I find my exact hardness in Missouri?
Search your ZIP on the lookup tool, read your utility's Consumer Confidence Report, or test at home with a kit.
Is Missouri's water harder than the national average?
Yes. Missouri's median of 196 mg/L is 1.4× the national county median of 140 mg/L, and Missouri ranks #15 of the 50 states and D.C.

Compare

States with similar hardness

Two states measure closest to Missouri's 196 mg/L: Texas at 200 mg/L and New Mexico at 207 mg/L. Missouri measures harder than 72% 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 — 34,925 Missouri measurements. Data last verified . Methodology.

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