Skip to main content

Water Hardness in Colorado

Across 79 measured cities — with 173 more covered by labeled county-level estimates — Colorado's median tap water hardness is 96.0 mg/L (5.6 gpg): moderately hard on the USGS scale. Below: every covered city, the state's hardest and softest water, and the geology that explains it.

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

State Median
96.0
mg/L (5.6 gpg), measured cities
Measured Range
20.5-226.0
mg/L across measured cities
Measured Cities
79
utility-reported or computed values
County Estimates
173
69% of covered cities

What it costs to soften Colorado water

Water softener cost in Colorado at 5.6 gpg prices the equipment and the installation labour against the plumber wages published for Colorado, and labels every range as modelled or measured rather than leaving you to guess which it is.

Colorado · 5.61 grains per gallon

$951–$1,225

installed, midpoint $1,073 — a 24,000-grain unit, the size 4 people at this hardness need.

Salt and drain water over 10 years: $644–$1,273 — the 6,142,950 grains of hardness this household removes, at the national salt price and water rate whose sources are named below. Filter changes and Service contract are omitted rather than assumed.

Sized for 4 people regenerating every 7 days: 11,781 grains of capacity needed, rounded up to the next common residential size. The median of 79 measured Colorado cities in our hardness dataset. Modelled: the standard build band published for that state at the size this hardness calls for, equipment priced 2026-10-04 against the May 2025 reference period (OEWS M2025). Salt: the median retailer price of 3 retailers, read 2026-10-04, at a declared salt dose per regeneration. Drain water: about 50 gallons per regeneration from a government extension estimate read 2026-10-04, at the 2024 national average water and sewer rate from a government source read 2026-10-04.

Deciding whether it is worth it at all? Start from how much a water softener costs nationally — the same equipment, installation and ten-year ownership breakdown before any state wage adjustment is applied.

Colorado Cities by Hardness Category

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

CategoryRangeMeasured citiesShare
Soft0-60 mg/L2126.6%
Moderately hard60-120 mg/L4455.7%
Hard120-180 mg/L1012.7%
Very hard>180 mg/L45.1%

Hardest and Softest Water in Colorado

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

Hardest water in Colorado

  1. Eagle — 226.0 mg/L (13.2 gpg), very hard
  2. Wellington — 218.0 mg/L (12.8 gpg), very hard
  3. Brighton — 202.0 mg/L (11.8 gpg), very hard
  4. Englewood — 190.0 mg/L (11.1 gpg), very hard
  5. Pueblo West — 169.0 mg/L (9.9 gpg), hard

Softest water in Colorado

  1. Longmont — 20.5 mg/L (1.2 gpg), soft
  2. Loveland — 26.2 mg/L (1.5 gpg), soft
  3. Windsor — 30.8 mg/L (1.8 gpg), soft
  4. Louisville — 32.2 mg/L (1.9 gpg), soft
  5. Paragon Estates — 32.2 mg/L (1.9 gpg), soft

Every Covered City in Colorado

All 252 covered Colorado 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
Berkley96.05.6Moderately hardUtility-reported
Denver96.05.6Moderately hardUtility-reported
Four Square Mile96.05.6Moderately hardUtility-reported
Holly Hills96.05.6Moderately hardUtility-reported
Lakeside96.05.6Moderately hardUtility-reported
Lakewood96.05.6Moderately hardUtility-reported
Mountain View96.05.6Moderately hardUtility-reported
North Washington96.05.6Moderately hardUtility-reported
Sheridan96.05.6Moderately hardUtility-reported
Aurora110.06.4Moderately hardUtility-reported
Cimarron Hills35.82.1SoftUtility-reported
Colorado Springs35.82.1SoftUtility-reported
Stratmoor35.82.1SoftUtility-reported
Shaw Heights127.07.4HardUtility-reported
Sherrelwood127.07.4HardUtility-reported
Westminster127.07.4HardUtility-reported
Fort Collins42.82.5SoftUtility-reported
Laporte42.82.5SoftUtility-reported
Boulder41.42.4SoftUtility-reported
Thornton119.07.0Moderately hardUtility-reported
Arvada70.34.1Moderately hardUtility-reported
Pueblo139.08.1HardUtility-reported
Garden City36.62.1SoftUtility-reported
Greeley36.62.1SoftUtility-reported
Broomfield45.92.7SoftUtility-reported
Highlands Ranch92.55.4Moderately hardUtility-reported
Longmont20.51.2SoftUtility-reported
Castle Rock134.07.8HardUtility-reported
Loveland26.21.5SoftUtility-reported
Fruita328.019.2Very hardCounty estimate
Commerce City78.94.6Moderately hardUtility-reported
Derby78.94.6Moderately hardUtility-reported
Timnath41.42.4SoftUtility-reported
Parker74.54.4Moderately hardUtility-reported
Stepping Stone74.54.4Moderately hardUtility-reported
Englewood190.011.1Very hardUtility-reported
Brighton202.011.8Very hardUtility-reported
Vail96.05.6Moderately hardUtility-reported
Northglenn115.06.7Moderately hardUtility-reported
Palisade328.019.2Very hardCounty estimate
Cañon City132.07.7HardUtility-reported
Canon City132.07.7HardUtility-reported
Lincoln Park132.07.7HardUtility-reported
Clifton328.019.2Very hardCounty estimate
Erie33.41.9SoftUtility-reported
Aspen164.09.6HardCounty estimate
Cherry Creek97.65.7Moderately hardUtility-reported
Greenwood Village97.65.7Moderately hardUtility-reported
Littleton124.07.3HardCounty estimate
Pueblo West169.09.9HardUtility-reported
Golden85.75.0Moderately hardUtility-reported
West Pleasant View85.75.0Moderately hardUtility-reported
Lafayette91.15.3Moderately hardUtility-reported
Breckenridge83.04.8Moderately hardCounty estimate
Firestone415.024.3Very hardCounty estimate
Evans415.024.3Very hardCounty estimate
Delta410.024.0Very hardCounty estimate
Grand Junction110.06.4Moderately hardUtility-reported
Orchard Mesa110.06.4Moderately hardUtility-reported
Redlands110.06.4Moderately hardUtility-reported
Fountain140.08.2HardCounty estimate
Applewood96.25.6Moderately hardUtility-reported
Fairmount96.25.6Moderately hardUtility-reported
Windsor30.81.8SoftUtility-reported
Niwot52.03.0SoftUtility-reported
Louisville32.21.9SoftUtility-reported
Paragon Estates32.21.9SoftUtility-reported
Wheat Ridge130.07.6HardCounty estimate
Montrose111.06.5Moderately hardUtility-reported
Johnstown58.93.4SoftUtility-reported
Woodmoor104.06.1Moderately hardUtility-reported
Superior32.61.9SoftUtility-reported
Estes Park17.31.0SoftCounty estimate
Ordway454.526.6Very hardCounty estimate
Kittredge53.43.1SoftUtility-reported
Frederick415.024.3Very hardCounty estimate
Fort Lupton415.024.3Very hardCounty estimate
Black Hawk80.04.7Moderately hardCounty estimate
Sterling640.037.4Very hardCounty estimate
Acres Green92.45.4Moderately hardUtility-reported
Grand View Estates92.45.4Moderately hardUtility-reported
Lone Tree92.45.4Moderately hardUtility-reported
Meridian92.45.4Moderately hardUtility-reported
Lucerne415.024.3Very hardCounty estimate
The Pinery113.06.6Moderately hardUtility-reported
Fort Morgan540.031.6Very hardCounty estimate
Wellington218.012.8Very hardUtility-reported
Trinidad180.010.5HardCounty estimate
Alamosa68.14.0Moderately hardCounty estimate
Pagosa Springs53.03.1SoftCounty estimate
Sterling Ranch99.85.8Moderately hardUtility-reported
Steamboat Springs63.63.7Moderately hardUtility-reported
Indian Hills130.07.6HardCounty estimate
Morrison130.07.6HardCounty estimate
Glenwood Springs220.012.9Very hardCounty estimate
Gunnison72.24.2Moderately hardCounty estimate
Rifle270.515.8Very hardCounty estimate
Idaho Springs74.04.3Moderately hardCounty estimate
Cortez284.016.6Very hardCounty estimate
Milliken415.024.3Very hardCounty estimate
Falcon88.35.2Moderately hardUtility-reported
Redvale200.011.7Very hardCounty estimate
Peyton140.08.2HardCounty estimate
Silverthorne113.06.6Moderately hardUtility-reported
Severance415.024.3Very hardCounty estimate
Gypsum220.012.9Very hardCounty estimate
Berthoud39.22.3SoftUtility-reported
Leadville119.07.0Moderately hardCounty estimate
Sanford84.34.9Moderately hardCounty estimate
Winter Park31.71.9SoftCounty estimate
Eagle226.013.2Very hardUtility-reported
Manitou Springs140.08.2HardCounty estimate
Snowmass Village117.06.8Moderately hardUtility-reported
Eaton415.024.3Very hardCounty estimate
Salida143.08.4HardUtility-reported
Dacono415.024.3Very hardCounty estimate
Fraser31.71.9SoftCounty estimate
Brush540.031.6Very hardCounty estimate
New Castle220.012.9Very hardCounty estimate
Monument140.08.2HardCounty estimate
Monte Vista46.02.7SoftCounty estimate
Frisco83.04.8Moderately hardCounty estimate
Genesee80.94.7Moderately hardUtility-reported
Hayden113.06.6Moderately hardCounty estimate
Buena Vista60.03.5SoftCounty estimate
Central City80.04.7Moderately hardCounty estimate
Burlington186.010.9Very hardCounty estimate
Keenesburg415.024.3Very hardCounty estimate
Lyons46.02.7SoftCounty estimate
Silt220.012.9Very hardCounty estimate
Palmer Lake140.08.2HardCounty estimate
Hudson415.024.3Very hardCounty estimate
Dillon83.04.8Moderately hardCounty estimate
Walsenburg175.010.2HardCounty estimate
Austin410.024.0Very hardCounty estimate
Platteville415.024.3Very hardCounty estimate
Cripple Creek130.07.6HardCounty estimate
Meeker270.515.8Very hardCounty estimate
Paonia410.024.0Very hardCounty estimate
Crested Butte72.24.2Moderately hardCounty estimate
Nederland46.02.7SoftCounty estimate
Center57.33.4SoftCounty estimate
Silverton138.08.1HardCounty estimate
Akron402.523.5Very hardCounty estimate
Basalt98.05.7Moderately hardUtility-reported
Wray180.010.5HardCounty estimate
Rangely270.515.8Very hardCounty estimate
Bayfield200.011.7Very hardCounty estimate
Towaoc284.016.6Very hardCounty estimate
Colorado City336.019.6Very hardCounty estimate
Flagler186.010.9Very hardCounty estimate
Kersey415.024.3Very hardCounty estimate
Cedaredge410.024.0Very hardCounty estimate
Hotchkiss410.024.0Very hardCounty estimate
Strasburg242.014.2Very hardCounty estimate
Grand Lake31.71.9SoftCounty estimate
La Salle415.024.3Very hardCounty estimate
Creede30.71.8SoftCounty estimate
Conifer130.07.6HardCounty estimate
Kremmling31.71.9SoftCounty estimate
Del Norte46.02.7SoftCounty estimate
Ault415.024.3Very hardCounty estimate
Granby31.71.9SoftCounty estimate
Olathe332.019.4Very hardCounty estimate
Dolores114.56.7Moderately hardCounty estimate
Avondale336.019.6Very hardCounty estimate
Crestone57.33.4SoftCounty estimate
Poncha Springs60.03.5SoftCounty estimate
Georgetown74.04.3Moderately hardCounty estimate
Watkins276.016.1Very hardCounty estimate
Mancos81.44.8Moderately hardUtility-reported
Springfield270.015.8Very hardCounty estimate
Parachute220.012.9Very hardCounty estimate
Julesburg716.041.9Very hardCounty estimate
Minturn129.07.5HardCounty estimate
Fowler336.019.6Very hardCounty estimate
Gilcrest415.024.3Very hardCounty estimate
Log Lane Village540.031.6Very hardCounty estimate
Byers242.014.2Very hardCounty estimate
Ridgway228.013.3Very hardCounty estimate
Manassa59.03.5SoftCounty estimate
Stratton186.010.9Very hardCounty estimate
Oak Creek113.06.6Moderately hardCounty estimate
Wiggins540.031.6Very hardCounty estimate
Fairplay110.06.4Moderately hardCounty estimate
Nucla332.019.4Very hardCounty estimate
Dove Creek114.56.7Moderately hardCounty estimate
La Veta175.010.2HardCounty estimate
Pierce415.024.3Very hardCounty estimate
La Jara59.03.5SoftCounty estimate
Ignacio200.011.7Very hardCounty estimate
Calhan140.08.2HardCounty estimate
Rye175.010.2HardCounty estimate
Collbran328.019.2Very hardCounty estimate
Kiowa214.012.5Very hardCounty estimate
Lake City65.33.8Moderately hardCounty estimate
Naturita332.019.4Very hardCounty estimate
Rockvale140.08.2HardCounty estimate
Aguilar180.010.5HardCounty estimate
Victor130.07.6HardCounty estimate
Blanca84.34.9Moderately hardCounty estimate
Yampa113.06.6Moderately hardCounty estimate
Red Cliff129.07.5HardCounty estimate
Romeo59.03.5SoftCounty estimate
Woodland Park130.07.6HardCounty estimate
Fleming640.037.4Very hardCounty estimate
Beulah336.019.6Very hardCounty estimate
Empire74.04.3Moderately hardCounty estimate
Clark113.06.6Moderately hardCounty estimate
Carbondale164.09.6HardCounty estimate
Hesperus200.011.7Very hardCounty estimate
Boone336.019.6Very hardCounty estimate
Coal Creek140.08.2HardCounty estimate
Idledale130.07.6HardCounty estimate
Allenspark46.02.7SoftCounty estimate
Briggsdale415.024.3Very hardCounty estimate
Iliff640.037.4Very hardCounty estimate
Florence140.08.2HardCounty estimate
Nathrop60.03.5SoftCounty estimate
Elbert214.012.5Very hardCounty estimate
Hillrose540.031.6Very hardCounty estimate
Seibert186.010.9Very hardCounty estimate
Peetz640.037.4Very hardCounty estimate
Eckley180.010.5HardCounty estimate
Jamestown46.02.7SoftCounty estimate
Larkspur124.07.3HardCounty estimate
Eldorado Springs46.02.7SoftCounty estimate
Capulin59.03.5SoftCounty estimate
Merino640.037.4Very hardCounty estimate
Ward46.02.7SoftCounty estimate
Ouray228.013.3Very hardCounty estimate
Bethune186.010.9Very hardCounty estimate
Crook640.037.4Very hardCounty estimate
Silver Plume74.04.3Moderately hardCounty estimate
Vona186.010.9Very hardCounty estimate
Sedalia124.07.3HardCounty estimate
Branson180.010.5HardCounty estimate
Coaldale140.08.2HardCounty estimate
South Fork46.02.7SoftCounty estimate
Durango200.011.7Very hardCounty estimate
Telluride200.011.7Very hardCounty estimate
Placerville200.011.7Very hardCounty estimate
Chromo53.03.1SoftCounty estimate
Elizabeth214.012.5Very hardCounty estimate
Antonito59.03.5SoftCounty estimate
Deer Trail276.016.1Very hardCounty estimate
Evergreen74.04.3Moderately hardCounty estimate
Mead415.024.3Very hardCounty estimate
Norwood200.011.7Very hardCounty estimate
Penrose140.08.2HardCounty estimate
Twin Lakes119.07.0Moderately hardCounty estimate
Wiley722.042.2Very 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 Colorado's Water Hardness

Colorado sits in the Mountain West basins and desert Southwest region.

Mountain snowmelt starts out soft, but across the interior West it drains into closed basins floored with carbonate and evaporite sediments, and the arid climate evaporates water faster than rain can dilute it. Rivers like the Colorado accumulate dissolved calcium and magnesium along their whole length, so the USGS maps most basin-and-range and desert-Southwest supplies as hard to very hard. Towns high in the mountains that capture snowmelt directly are the region's soft-water exceptions.

Source: USGS Water Science School - Hardness of Water

Colorado Water Hardness FAQ

Does Colorado have hard water?

On the whole, no — Colorado's statewide median sits below the hard threshold, though some cities run harder. The median is 96.0 mg/L (5.6 gpg) — moderately hard on the USGS scale, where anything above 120 mg/L (7 gpg) counts as hard. 14 of Colorado's 79 measured cities fall in the hard or very hard bands (18%), so check your own city rather than the state average.

How hard is tap water in Colorado?

Across the 79 Colorado cities with measured values in our index, the median hardness is 96.0 mg/L (5.6 gpg) — moderately hard on the USGS scale. Individual cities range from 20.5 to 226.0 mg/L, so check your own city rather than assuming the state number.

Which city in Colorado has the hardest water?

Eagle has the hardest measured tap water in our Colorado index at 226.0 mg/L (13.2 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 Colorado?

14 of Colorado's 79 measured cities (18%) 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 Colorado city from utility-reported water quality data, check your water utility's annual Consumer Confidence Report (CCR), or use a home test-strip kit.

Need whole-house or professional water treatment?

For the problems a pitcher or under-sink filter cannot fix — scale, rust and black staining, sulfur smell, well contamination, or test results you cannot explain. Tell us what is happening and we will connect you with a local water-treatment professional.

TapWaterData may be compensated when you are connected with a water-treatment professional.

Get the Weekly Water Brief

One email a week on water testing, treatment, and what water-quality data means for your home.

One email a week. Unsubscribe anytime.