Cook County, Illinois
219 ZIP codes · Avg score 68/100 · Grade C · Updated 2026-06-03
Water monitoring across Cook County's 219 ZIP codes paints a mid-range picture — solid compliance in some zones, documented concerns in others; most violations on record are concentrated in specific prior years rather than spread evenly across the full compliance history, and the overall county grade has held steady in the middle tier without major shifts in either direction.
How Cook County Compares
How Cook County Compares
Cook County scores 7 points above the Illinois state average (61/100) and 0 points above the national average (68/100).
Data: EPA SDWIS Last verified: 2026-06-03
ZIP Code Risk Map
Water Quality Map: Cook County, Illinois
Each dot represents a ZIP code. Color indicates water quality grade. Tap a dot for details.
Key Risk Factors
Health risk index: 11.2 (asthma 9.8%, diabetes 11.8%)
Estimated additional annual cost per homeowner: $2,230, driven primarily by flood
Infrastructure: 0.42% avg pipe failure probability, 56% of ZIPs at high risk
77.6% of homes built before 1978 (lead paint era)
Violation History (2022–2025)
↑ Worsening trendEPA violation counts by year across Cook County water systems. Health-based shown in red, total in blue.
Peak year: 2024 with 110 violations. Past 5 years: 138 total (138 health-based). Health-based violations are rising versus the prior 2-year window — worth closer monitoring.
Source: EPA SDWIS historical violations. Data may lag 6–12 months for the most recent year.
County Health Indicators vs National Average
Black markers indicate national averages. Source: CDC PLACES, Census ACS.
Infrastructure Overview
Sources: Census ACS (housing age), EPA SDWIS (infrastructure risk model), state bridge inspection data.
Compound Risk Breakdown
Estimated additional annual cost per homeowner: $2,230
Bar widths proportional to share of total annual risk cost. Source: compound risk model (FEMA, EPA, USGS).
Housing Age Distribution
2,271,843 housing units in Cook County
Source: U.S. Census Bureau ACS B25034 (Year Structure Built).
Water Safety Affordability
How much it costs to fix water issues relative to home values in Cook County
Remediation costs are relatively manageable for most homeowners in Cook County, representing a small fraction of property value.
Remediation includes water filtration, lead abatement, radon mitigation, and flood protection where applicable. Source: Census ACS, EPA SDWIS.
Health Outcomes vs National Average
CDC PLACES data for Cook County residents
Black markers = national averages. Red = above national avg. Green = below. Source: CDC PLACES, Census ACS.
Water Systems with Most Violations
Top 5 systems in Cook County ranked by EPA violation count.
| # | Water System | Population | Violations |
|---|---|---|---|
| 1 | Chicago | 2,746,388 | 1610 |
| 2 | Willoway Terrace Mhp | 900 | 1606 |
| 3 | Blackhawk Estates Llc | 1,238 | 1601 |
| 4 | Shady Oaks Mhp | 912 | 1596 |
| 5 | Sunny Acres Mhp | 750 | 1596 |
164 total water systems serve Cook County.
All ZIP Codes in Cook County
219 ZIP codes tracked in Cook County.
| # | ZIP Code | City | Safety Score | Grade | Violations | Home Value |
|---|---|---|---|---|---|---|
| 1 | 60179 | Hoffman Estates | 83 | B | 0 | — |
| 2 | 60192 | Hoffman Estates | 83 | B | 0 | $414K |
| 3 | 60301 | Oak Park | 83 | B | 0 | $230K |
| 4 | 60302 | Oak Park | 83 | B | 0 | $451K |
| 5 | 60303 | Oak Park | 83 | B | 0 | — |
| 6 | 60304 | Oak Park | 83 | B | 0 | $470K |
| 7 | 60455 | Bridgeview | 83 | B | 0 | $234K |
| 8 | 60482 | Worth | 83 | B | 1 | $217K |
| 9 | 60043 | Kenilworth | 82 | B | 1 | $1410K |
| 10 | 60202 | Evanston | 82 | B | 0 | $381K |
| 11 | 60130 | Forest Park | 81 | B | 1 | $294K |
| 12 | 60141 | Hines | 81 | B | 2 | — |
| 13 | 60204 | Evanston | 81 | B | 0 | — |
| 14 | 60208 | Evanston | 81 | B | 0 | — |
| 15 | 60209 | Evanston | 81 | B | 0 | — |
| 16 | 60467 | Orland Park | 81 | B | 1 | $392K |
| 17 | 60526 | La Grange Park | 81 | B | 0 | $428K |
| 18 | 60006 | Arlington Heights | 80 | B | 3 | — |
| 19 | 60082 | Techny | 80 | B | 0 | — |
| 20 | 60454 | Oak Lawn | 80 | B | 3 | — |
| 21 | 60805 | Evergreen Park | 80 | B | 0 | $256K |
| 22 | 60017 | Des Plaines | 79 | B | 3 | — |
| 23 | 60019 | Des Plaines | 79 | B | 3 | — |
| 24 | 60163 | Berkeley | 79 | B | 0 | $223K |
| 25 | 60706 | Harwood Heights | 79 | B | 0 | $348K |
| 26 | 60169 | Hoffman Estates | 78 | B | 0 | $292K |
| 27 | 60458 | Justice | 78 | B | 0 | $224K |
| 28 | 60466 | Park Forest | 78 | B | 0 | $106K |
| 29 | 60803 | Alsip | 78 | B | 1 | $201K |
| 30 | 60201 | Evanston | 77 | B | 0 | $578K |
| 31 | 60402 | Berwyn | 77 | B | 2 | $278K |
| 32 | 60412 | Chicago Heights | 77 | B | 3 | — |
| 33 | 60712 | Lincolnwood | 77 | B | 2 | $475K |
| 34 | 60008 | Rolling Meadows | 76 | B | 1 | $295K |
| 35 | 60089 | Buffalo Grove | 76 | B | 2 | $393K |
| 36 | 60133 | Hanover Park | 76 | B | 1 | $261K |
| 37 | 60162 | Hillside | 76 | B | 0 | $234K |
| 38 | 60425 | Glenwood | 76 | B | 4 | $182K |
| 39 | 60478 | Country Club Hills | 76 | B | 1 | $181K |
| 40 | 60004 | Arlington Heights | 75 | B | 3 | $415K |
| 41 | 60005 | Arlington Heights | 75 | B | 3 | $376K |
| 42 | 60107 | Streamwood | 75 | B | 1 | $258K |
| 43 | 60415 | Chicago Ridge | 75 | B | 0 | $218K |
| 44 | 60161 | Melrose Park | 74 | B | 14 | — |
| 45 | 60459 | Burbank | 74 | B | 7 (1 health) | $259K |
| 46 | 60461 | Olympia Fields | 74 | B | 6 | $289K |
| 47 | 60464 | Palos Park | 74 | B | 7 (1 health) | $463K |
| 48 | 60475 | Steger | 74 | B | 2 | $137K |
| 49 | 60558 | Western Springs | 74 | B | 6 | $691K |
| 50 | 60827 | Riverdale | 74 | B | 1 | $124K |
| 51 | 60159 | Schaumburg | 73 | B | 5 | — |
| 52 | 60168 | Schaumburg | 73 | B | 5 | — |
| 53 | 60173 | Schaumburg | 73 | B | 5 | $311K |
| 54 | 60194 | Schaumburg | 73 | B | 5 | $311K |
| 55 | 60195 | Schaumburg | 73 | B | 5 | $240K |
| 56 | 60196 | Schaumburg | 73 | B | 5 | — |
| 57 | 60406 | Blue Island | 73 | B | 9 | $166K |
| 58 | 60445 | Midlothian | 73 | B | 1 | $202K |
| 59 | 60456 | Hometown | 73 | B | 2 | $152K |
| 60 | 60465 | Palos Hills | 73 | B | 0 | $259K |
| 61 | 60070 | Prospect Heights | 72 | B | 2 | $343K |
| 62 | 60418 | Crestwood | 72 | B | 6 | $188K |
| 63 | 60499 | Bedford Park | 72 | B | 0 | — |
| 64 | 60527 | Willowbrook | 72 | B | 6 | $488K |
| 65 | 60176 | Schiller Park | 71 | B | 1 | $276K |
| 66 | 60462 | Orland Park | 71 | B | 1 | $330K |
| 67 | 60601 | Chicago | 71 | B | 19 (1 health) | $495K |
| 68 | 60602 | Chicago | 71 | B | 19 (1 health) | $383K |
| 69 | 60603 | Chicago | 71 | B | 19 (1 health) | $608K |
| 70 | 60604 | Chicago | 71 | B | 19 (1 health) | $578K |
| 71 | 60606 | Chicago | 71 | B | 19 (1 health) | $367K |
| 72 | 60607 | Chicago | 71 | B | 19 (1 health) | $494K |
| 73 | 60608 | Chicago | 71 | B | 19 (1 health) | $342K |
| 74 | 60611 | Chicago | 71 | B | 19 (1 health) | $608K |
| 75 | 60612 | Chicago | 71 | B | 19 (1 health) | $332K |
| 76 | 60613 | Chicago | 71 | B | 19 (1 health) | $398K |
| 77 | 60615 | Chicago | 71 | B | 19 (1 health) | $305K |
| 78 | 60616 | Chicago | 71 | B | 19 (1 health) | $387K |
| 79 | 60621 | Chicago | 71 | B | 19 (1 health) | $162K |
| 80 | 60622 | Chicago | 71 | B | 19 (1 health) | $623K |
| 81 | 60623 | Chicago | 71 | B | 19 (1 health) | $221K |
| 82 | 60632 | Chicago | 71 | B | 19 (1 health) | $241K |
| 83 | 60638 | Chicago | 71 | B | 19 (1 health) | $284K |
| 84 | 60640 | Chicago | 71 | B | 19 (1 health) | $363K |
| 85 | 60642 | Chicago | 71 | B | 19 (1 health) | $604K |
| 86 | 60645 | Chicago | 71 | B | 19 (1 health) | $308K |
| 87 | 60649 | Chicago | 71 | B | 19 (1 health) | $200K |
| 88 | 60653 | Chicago | 71 | B | 19 (1 health) | $348K |
| 89 | 60654 | Chicago | 71 | B | 19 (1 health) | $496K |
| 90 | 60655 | Chicago | 71 | B | 19 (1 health) | $303K |
| 91 | 60656 | Chicago | 71 | B | 19 (1 health) | $344K |
| 92 | 60670 | Chicago | 71 | B | 19 (1 health) | — |
| 93 | 60009 | Elk Grove Village | 70 | B | 2 | — |
| 94 | 60422 | Flossmoor | 70 | B | 3 | $304K |
| 95 | 60443 | Matteson | 70 | B | 7 | $229K |
| 96 | 60453 | Oak Lawn | 70 | B | 3 | $268K |
| 97 | 60457 | Hickory Hills | 70 | B | 0 | $278K |
| 98 | 60029 | Golf | 69 | C | 0 | $958K |
| 99 | 60452 | Oak Forest | 69 | C | 2 | $249K |
| 100 | 60469 | Posen | 69 | C | 2 | $174K |
| 101 | 60476 | Thornton | 69 | C | 3 | $147K |
| 102 | 60546 | Riverside | 69 | C | 1 | $378K |
| 103 | 60804 | Cicero | 69 | C | 7 (1 health) | $236K |
| 104 | 60007 | Elk Grove Village | 68 | C | 2 | $335K |
| 105 | 60056 | Mount Prospect | 68 | C | 4 | $376K |
| 106 | 60090 | Wheeling | 68 | C | 0 | $244K |
| 107 | 60171 | River Grove | 68 | C | 1 | $245K |
| 108 | 60193 | Schaumburg | 68 | C | 5 | $318K |
| 109 | 60290 | Chicago | 68 | C | 19 (1 health) | — |
| 110 | 60463 | Palos Heights | 68 | C | 1 | $344K |
| 111 | 60513 | Brookfield | 68 | C | 0 | $314K |
| 112 | 60605 | Chicago | 68 | C | 19 (1 health) | $496K |
| 113 | 60661 | Chicago | 68 | C | 19 (1 health) | $398K |
| 114 | 60664 | Chicago | 68 | C | 19 (1 health) | — |
| 115 | 60666 | Chicago | 68 | C | 19 (1 health) | — |
| 116 | 60668 | Chicago | 68 | C | 19 (1 health) | — |
| 117 | 60669 | Chicago | 68 | C | 19 (1 health) | — |
| 118 | 60673 | Chicago | 68 | C | 19 (1 health) | — |
| 119 | 60674 | Chicago | 68 | C | 19 (1 health) | — |
| 120 | 60675 | Chicago | 68 | C | 19 (1 health) | — |
| 121 | 60677 | Chicago | 68 | C | 19 (1 health) | — |
| 122 | 60678 | Chicago | 68 | C | 19 (1 health) | — |
| 123 | 60679 | Chicago | 68 | C | 19 (1 health) | — |
| 124 | 60681 | Chicago | 68 | C | 19 (1 health) | — |
| 125 | 60682 | Chicago | 68 | C | 19 (1 health) | — |
| 126 | 60684 | Chicago | 68 | C | 19 (1 health) | — |
| 127 | 60685 | Chicago | 68 | C | 19 (1 health) | — |
| 128 | 60686 | Chicago | 68 | C | 19 (1 health) | — |
| 129 | 60687 | Chicago | 68 | C | 19 (1 health) | — |
| 130 | 60688 | Chicago | 68 | C | 19 (1 health) | — |
| 131 | 60689 | Chicago | 68 | C | 19 (1 health) | — |
| 132 | 60690 | Chicago | 68 | C | 19 (1 health) | — |
| 133 | 60691 | Chicago | 68 | C | 19 (1 health) | — |
| 134 | 60693 | Chicago | 68 | C | 19 (1 health) | — |
| 135 | 60694 | Chicago | 68 | C | 19 (1 health) | — |
| 136 | 60695 | Chicago | 68 | C | 19 (1 health) | — |
| 137 | 60696 | Chicago | 68 | C | 19 (1 health) | — |
| 138 | 60697 | Chicago | 68 | C | 19 (1 health) | — |
| 139 | 60699 | Chicago | 68 | C | 19 (1 health) | — |
| 140 | 60534 | Lyons | 67 | C | 1 | $244K |
| 141 | 60154 | Westchester | 66 | C | 2 | $297K |
| 142 | 60155 | Broadview | 66 | C | 6 | $241K |
| 143 | 60165 | Stone Park | 66 | C | 2 | $218K |
| 144 | 60473 | South Holland | 66 | C | 6 (2 health) | $200K |
| 145 | 60487 | Tinley Park | 66 | C | 3 | $340K |
| 146 | 60609 | Chicago | 66 | C | 19 (1 health) | $252K |
| 147 | 60610 | Chicago | 66 | C | 19 (1 health) | $543K |
| 148 | 60614 | Chicago | 66 | C | 19 (1 health) | $731K |
| 149 | 60617 | Chicago | 66 | C | 19 (1 health) | $168K |
| 150 | 60618 | Chicago | 66 | C | 19 (1 health) | $538K |
| 151 | 60620 | Chicago | 66 | C | 19 (1 health) | $188K |
| 152 | 60624 | Chicago | 66 | C | 19 (1 health) | $223K |
| 153 | 60626 | Chicago | 66 | C | 19 (1 health) | $269K |
| 154 | 60629 | Chicago | 66 | C | 19 (1 health) | $236K |
| 155 | 60630 | Chicago | 66 | C | 19 (1 health) | $363K |
| 156 | 60631 | Chicago | 66 | C | 19 (1 health) | $431K |
| 157 | 60633 | Chicago | 66 | C | 19 (1 health) | $182K |
| 158 | 60634 | Chicago | 66 | C | 19 (1 health) | $334K |
| 159 | 60636 | Chicago | 66 | C | 19 (1 health) | $151K |
| 160 | 60639 | Chicago | 66 | C | 19 (1 health) | $289K |
| 161 | 60641 | Chicago | 66 | C | 19 (1 health) | $373K |
| 162 | 60643 | Chicago | 66 | C | 19 (1 health) | $234K |
| 163 | 60644 | Chicago | 66 | C | 19 (1 health) | $238K |
| 164 | 60646 | Chicago | 66 | C | 19 (1 health) | $494K |
| 165 | 60647 | Chicago | 66 | C | 19 (1 health) | $557K |
| 166 | 60651 | Chicago | 66 | C | 19 (1 health) | $263K |
| 167 | 60652 | Chicago | 66 | C | 19 (1 health) | $235K |
| 168 | 60657 | Chicago | 66 | C | 19 (1 health) | $535K |
| 169 | 60659 | Chicago | 66 | C | 19 (1 health) | $359K |
| 170 | 60660 | Chicago | 66 | C | 19 (1 health) | $288K |
| 171 | 60091 | Wilmette | 65 | C | 1 | $800K |
| 172 | 60018 | Des Plaines | 64 | C | 3 | $302K |
| 173 | 60426 | Harvey | 64 | C | 3 | $89K |
| 174 | 60472 | Robbins | 64 | C | 19 | $114K |
| 175 | 60707 | Elmwood Park | 64 | C | 2 | $315K |
| 176 | 60068 | Park Ridge | 63 | C | 4 | $540K |
| 177 | 60184 | Wayne | 63 | C | 0 | $674K |
| 178 | 60411 | Chicago Heights | 63 | C | 3 | $148K |
| 179 | 60480 | Willow Springs | 63 | C | 0 | $356K |
| 180 | 60484 | University Park | 63 | C | 0 | $141K |
| 181 | 60501 | Summit Argo | 63 | C | 0 | $227K |
| 182 | 60525 | La Grange | 63 | C | 5 | $423K |
| 183 | 60471 | Richton Park | 62 | C | 6 | $201K |
| 184 | 60022 | Glencoe | 61 | C | 0 | $1345K |
| 185 | 60477 | Tinley Park | 61 | C | 3 | $262K |
| 186 | 60619 | Chicago | 61 | C | 19 (1 health) | $213K |
| 187 | 60625 | Chicago | 61 | C | 19 (1 health) | $397K |
| 188 | 60628 | Chicago | 61 | C | 19 (1 health) | $159K |
| 189 | 60637 | Chicago | 61 | C | 19 (1 health) | $244K |
| 190 | 60131 | Franklin Park | 60 | C | 6 | $262K |
| 191 | 60153 | Maywood | 60 | C | 6 | $213K |
| 192 | 60428 | Markham | 60 | C | 7 | $119K |
| 193 | 60016 | Des Plaines | 59 | C | 3 | $301K |
| 194 | 60026 | Glenview | 59 | C | 5 | $663K |
| 195 | 60104 | Bellwood | 59 | C | 4 (1 health) | $219K |
| 196 | 60160 | Melrose Park | 59 | C | 14 | $265K |
| 197 | 60164 | Melrose Park | 59 | C | 14 | $240K |
| 198 | 60429 | Hazel Crest | 59 | C | 2 | $181K |
| 199 | 60093 | Winnetka | 58 | C | 0 | $1074K |
| 200 | 60305 | River Forest | 57 | C | 2 | $677K |
| 201 | 60491 | Homer Glen | 55 | C | 0 | $405K |
| 202 | 60714 | Niles | 53 | D | 1 | $351K |
| 203 | 60038 | Palatine | 50 | D | 0 | — |
| 204 | 60053 | Morton Grove | 50 | D | 3 | $377K |
| 205 | 60055 | Palatine | 50 | D | 0 | — |
| 206 | 60077 | Skokie | 50 | D | 5 | $327K |
| 207 | 60078 | Palatine | 50 | D | 0 | — |
| 208 | 60094 | Palatine | 50 | D | 0 | — |
| 209 | 60095 | Palatine | 50 | D | 0 | — |
| 210 | 60438 | Lansing | 50 | D | 5 | $169K |
| 211 | 60025 | Glenview | 49 | D | 5 | $512K |
| 212 | 60067 | Palatine | 48 | D | 0 | $428K |
| 213 | 60074 | Palatine | 48 | D | 0 | $308K |
| 214 | 60076 | Skokie | 45 | D | 5 | $381K |
| 215 | 60430 | Homewood | 45 | D | 4 | $209K |
| 216 | 60065 | Northbrook | 44 | D | 4 | — |
| 217 | 60062 | Northbrook | 42 | D | 4 | $626K |
| 218 | 60419 | Dolton | 42 | D | 15 | $141K |
| 219 | 60409 | Calumet City | 39 | F | 6 (1 health) | $134K |
Recommended Buyer Guides for Cook County
While many sites publish identical guide lists across every county they cover, the selection here changes by location — driven by the EPA, NSF, FEMA, and CDC datasets that describe the actual conditions documented for this jurisdiction in the federal record.
- Best Water Filters for Lead — Lead above EPA action level in 5 ZIP codes
- Best Lead Paint Test Kits — 77.6% of homes built before 1978
- Best Under-Sink Reverse Osmosis Systems — Multi-contaminant removal at the kitchen tap
- Best Sump Pumps — Flood is the top compound risk factor
- Best Mold Test Kits — Flood-driven moisture and mold risk
Deep Dive Reports
Detailed analysis for Cook County, Illinois
Overview
Cook County in Illinois covers 219 ZIP codes with an average Home Safety Score of C (68/100).
177 of 219 ZIP codes have recorded EPA violations. 91 health-based violations have been documented.
← Back to Illinois water quality report
Data Sources
- Water quality: EPA Safe Drinking Water Information System (SDWIS)
- Home values: U.S. Census Bureau ACS (median estimates by ZCTA)
Updated daily.