Kansas Water Hardness by County

Water in Kansas has a median hardness of 260 mg/L as CaCO₃ — "very hard" on the USGS scale — based on 103,475 measurements at 11,195 monitoring stations. Hamilton County has the state's hardest measured water (1500 mg/L); Scott County the softest (1.2). Rank: #9 of the 50 states and D.C.

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

Of Kansas's 105 measured counties, 93 very hard, 9 hard, 1 moderately hard, and 2 soft. The hardest are Hamilton County (1500 mg/L), Gove County (550), and Russell County (540). Scott County is the softest at 1.2 mg/L (soft).

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

Statewide, Kansas's median works out to 15.2 grains per gallon and ranks #9 of the 50 states and D.C. Across 103,475 measurements at 11,195 stations — 28,016 of them since 2000 — the middle 80% of readings fall between 130 and 540 mg/L. The public record runs from 1913 to 2023.

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

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

By county

Water hardness by county

The table lists all 105 measured Kansas counties, hardest first. Their medians span 1500 mg/L in Hamilton County to 1.2 in Scott County — a 1250× range.

County water hardness, hardest first — median mg/L as CaCO₃.
CountyMedianBandResultsSitesNewest
Hamilton County1500Very hard874952023
Gove County550Very hard214912016
Russell County540Very hard2,3901122016
Lincoln County520Very hard657642016
Edwards County510Very hard269632016
Clark County500Very hard198632015
Ford County485Very hard6461652016
Kearny County468Very hard291992016
Barber County440Very hard1,0261082016
Ellis County440Very hard1,7332012018
Finney County440Very hard2971082021
Rooks County440Very hard773692018
Osborne County430Very hard1,416602018
Dickinson County420Very hard1,582752018
Ness County420Very hard302722018
Smith County420Very hard192272016
Logan County415Very hard279782016
Comanche County410Very hard787422016
Trego County400Very hard1,0491252018
Meade County390Very hard6961092016
Rice County390Very hard1,1201882016
Barton County380Very hard1,1371272016
Ellsworth County370Very hard1,145722016
Marion County370Very hard872892017
Phillips County370Very hard836982018
Butler County360Very hard3,1306842017
Rush County360Very hard339882016
Saline County350Very hard1,610822016
Jewell County340Very hard434802016
Mitchell County340Very hard864862016
Ottawa County340Very hard1,8151492016
Cloud County330Very hard1,1811032016
McPherson County330Very hard3691612017
Graham County320Very hard100382016
Jackson County320Very hard7511022017
Chase County310Very hard1,430692018
Clay County310Very hard771572016
Cowley County300Very hard3,4061722017
Nemaha County290Very hard1,3191302016
Republic County290Very hard8121162018
Wabaunsee County290Very hard1,044652017
Decatur County280Very hard349672011
Morton County280Very hard137662014
Reno County278Very hard3,1503272023
Riley County272Very hard1,7741172016
Hodgeman County270Very hard2021102016
Norton County270Very hard562872016
Pottawatomie County270Very hard1,2371042023
Geary County260Very hard1,434612018
Lane County260Very hard92642015
Lyon County260Very hard1,439822016
Brown County250Very hard9931042017
Marshall County250Very hard1,606832016
Sedgwick County250Very hard5,8314932023
Seward County250Very hard136802015
Shawnee County250Very hard2,8831642023
Stevens County250Very hard131732015
Sumner County250Very hard1,8971802018
Wyandotte County250Very hard9631432018
Grant County240Very hard2201762010
Harper County240Very hard446552016
Johnson County240Very hard2,5711752019
Kiowa County240Very hard384782021
Rawlins County240Very hard119602014
Doniphan County230Very hard557742016
Greenwood County230Very hard1,525522016
Harvey County230Very hard5,2464332023
Leavenworth County230Very hard8681282023
Pawnee County230Very hard460992016
Stafford County230Very hard3341082017
Atchison County221Very hard845832017
Douglas County220Very hard1,7871772017
Jefferson County220Very hard1,096942016
Kingman County220Very hard1,003842017
Stanton County220Very hard2061402000
Bourbon County210Very hard1,206372017
Coffey County210Very hard862452017
Wichita County210Very hard131892021
Chautauqua County200Very hard733502017
Cheyenne County200Very hard414742016
Gray County200Very hard1621072021
Sheridan County200Very hard164852014
Washington County200Very hard811622017
Cherokee County190Very hard2,5282622016
Greeley County190Very hard87602015
Thomas County190Very hard129852015
Allen County180Very hard175642016
Anderson County180Very hard184362017
Elk County180Very hard176432017
Franklin County180Very hard964332017
Montgomery County180Very hard1,898842016
Neosho County180Very hard664662016
Wilson County180Very hard951412016
Haskell County170Hard94602010
Labette County170Hard1,151712016
Linn County170Hard886812017
Morris County170Hard557272017
Osage County170Hard1,200622017
Pratt County170Hard4751342015
Wallace County170Hard209812021
Miami County150Hard722482017
Sherman County150Hard147912005
Woodson County87Moderately hard188232016
Crawford County1.8Soft1,7711132016
Scott County1.2Soft1,197782021

ZIP codes

ZIP codes in Kansas

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

Hamilton County · 1500 mg/L · Very hard

678366785767878

Gove County · 550 mg/L · Very hard

6773667737677386775167752

Russell County · 540 mg/L · Very hard

676266763467648676496765867665

Lincoln County · 520 mg/L · Very hard

67418674236745567481

Edwards County · 510 mg/L · Very hard

67519675476755267563

Clark County · 500 mg/L · Very hard

678316784067865

Ford County · 485 mg/L · Very hard

678016783467842678436787667882

Kearny County · 468 mg/L · Very hard

6783867860

Barber County · 440 mg/L · Very hard

67057670616707067071671046713867143

Ellis County · 440 mg/L · Very hard

6760167627676376764067660676676767167674

Finney County · 440 mg/L · Very hard

678466785167868

Rooks County · 440 mg/L · Very hard

6763267657676636766967675

Osborne County · 430 mg/L · Very hard

674376747367485676236765167673

Dickinson County · 420 mg/L · Very hard

674106743167441674516748267492

Ness County · 420 mg/L · Very hard

67515675166751867521675606757267584

Smith County · 420 mg/L · Very hard

66932669516695266967674746762867638

Logan County · 415 mg/L · Very hard

677476774867764

Comanche County · 410 mg/L · Very hard

670296712767155

Trego County · 400 mg/L · Very hard

676316765667672

Meade County · 390 mg/L · Very hard

678446786467869

Rice County · 390 mg/L · Very hard

67427674576751267524675546757367579

Barton County · 380 mg/L · Very hard

6752567526675306754467564

Ellsworth County · 370 mg/L · Very hard

674396744467450674546745967490

Marion County · 370 mg/L · Very hard

6685166858668596686166866670536706367073674386747567483

Phillips County · 370 mg/L · Very hard

67621676396764467646676476766167664

Butler County · 360 mg/L · Very hard

66840668426700267010670126701767039670416704267072670746712367132671336714467154

Rush County · 360 mg/L · Very hard

675116751367520675486755367556675596756567575

Saline County · 350 mg/L · Very hard

674016741667425674426744867470

Jewell County · 340 mg/L · Very hard

6693666941669426694966956669636697067430

Mitchell County · 340 mg/L · Very hard

67420674466745267478

Ottawa County · 340 mg/L · Very hard

6742267436674676748067484

Cloud County · 330 mg/L · Very hard

669016693866948674176744567466

McPherson County · 330 mg/L · Very hard

671076742867443674566746067464674766749167546

Graham County · 320 mg/L · Very hard

67625676426765067659

Jackson County · 320 mg/L · Very hard

664166641866419664366644066509665166654066552

Chase County · 310 mg/L · Very hard

6684366845668506686266869

Clay County · 310 mg/L · Very hard

6743267447674586746867487

Cowley County · 300 mg/L · Very hard

670056700867019670236703867102671316714667156

Nemaha County · 290 mg/L · Very hard

664046640866415664176642866522665346653866550

Republic County · 290 mg/L · Very hard

669306693566939669406695966960669616696466966

Wabaunsee County · 290 mg/L · Very hard

66401664236643166501665076652666834

Decatur County · 280 mg/L · Very hard

67635676436765367749

Morton County · 280 mg/L · Very hard

679506795367954

Reno County · 278 mg/L · Very hard

67501675026750567510675146752267543675616756667568675706758167583

Riley County · 272 mg/L · Very hard

6644266449665026650366506665176653166554

Hodgeman County · 270 mg/L · Very hard

6784967854

Norton County · 270 mg/L · Very hard

67622676296764567654

Pottawatomie County · 270 mg/L · Very hard

664076642266432665206652166535665366654766549

Geary County · 260 mg/L · Very hard

6644166514

Lane County · 260 mg/L · Very hard

6783967850

Lyon County · 260 mg/L · Very hard

6680166830668336683566854668646686566868

Brown County · 250 mg/L · Very hard

6609466424664256643466439665156652766532

Marshall County · 250 mg/L · Very hard

6640366406664116641266427664386650866518665416654466548

Sedgwick County · 250 mg/L · Very hard

67001670166702567026670306703767050670526705567060670676710167108671476714967202672036720467205672066720767208672096721067211672126721367214672156721667217672186721967220672216722367226672276722867230672326723567260

Seward County · 250 mg/L · Very hard

6785967901

Shawnee County · 250 mg/L · Very hard

664026640966533665396654266546666036660466605666066660766608666096661066611666126661466615666166661766618666196662166622

Stevens County · 250 mg/L · Very hard

6795167952

Sumner County · 250 mg/L · Very hard

67004670136702267031670516710367105671066711067119671206714067152

Wyandotte County · 250 mg/L · Very hard

661016610266103661046610566106661096611166112661156611866160

Grant County · 240 mg/L · Very hard

67880

Harper County · 240 mg/L · Very hard

67003670096701867036670496705867150

Johnson County · 240 mg/L · Very hard

6601866021660306603166061660626608566202662036620466205662066620766208662096621066211662126621366214662156621666217662186621966220662216622366224662266622766251

Kiowa County · 240 mg/L · Very hard

67028670546705967109

Rawlins County · 240 mg/L · Very hard

67730677396774467745

Doniphan County · 230 mg/L · Very hard

660086601766024660356608766090

Greenwood County · 230 mg/L · Very hard

667776685366860668636687067045670476712267137

Harvey County · 230 mg/L · Very hard

67020670566706267114671176713567151

Leavenworth County · 230 mg/L · Very hard

6600766012660206602766043660486605266086

Pawnee County · 230 mg/L · Very hard

6752367529675506756767574

Stafford County · 230 mg/L · Very hard

67545675576757667578

Atchison County · 221 mg/L · Very hard

6600266016660236604166058

Douglas County · 220 mg/L · Very hard

6600666025660446604566046660476604966050

Jefferson County · 220 mg/L · Very hard

660546606066066660706607366088660976642966512

Kingman County · 220 mg/L · Very hard

67035670686711167112671186714267159

Stanton County · 220 mg/L · Very hard

6785567862

Bourbon County · 210 mg/L · Very hard

66701667166673866741667546676966779

Coffey County · 210 mg/L · Very hard

6683966852668566685766871

Wichita County · 210 mg/L · Very hard

6786167863

Chautauqua County · 200 mg/L · Very hard

6702467334673556736067361

Cheyenne County · 200 mg/L · Very hard

6773167756

Gray County · 200 mg/L · Very hard

67835678416785367867

Sheridan County · 200 mg/L · Very hard

6774067757

Washington County · 200 mg/L · Very hard

6693366937669436694466945669466695366955669586696266968

Cherokee County · 190 mg/L · Very hard

667136672566739667706677366778667816678267336

Greeley County · 190 mg/L · Very hard

67879

Thomas County · 190 mg/L · Very hard

6770167732677346774367753

Allen County · 180 mg/L · Very hard

66732667426674866749667516675566772

Anderson County · 180 mg/L · Very hard

660156603266033660396609166093

Elk County · 180 mg/L · Very hard

6734567346673496735267353

Franklin County · 180 mg/L · Very hard

6604266067660766607866079660806609266095

Montgomery County · 180 mg/L · Very hard

67301673336733567337673406734467347673516736367364

Neosho County · 180 mg/L · Very hard

667206673366740667716677566776

Wilson County · 180 mg/L · Very hard

6671066714667176673666757

Haskell County · 170 mg/L · Hard

678376787067877

Labette County · 170 mg/L · Hard

67330673326734167342673546735667357

Linn County · 170 mg/L · Hard

66010660146604066056660726607566767

Morris County · 170 mg/L · Hard

668386684666849668726687367449

Osage County · 170 mg/L · Hard

664136641466451665106652366524665286653766543

Pratt County · 170 mg/L · Hard

6702167065670666712467134

Wallace County · 170 mg/L · Hard

677586776167762

Miami County · 150 mg/L · Hard

660136602666053660646607166083

Sherman County · 150 mg/L · Hard

677336773567741

Woodson County · 87 mg/L · Moderately hard

667586676166783

Crawford County · 1.8 mg/L · Soft

66711667126672466734667356674366746667536675666760667626676366780

Scott County · 1.2 mg/L · Soft

67871

297 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

Kansas's groundwater measures harder than its surface water — 280 mg/L across 22,008 samples versus 260 across 79,007, about 1.1× harder. Wells draw from groundwater, so well owners in Kansas tend to see the harder number — 280 mg/L, very hard. Groundwater readings there run 137 to 600 mg/L across the middle 80% of samples. The comparison draws on 9,132 groundwater and 2,019 surface-water monitoring sites; 234 readings above 2,000 mg/L were logged but held out of the medians as outliers.

Groundwater (wells)

280 mg/L as CaCO₃ · 22,008 results at 9,132 stations.

Surface water (rivers, lakes)

260 mg/L as CaCO₃ · 79,007 results at 2,019 stations.

Groundwater measures about 1.1× harder than surface water here.

Chemistry

Water chemistry in Kansas

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

TDS

470 mg/L · n=6,776

470 mg/L — about 2.1× the national county median of 226, consistent with hard, mineral-rich water.

pH

7.9 pH · n=5,252

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

Alkalinity

197 mg/L as CaCO3 · n=28,932

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

Calcium : Magnesium

74 : 15 mg/L4.93 : 1 · n=29,317

Calcium is about 75% of Kansas's hardness (74 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 Kansas

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

  • Alluvial aquifersmedian 390 mg/L across 2,045 samples at 1,195 sites: very hard.
  • Ozark Plateaus aquifer systemmedian 300 mg/L across 241 samples at 100 sites: very hard.
  • Sand and gravel aquifers (glaciated regions)median 300 mg/L across 260 samples at 163 sites: very hard.

Together these systems account for 2,546 measured samples at 1,458 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

1930s2020s300

Kansas's decade median moved from 220 mg/L in the 1930s to 256.5 in the 2020s. Over the series, the decade median peaked at 300 mg/L in the 1940s and bottomed at 220 in the 1930s. Decade medians reflect where and what agencies sampled in each era, not just changes in the water itself.

Scale

Where Kansas sits on the scale

On the USGS scale, Kansas's 260 mg/L is very hard — 15.2 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 gpg260 mg/L — Very hard
Harder than 76% of the 2,977 measured county medians.

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

Questions

Frequently asked questions

Is Kansas's water hard?
Kansas's median hardness is 260 mg/L as CaCO₃, "very hard" on the USGS scale and 1.86× the national county median of 140 mg/L. About 98% of residents in measured counties have hard-or-worse water.
Which county in Kansas has the hardest water?
Hamilton County, with a median of 1500 mg/L as CaCO₃ across 874 measurements.
Is well water harder than city water in Kansas?
Groundwater measures harder here — about 1.1× the surface water — so wells tend to run harder (groundwater 280 vs surface water 260 mg/L).
How do I find my exact hardness in Kansas?
Search your ZIP on the lookup tool, read your utility's Consumer Confidence Report, or test at home with a kit.
Is Kansas's water harder than the national average?
Yes. Kansas's median of 260 mg/L is 1.86× the national county median of 140 mg/L, and Kansas ranks #9 of the 50 states and D.C.

Compare

States with similar hardness

Two states measure closest to Kansas's 260 mg/L: Oklahoma at 260 mg/L and Ohio at 270 mg/L. Kansas measures harder than 84% 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 — 103,475 Kansas measurements. Data last verified . Methodology.

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