Window Washing Guide
GUIDE / WATER ATLAS / COLORADO
WATER ATLAS · MOUNTAIN WEST

Water hardness in Colorado

PUBLISHED RANGE
34–198 mg/L
2–11.6 grains/gal
BANDS SPANNED
Soft → Very Hard
DOMINANT SOURCE
Denver Water reservoir system (Dillon, Williams Fork, Cheesman), Poudre River (Fort Collins), Arkansas/Homestake (Colorado Springs), Colorado River + groundwater (Western Slope)

Denver Water's tap runs soft to moderately hard as it blends Dillon and Williams Fork high-altitude reservoir water with South Platte intake. Boulder publishes a soft figure and Fort Collins calls its own water naturally soft, while Aurora reaches the hard band. Colorado Springs and the Western Slope (Grand Junction) run their own sources. City by city, the Front Range is a patchwork.

HOW IT BREAKS DOWNsoft (Boulder); moderately hard (Denver); hard (Aurora); naturally soft by the utility's own description (Fort Collins); 1 of 5 covered cities publishes no figure

Front Range water chemistry varies more dramatically between cities thirty miles apart than most regional markets vary across a thousand miles. The Denver-Boulder corridor is comfortable to work in. Colorado Springs requires a stronger acid bottle in the truck. The Western Slope is a different protocol entirely. A cleaner who runs a single state-wide approach will mistime the chemistry on half the routes.

What that means for the glass

Colorado spans 4 hardness bands, which means there is no single answer for the whole state — the method changes as you move across it. Both ends are below.

SoftSOFT END

0–60 mg/L

Tap water is clean enough to be the last thing that touches the glass. Wash with it, rinse with it, squeegee it off, and nothing measurable is left behind when it dries. No distilled rinse, no deionized final pass, no spot-free rinse aid — the mineral load is too low to precipitate anything you would see. The failure mode at this end of the scale is not water chemistry, it is technique: streaks here come from a worn rubber, a dirty edge, or a pass that dried before it was pulled.

Moderately HardMIDDLE

61–120 mg/L

Tap water is still fine for most residential glass, with two exceptions worth knowing. Dark glass shows a faint mineral haze that lighter glass hides, and glass that is hot enough to flash the water off before you pull the squeegee will spot regardless of how soft the supply is. On both, a distilled final rinse costs about a dollar a window and removes the variable entirely. Everywhere else at this level, the water is not what is wrong.

HardMIDDLE

121–180 mg/L

This is the band where the water starts writing on the glass. Wash with tap — the surfactant holds the minerals in suspension while you work, so the wash pass is not the problem — then rinse with distilled and pull that. The rinse is the whole intervention: it replaces the mineral-bearing water sitting on the glass with water that has nothing in it to leave. This single change resolves most of the "I cleaned it and it still looks bad" complaints in this range, and it does not require buying a system.

Very HardHARD END

181–250 mg/L

A distilled rinse stops being an improvement and becomes the method. Tap water left to dry on glass at this concentration deposits a visible film within minutes, and the film is cumulative: each cleaning that ends in tap water adds a layer that the next cleaning has to get through first. Glass on a sprinkler line or under a runoff drip needs a maintenance interval, not just a better wash — the deposit is arriving faster than a cleaning schedule built around dust would predict.

By city

Hardest first — the order that matters, because the hard end is where the method has to change. Each figure is the named utility's own published number; cities whose utility publishes none are listed after them, without a band. Within Colorado the spread runs from Boulder at 42 mg/L to Aurora at 87–198 mg/L — a difference big enough that the same bottle of cleaner behaves differently in each.

CITY / UTILITYBANDMG/L
AuroraAurora Water · blended surface and groundwaterHard87–1985.1–11.6 gpg
DenverDenver Water · blended surface and groundwaterModerately Hard34–1202–7 gpg
BoulderCity of Boulder Public Works Utilities · surface waterSoft422.5 gpg
Colorado SpringsColorado Springs Utilities · surface water—not published
Fort CollinsFort Collins Utilities · surface water—naturally soft
Grand JunctionUte Water Conservancy District · blended surface and groundwater—not sourced
LakewoodDenver Water (most areas) · blended surface and groundwater—not sourced

Against all 271 covered cities

Where Colorado's city pages sit in the national city rankings: hardness rank out of 185 cities whose utility publishes a figure, dissolved-solids rank out of 100, the disinfectant each utility reports, and the months each city's cleaning calendar marks for a wash. Rank 1 is the hardest or most mineral-heavy. 2 of these 5 cities use chloramine.

CITYHARDNESS RANKTDS RANKDISINFECTANTWASH IN
Aurora62 / 18587–198 mg/L38 / 100240 (range 119–355) mg/LchloramineJul, Sep
Denver122 / 18534–120 mg/L58 / 10091–225 mg/LchloramineJul, Sep
Boulder156 / 18542 mg/L94 / 10062 mg/Lfree chlorineJul, Sep
Colorado Springsnot rankednot rankedozone + chlorineJun, Sep
Fort Collinsnot rankednot rankedfree chlorineJul, Sep

This page is about Colorado's water and nothing else. For how cleaning actually works in Colorado across the year — climate, seasonal timing, the local contaminants, the housing stock — see the Colorado cleaning guide.

For a figure at your own address rather than your city, the Hard Water Scorer takes a ZIP code. If you run a pure-water system, the TDS diagnostic reads the other end of the same problem.

Nearby in the Mountain West

Utah
16–602 mg/L
Idaho
0–240 mg/L
Montana
52–233 mg/L
Wyoming
46–496 mg/L

Where these numbers come from

Each covered city utility's own published figure, taken from its most recent annual water quality report (Consumer Confidence Report) or its water-quality page, read in 2026. A city figure is the one its utility publishes for the service area, as a single number or the range it reports; it is not a reading from any one tap. A state range runs from the lowest to the highest figure published by the utilities we cover in that state, so it brackets those cities rather than describing an average resident. A state where no covered utility publishes a figure shows a planning estimate, labelled as one.

Private wells are outside all of it. A well is whatever the rock under it says, and the only number that describes one is a test of that tap. Have a reading that disagrees with this table? Send it to us — a number that contradicts the table is worth more than one that confirms it.