Skip to main content
💧 TapWaterData

Water Hardness in Washington

Across 227 measured cities — with 159 more covered by labeled county-level estimates — Washington's median tap water hardness is 41.4 mg/L (2.4 gpg): soft on the USGS scale. Below: every covered city, the state's hardest and softest water, and the geology that explains it.

Data updated July 6, 2026. Sources: utility-reported water quality data and USGS/EPA Water Quality Portal samples.

State Median
41.4
mg/L (2.4 gpg), measured cities
Measured Range
12.6-289.1
mg/L across measured cities
Measured Cities
227
utility-reported or computed values
County Estimates
159
41% of covered cities

Washington Cities by Hardness Category

Measured cities only — labeled county estimates never enter the category counts or the median.

CategoryRangeMeasured citiesShare
Soft0-60 mg/L14865.2%
Moderately hard60-120 mg/L5825.6%
Hard120-180 mg/L156.6%
Very hard>180 mg/L62.6%

Hardest and Softest Water in Washington

Measured values only; labeled county estimates and values under active dispute never rank.

Hardest water in Washington

  1. Omak 289.1 mg/L (16.9 gpg), very hard
  2. Pateros 281.3 mg/L (16.4 gpg), very hard
  3. Tonasket 235.7 mg/L (13.8 gpg), very hard
  4. Ephrata 230.3 mg/L (13.5 gpg), very hard
  5. Grandview 208.2 mg/L (12.2 gpg), very hard

Softest water in Washington

  1. Alderwood Manor 12.6 mg/L (0.7 gpg), soft
  2. Bothell East 12.6 mg/L (0.7 gpg), soft
  3. Bothell West 12.6 mg/L (0.7 gpg), soft
  4. Brier 12.6 mg/L (0.7 gpg), soft
  5. Lake Stickney 12.6 mg/L (0.7 gpg), soft

Every Covered City in Washington

All 386 covered Washington cities, sorted by population served. "County estimate" rows are labeled context values from USGS/EPA Water Quality Portal county sampling — they never enter the median above. City names link to each city's full water quality page.

CityHardness (mg/L)gpgCategoryData
Tukwila36.62.1SoftUtility-reported
Lake Forest Park30.31.8SoftUtility-reported
Bryn Mawr-Skyway34.82.0SoftUtility-reported
Burien33.21.9SoftUtility-reported
Boulevard Park30.91.8SoftUtility-reported
White Center30.91.8SoftUtility-reported
Shoreline30.81.8SoftUtility-reported
Seattle30.91.8SoftUtility-reported
Federal Way31.41.8SoftUtility-reported
Five Corners100.65.9Moderately hardUtility-reported
Hazel Dell100.65.9Moderately hardUtility-reported
Hockinson100.65.9Moderately hardUtility-reported
Orchards100.65.9Moderately hardUtility-reported
Redmond39.22.3SoftUtility-reported
Vancouver99.85.8Moderately hardUtility-reported
Bothell19.21.1SoftUtility-reported
Frederickson21.81.3SoftUtility-reported
Parkland21.81.3SoftUtility-reported
Minnehaha105.06.1Moderately hardUtility-reported
Alderton29.11.7SoftUtility-reported
Issaquah40.92.4SoftUtility-reported
Clover Creek21.81.3SoftUtility-reported
Midland21.81.3SoftUtility-reported
Spokane Valley131.07.7HardUtility-reported
Bonney Lake29.71.7SoftUtility-reported
Prairie Ridge29.71.7SoftUtility-reported
Puyallup29.11.7SoftUtility-reported
Kirkland34.22.0SoftUtility-reported
Graham21.81.3SoftUtility-reported
South Hill21.81.3SoftUtility-reported
Summit21.81.3SoftUtility-reported
Summit View21.81.3SoftUtility-reported
Waller21.81.3SoftUtility-reported
Orting21.81.3SoftUtility-reported
Tehaleh21.81.3SoftUtility-reported
Fircrest21.81.3SoftUtility-reported
Fife Heights21.81.3SoftUtility-reported
Prairie Heights21.81.3SoftUtility-reported
Yarrow Point32.21.9SoftUtility-reported
Tacoma21.81.3SoftUtility-reported
Auburn57.53.4SoftUtility-reported
Browns Point21.81.3SoftUtility-reported
Dash Point21.81.3SoftUtility-reported
McMillin21.81.3SoftUtility-reported
Ruston21.81.3SoftUtility-reported
University Place21.81.3SoftUtility-reported
Kent52.53.1SoftUtility-reported
Bellevue34.52.0SoftUtility-reported
Town and Country130.37.6HardUtility-reported
Beaux Arts Village34.92.0SoftUtility-reported
Clyde Hill34.92.0SoftUtility-reported
Hunts Point34.92.0SoftUtility-reported
Medina34.92.0SoftUtility-reported
Union Hill-Novelty Hill49.52.9SoftUtility-reported
Lynnwood15.40.9SoftUtility-reported
Airway Heights131.07.7HardUtility-reported
Spokane131.07.7HardUtility-reported
Four Lakes131.07.7HardUtility-reported
Renton49.02.9SoftUtility-reported
Mukilteo12.60.7SoftUtility-reported
Clearview15.80.9SoftUtility-reported
Maltby15.80.9SoftUtility-reported
Bothell West12.60.7SoftUtility-reported
Mill Creek12.60.7SoftUtility-reported
Mill Creek East12.60.7SoftUtility-reported
Alderwood Manor12.60.7SoftUtility-reported
Bothell East12.60.7SoftUtility-reported
Brier12.60.7SoftUtility-reported
Lake Stickney12.60.7SoftUtility-reported
Larch Way12.60.7SoftUtility-reported
Martha Lake12.60.7SoftUtility-reported
Meadowdale12.60.7SoftUtility-reported
North Lynnwood12.60.7SoftUtility-reported
Picnic Point12.60.7SoftUtility-reported
Des Moines47.82.8SoftUtility-reported
Lakeland North47.82.8SoftUtility-reported
Everett18.91.1SoftUtility-reported
Eastmont22.21.3SoftUtility-reported
Tanglewilde83.04.8Moderately hardUtility-reported
Sisco Heights35.82.1SoftUtility-reported
SeaTac64.13.8Moderately hardUtility-reported
Fern Prairie75.54.4Moderately hardUtility-reported
Battle Ground85.35.0Moderately hardUtility-reported
Cherry Grove85.35.0Moderately hardUtility-reported
Lewisville85.35.0Moderately hardUtility-reported
Venersborg85.35.0Moderately hardUtility-reported
Lake Cassidy35.82.1SoftUtility-reported
Ridgefield85.95.0Moderately hardUtility-reported
Port Orchard38.92.3SoftUtility-reported
Milton37.92.2SoftUtility-reported
Pacific38.92.3SoftUtility-reported
Woodland85.95.0Moderately hardUtility-reported
Fairwood53.33.1SoftUtility-reported
Lakeland South37.92.2SoftUtility-reported
Lake Morton-Berrydale52.13.0SoftUtility-reported
Amboy85.95.0Moderately hardUtility-reported
Barberton85.95.0Moderately hardUtility-reported
Brush Prairie85.95.0Moderately hardUtility-reported
Dollars Corner85.95.0Moderately hardUtility-reported
Duluth85.95.0Moderately hardUtility-reported
Felida85.95.0Moderately hardUtility-reported
La Center85.95.0Moderately hardUtility-reported
Lake Shore85.95.0Moderately hardUtility-reported
Meadow Glade85.95.0Moderately hardUtility-reported
Mount Vista85.95.0Moderately hardUtility-reported
Salmon Creek85.95.0Moderately hardUtility-reported
Yakima38.62.3SoftComputed from Ca+Mg
Kenmore25.11.5SoftUtility-reported
Bellingham29.21.7SoftUtility-reported
Marietta-Alderwood29.21.7SoftUtility-reported
Camas59.93.5SoftUtility-reported
Enetai48.92.9SoftUtility-reported
Tracyton48.92.9SoftUtility-reported
Lakewood72.44.2Moderately hardUtility-reported
Maple Heights-Lake Desire23.81.4SoftUtility-reported
Arlington28.61.7SoftCounty estimate
Normandy Park64.13.8Moderately hardUtility-reported
Lacey110.06.4Moderately hardUtility-reported
Bremerton38.92.3SoftUtility-reported
Kennewick96.15.6Moderately hardUtility-reported
Finley96.15.6Moderately hardUtility-reported
Olympia52.03.0SoftUtility-reported
Pasco268.515.7Very hardCounty estimate
Mount Vernon18.11.1SoftUtility-reported
Clear Lake18.11.1SoftUtility-reported
DuPont39.32.3SoftCounty estimate
Alger18.11.1SoftUtility-reported
Bay View18.11.1SoftUtility-reported
Big Lake18.11.1SoftUtility-reported
Burlington18.11.1SoftUtility-reported
Sedro-Woolley18.11.1SoftUtility-reported
Union Gap30.61.8SoftComputed from Ca+Mg
Maple Valley45.92.7SoftUtility-reported
Shadow Lake45.92.7SoftUtility-reported
Kitsap Lake38.92.3SoftUtility-reported
Sammamish62.43.6Moderately hardUtility-reported
Rocky Point38.92.3SoftUtility-reported
Covington59.23.5SoftUtility-reported
Marysville28.61.7SoftCounty estimate
Gleed30.61.8SoftComputed from Ca+Mg
Gorst38.92.3SoftUtility-reported
Navy Yard City38.92.3SoftUtility-reported
Snohomish35.82.1SoftUtility-reported
Steilacoom72.44.2Moderately hardUtility-reported
Ames Lake62.63.7Moderately hardUtility-reported
Three Lakes35.82.1SoftUtility-reported
Chain Lake35.82.1SoftUtility-reported
Richland89.35.2Moderately hardUtility-reported
Tumwater60.23.5Moderately hardUtility-reported
Longview127.07.4HardUtility-reported
Spanaway39.32.3SoftCounty estimate
Longview Heights127.07.4HardUtility-reported
Woodinville25.31.5SoftUtility-reported
Cottage Lake25.31.5SoftUtility-reported
Lochsloy35.82.1SoftUtility-reported
Arlington Heights35.82.1SoftUtility-reported
Bunk Foss35.82.1SoftUtility-reported
Canyon Creek35.82.1SoftUtility-reported
Cavalero35.82.1SoftUtility-reported
Granite Falls35.82.1SoftUtility-reported
Lake Bosworth35.82.1SoftUtility-reported
Lake Roesiger35.82.1SoftUtility-reported
Lake Stevens35.82.1SoftUtility-reported
Machias35.82.1SoftUtility-reported
Edmonds35.32.1SoftUtility-reported
Pullman115.06.7Moderately hardComputed from Ca+Mg
McChord AFB39.32.3SoftCounty estimate
Roy39.32.3SoftCounty estimate
Washougal40.22.4SoftUtility-reported
Black Diamond45.92.7SoftUtility-reported
North Puyallup93.25.5Moderately hardUtility-reported
Lake Holm45.92.7SoftUtility-reported
Ravensdale45.92.7SoftUtility-reported
Silverdale79.84.7Moderately hardUtility-reported
South Wenatchee80.34.7Moderately hardUtility-reported
Wenatchee80.34.7Moderately hardUtility-reported
Oak Harbor44.82.6SoftUtility-reported
East Wenatchee80.04.7Moderately hardUtility-reported
Liberty Lake22.91.3SoftCounty estimate
Chehalis2.40.1SoftCounty estimate
Lake Tapps95.35.6Moderately hardUtility-reported
Clarkston96.05.6Moderately hardCounty estimate
Walla Walla38.82.3SoftCounty estimate
Ahtanum56.73.3SoftComputed from Ca+Mg
Summitview56.73.3SoftComputed from Ca+Mg
Country Homes124.07.3HardUtility-reported
Greenacres22.91.3SoftCounty estimate
Manchester85.85.0Moderately hardCounty estimate
Hobart62.73.7Moderately hardCounty estimate
Centralia2.40.1SoftCounty estimate
Cheney55.23.2SoftComputed from Ca+Mg
Mead124.07.3HardUtility-reported
Green Bluff124.07.3HardUtility-reported
Mountlake Terrace14.30.8SoftUtility-reported
Shelton38.62.3SoftCounty estimate
Mercer Island39.42.3SoftUtility-reported
Asotin96.05.6Moderately hardCounty estimate
Sequim50.63.0SoftCounty estimate
Poulsbo66.63.9Moderately hardUtility-reported
Bainbridge Island70.14.1Moderately hardUtility-reported
Cathcart43.32.5SoftUtility-reported
Silver Firs43.32.5SoftUtility-reported
Fobes Hill43.32.5SoftUtility-reported
High Bridge43.32.5SoftUtility-reported
Wollochet45.92.7SoftUtility-reported
Lynden35.72.1SoftCounty estimate
Ellensburg59.53.5SoftUtility-reported
Gig Harbor45.92.7SoftUtility-reported
East Renton Highlands30.01.8SoftUtility-reported
Snoqualmie41.42.4SoftUtility-reported
West Richland33.11.9SoftUtility-reported
Aberdeen22.71.3SoftCounty estimate
Port Townsend59.93.5SoftUtility-reported
Enumclaw61.63.6Moderately hardUtility-reported
Sunnyside74.84.4Moderately hardCounty estimate
Esperance86.15.0Moderately hardUtility-reported
Woodway86.15.0Moderately hardUtility-reported
North Bend41.42.4SoftUtility-reported
Snoqualime41.42.4SoftUtility-reported
Yelm52.53.1SoftCounty estimate
Sunnyslope80.04.7Moderately hardUtility-reported
Hansville90.45.3Moderately hardUtility-reported
Indianola90.45.3Moderately hardUtility-reported
Kingston90.45.3Moderately hardUtility-reported
Port Gamble Tribal Community90.45.3Moderately hardUtility-reported
Sumner39.32.3SoftCounty estimate
Kelso15.60.9SoftCounty estimate
Newcastle27.41.6SoftUtility-reported
Selah146.78.6HardComputed from Ca+Mg
Rosedale45.92.7SoftUtility-reported
Stanwood28.61.7SoftCounty estimate
Hoquiam22.71.3SoftCounty estimate
Grandview208.212.2Very hardComputed from Ca+Mg
Raymond15.60.9SoftCounty estimate
Othello33.21.9SoftComputed from Ca+Mg
Ocean Park15.60.9SoftCounty estimate
Leavenworth14.70.9SoftCounty estimate
Marrowstone157.09.2HardUtility-reported
Port Hadlock-Irondale157.09.2HardUtility-reported
Duvall21.01.2SoftUtility-reported
Toppenish62.83.7Moderately hardComputed from Ca+Mg
Chelan21.41.3SoftComputed from Ca+Mg
Buckley39.32.3SoftCounty estimate
Ocean Shores22.71.3SoftCounty estimate
Terrace Heights88.15.2Moderately hardComputed from Ca+Mg
Kalama15.60.9SoftCounty estimate
Vashon62.73.7Moderately hardCounty estimate
Manson14.70.9SoftCounty estimate
Prosser74.84.4Moderately hardCounty estimate
Benton City74.84.4Moderately hardCounty estimate
Montesano22.71.3SoftCounty estimate
Medical Lake22.91.3SoftCounty estimate
Omak289.116.9Very hardComputed from Ca+Mg
Cle Elum44.12.6SoftCounty estimate
Mattawa168.09.8HardCounty estimate
Grayland15.60.9SoftCounty estimate
Westport22.71.3SoftCounty estimate
Belfair38.62.3SoftCounty estimate
Eastsound163.09.5HardCounty estimate
Newport70.54.1Moderately hardCounty estimate
Dallesport63.53.7Moderately hardCounty estimate
Castle Rock15.60.9SoftCounty estimate
Port Ludlow69.34.0Moderately hardUtility-reported
Brewster117.06.8Moderately hardCounty estimate
Suquamish85.85.0Moderately hardCounty estimate
Coupeville289.016.9Very hardCounty estimate
Ilwaco15.60.9SoftCounty estimate
Tonasket235.713.8Very hardComputed from Ca+Mg
Granger166.09.7HardCounty estimate
White Salmon63.53.7Moderately hardCounty estimate
Hoodsport38.62.3SoftCounty estimate
Napavine2.40.1SoftCounty estimate
Fox Island39.32.3SoftCounty estimate
Rochester52.53.1SoftCounty estimate
Everson35.72.1SoftCounty estimate
Nooksack35.72.1SoftCounty estimate
Eatonville39.32.3SoftCounty estimate
Colfax114.06.7Moderately hardCounty estimate
Monroe28.61.7SoftCounty estimate
Tenino52.53.1SoftCounty estimate
Friday Harbor163.09.5HardCounty estimate
Zillah166.09.7HardCounty estimate
Naches166.09.7HardCounty estimate
Algona57.23.4SoftUtility-reported
Royal City168.09.8HardCounty estimate
Dayton92.45.4Moderately hardComputed from Ca+Mg
Oroville117.06.8Moderately hardCounty estimate
Fall City62.73.7Moderately hardCounty estimate
Okanogan117.06.8Moderately hardCounty estimate
South Bend15.60.9SoftCounty estimate
Winlock2.40.1SoftCounty estimate
Rainier52.53.1SoftCounty estimate
Mccleary22.71.3SoftCounty estimate
Kettle Falls110.06.4Moderately hardCounty estimate
Chewelah74.44.3Moderately hardCounty estimate
Rock Island71.34.2Moderately hardCounty estimate
Carnation62.73.7Moderately hardCounty estimate
Mabton166.09.7HardCounty estimate
Stevenson37.52.2SoftComputed from Ca+Mg
Kittitas44.12.6SoftCounty estimate
Morton2.40.1SoftCounty estimate
Darrington28.61.7SoftCounty estimate
Allyn38.62.3SoftCounty estimate
Roslyn44.12.6SoftCounty estimate
Electric City168.09.8HardCounty estimate
Toledo2.40.1SoftCounty estimate
Onalaska2.40.1SoftCounty estimate
Clinton289.016.9Very hardCounty estimate
Cosmopolis22.71.3SoftCounty estimate
Waitsburg38.82.3SoftCounty estimate
Newman Lake22.91.3SoftCounty estimate
Bingen61.63.6Moderately hardCounty estimate
Cashmere176.410.3HardComputed from Ca+Mg
Sumas35.72.1SoftCounty estimate
Entiat14.70.9SoftCounty estimate
Ritzville251.014.7Very hardCounty estimate
Davenport149.08.7HardCounty estimate
Republic110.06.4Moderately hardCounty estimate
Cathlamet56.63.3SoftCounty estimate
Taholah22.71.3SoftCounty estimate
La Conner9.00.5SoftCounty estimate
Mossyrock2.40.1SoftCounty estimate
Bow9.00.5SoftCounty estimate
Pomeroy114.56.7Moderately hardCounty estimate
Point Roberts35.72.1SoftCounty estimate
Grand Coulee71.34.2Moderately hardCounty estimate
Langley289.016.9Very hardCounty estimate
Anderson Island39.32.3SoftCounty estimate
Coulee Dam117.06.8Moderately hardCounty estimate
Pacific Beach22.71.3SoftCounty estimate
Oakville22.71.3SoftCounty estimate
Harrah166.09.7HardCounty estimate
Neah Bay50.63.0SoftCounty estimate
Palouse114.06.7Moderately hardCounty estimate
Pateros281.316.4Very hardComputed from Ca+Mg
Waterville71.34.2Moderately hardCounty estimate
Ephrata230.313.5Very hardComputed from Ca+Mg
Camano Island289.016.9Very hardCounty estimate
Ashford39.32.3SoftCounty estimate
Wilkeson39.32.3SoftCounty estimate
North Bonneville61.63.6Moderately hardCounty estimate
Tekoa114.06.7Moderately hardCounty estimate
George149.68.8HardComputed from Ca+Mg
Twisp117.06.8Moderately hardCounty estimate
Chimacum25.41.5SoftCounty estimate
Union38.62.3SoftCounty estimate
Quinault22.71.3SoftCounty estimate
Vader2.40.1SoftCounty estimate
Buena166.09.7HardCounty estimate
St. John114.06.7Moderately hardCounty estimate
Tokeland15.60.9SoftCounty estimate
Yacolt61.23.6Moderately hardComputed from Ca+Mg
Cusick70.54.1Moderately hardCounty estimate
Malott117.06.8Moderately hardCounty estimate
Malaga14.70.9SoftCounty estimate
Colton114.06.7Moderately hardCounty estimate
Albion114.06.7Moderately hardCounty estimate
Bucoda52.53.1SoftCounty estimate
South Cle Elum19.51.1SoftComputed from Ca+Mg
Marshall22.91.3SoftCounty estimate
Prescott38.82.3SoftCounty estimate
Oakesdale114.06.7Moderately hardCounty estimate
Carson61.63.6Moderately hardCounty estimate
Riverside117.06.8Moderately hardCounty estimate
Ronald44.12.6SoftCounty estimate
Moses Lake168.09.8HardCounty estimate
Uniontown114.06.7Moderately hardCounty estimate
Ferndale35.72.1SoftCounty estimate
Bridgeport206.712.1Very hardComputed from Ca+Mg
Usk70.54.1Moderately hardCounty estimate
Quincy168.09.8HardCounty estimate
Wapato166.09.7HardCounty estimate
Peshastin14.70.9SoftCounty estimate
Orondo71.34.2Moderately hardCounty estimate
Nespelem117.06.8Moderately hardCounty estimate
Grapeview38.62.3SoftCounty estimate
Port Angeles50.63.0SoftCounty estimate
Freeland289.016.9Very hardCounty estimate
Lind251.014.7Very hardCounty estimate
Lopez Island163.09.5HardCounty estimate
Maple Falls35.72.1SoftCounty estimate
Mesa268.515.7Very hardCounty estimate
Packwood2.40.1SoftCounty estimate
Trout Lake63.53.7Moderately hardCounty estimate
Waverly22.91.3SoftCounty estimate
Winthrop117.06.8Moderately hardCounty estimate

Above 120 mg/L (7 gpg), scale is usually worth treating — see our water softener guide, or size a system with the hardness calculator & converter.

The Geology Behind Washington's Water Hardness

Washington sits in the Pacific maritime volcanic terrain region.

The Pacific Northwest, Alaska, and Hawaii share young volcanic bedrock - basalt and other igneous rock with little carbonate to dissolve - and most supplies come from heavy rainfall, snowmelt, or fast-recharging volcanic aquifers. Water simply does not stay in contact with soluble carbonate long enough to harden. That is why the USGS maps these states among the softest in the nation.

Source: USGS Water Science School - Hardness of Water

Washington Water Hardness FAQ

Does Washington have hard water?

On the whole, no — Washington's statewide median sits below the hard threshold, though some cities run harder. The median is 41.4 mg/L (2.4 gpg) — soft on the USGS scale, where anything above 120 mg/L (7 gpg) counts as hard. 21 of Washington's 227 measured cities fall in the hard or very hard bands (9%), so check your own city rather than the state average.

How hard is tap water in Washington?

Across the 227 Washington cities with measured values in our index, the median hardness is 41.4 mg/L (2.4 gpg) — soft on the USGS scale. Individual cities range from 12.6 to 289.1 mg/L, so check your own city rather than assuming the state number.

Which city in Washington has the hardest water?

Omak has the hardest measured tap water in our Washington index at 289.1 mg/L (16.9 gpg) — very hard on the USGS scale. Rankings use measured utility values only; labeled county estimates and values under active dispute are excluded.

Do I need a water softener in Washington?

21 of Washington's 227 measured cities (9%) fall in the hard or very hard bands — above 120 mg/L (7 gpg), the level where most water treatment professionals suggest considering an ion-exchange softener. Hardness varies utility to utility, so look up your own city's value before sizing equipment.

How do I find my city's exact water hardness?

Enter your ZIP code in our free lookup at tapwaterdata.com/zip to see the value we hold for your Washington city from utility-reported water quality data, check your water utility's annual Consumer Confidence Report (CCR), or use a home test-strip kit.

Stay Informed About Your Water Quality

Get EPA reports, filter recommendations, and safety alerts for your area.

Join 10,000+ people protecting their families. Unsubscribe anytime.