Lead pipes in Cook County, Illinois
How many lead pipes are in Cook County, IL?
Water systems based in Cook County reported 493,077 lead service lines, 15,966 galvanized lines that need replacing and 135,995 lines of unknown material to EPA (Q3 2026). Chicago has the most, with 360,857 lead and galvanized lines.
Free replacement program confirmed
Who pays in Illinois
Illinois was one of the first states to require full replacement of every lead service line. Each water supply must file a final replacement plan by April 15, 2027, then replace a set share of its lead lines every year, on a timeline of 15 to 50 years depending on how many it has. A utility may bill the owner for the private side only if it is not using state or federal money for that work, and an owner can sign a waiver to decline private-side replacement. Illinois EPA lends to water systems and forgives part of the loan in lower-income communities, which is why many Illinois programs are free.
Confirmed programs in Cook County
- Chicago: Free for income-qualified homeowners.
- Cicero: Town projects; required on sale or remodel.
- Berwyn: Free in 2026 priority areas.
- Evanston: Free in the annual program.
- Oak Park: Income-qualified help and low-interest loans.
- Skokie: Owner pays a fixed share (about $3,100).
- Evergreen Park: Village pays about 80%; 0% loan for the rest.
- Maywood: EPA Get the Lead Out partner.
- Calumet City: Free, main to meter.
- Arlington Heights: 50% up to $2,500.
- Homewood: Phase one 2026, state-funded.
- La Grange: Village pays main to curb box; owner may pay the rest.
- Morton Grove: Permit fee waived; village restores the right-of-way.
- Des Plaines: Replacement plan filed; owner terms pending.
- Oak Lawn: State-loan-funded village project.
- Forest Park: Free while funded (right-of-entry form).
- Wilmette: Village program; about 2,200 lines by 2044.
- Brookfield: Village pays public side; private reimbursement ending.
- River Grove: Rate-funded program; 1,881 lines.
- South Holland: Free for confirmed lead lines.
- Riverside: Village schedule; reimbursement for early replacement.
- Lincolnwood: Rebate program; SRF-funded project.
- Winnetka: 50% back, up to $5,000.
- North Maine (Cook County) (Aqua Illinois): No direct cost.
Every Cook County water system with lead lines
Systems are grouped by the county EPA lists as their main service area. Some serve towns in neighboring counties too.
| Water system | Lead | Galv. | Unknown | Program |
|---|---|---|---|---|
| Chicago Chicago | 350,531 | 10,326 | 39,427 | Free for eligible owners |
| Cicero Cicero | 13,037 | 2 | 1,148 | Replacing lines; ask about cost |
| Berwyn Berwyn | 10,527 | 301 | 174 | Free for eligible owners |
| Evanston Evanston | 9,198 | 270 | 0 | Free, utility schedules |
| Oak Park Oak Park | 6,935 | 714 | 1,222 | Financing offered |
| Skokie Skokie | 6,222 | 127 | 8,910 | Utility pays part |
| Evergreen Park Evergreen Park | 5,933 | 48 | 0 | Utility pays part |
| Elmwood Park Elmwood Park | 5,825 | 0 | 0 | Not confirmed |
| Lansing Lansing | 5,186 | 2 | 56 | Not confirmed |
| Maywood Maywood | 5,058 | 0 | 0 | Replacing lines; ask about cost |
| Calumet City Calumet City | 4,122 | 0 | 1,224 | Free, utility schedules |
| Arlington Heights Arlington Heights | 3,832 | 0 | 51 | Utility pays part |
| Homewood Homewood | 3,753 | 6 | 593 | Replacing lines; ask about cost |
| La Grange La Grange | 3,400 | 0 | 457 | Utility pays part |
| Westchester Westchester | 3,399 | 0 | 26 | Not confirmed |
| Park Ridge Park Ridge | 3,121 | 0 | 5,530 | Not confirmed |
| Morton Grove Morton Grove | 3,108 | 0 | 0 | Utility pays part |
| Des Plaines Des Plaines | 1,497 | 1,578 | 5,634 | Program not open yet |
| Chicago Heights Chicago Heights | 2,794 | 18 | 6,477 | Not confirmed |
| Oak Lawn Oak Lawn | 2,209 | 497 | 47 | Replacing lines; ask about cost |
| Forest Park Forest Park | 2,548 | 0 | 0 | Free, utility schedules |
| Dolton Dolton | 2,357 | 1 | 4,625 | Not confirmed |
| Franklin Park Franklin Park | 2,340 | 5 | 2,724 | Not confirmed |
| Calumet Park Calumet Park | 2,230 | 1 | 3 | Not confirmed |
| Wilmette Wilmette | 1,936 | 189 | 219 | Replacing lines; ask about cost |
| Brookfield Brookfield | 1,900 | 46 | 531 | Replacing lines; ask about cost |
| River Grove River Grove | 1,627 | 218 | 13 | Replacing lines; ask about cost |
| Summit Summit | 1,259 | 232 | 209 | Not confirmed |
| Niles Niles | 1,399 | 0 | 5,789 | Not confirmed |
| Hazel Crest Hazel Crest | 1,389 | 7 | 5 | Not confirmed |
| Robbins Robbins | 1,303 | 29 | 293 | Not confirmed |
| South Holland South Holland | 1,264 | 46 | 271 | Free replacement |
| Bellwood Bellwood | 1,257 | 0 | 930 | Not confirmed |
| Markham Markham | 1,239 | 0 | 149 | Not confirmed |
| Riverside Riverside | 1,114 | 27 | 157 | Replacing lines; ask about cost |
| Posen Posen | 1,121 | 1 | 474 | Not confirmed |
| Lincolnwood Lincolnwood | 1,097 | 0 | 0 | Utility pays part |
| Winnetka Winnetka | 1,083 | 0 | 0 | Utility pays part |
| Broadview Broadview | 951 | 0 | 1,635 | Not confirmed |
| La Grange Park La Grange Park | 708 | 144 | 529 | Not confirmed |
| Steger Steger | 831 | 3 | 0 | Not confirmed |
| River Forest River Forest | 770 | 46 | 1,401 | Not confirmed |
| Blue Island Blue Island | 778 | 0 | 4,540 | Not confirmed |
| South Chicago Heights South Chicago Heights | 760 | 5 | 150 | Not confirmed |
| Melrose Park Melrose Park | 744 | 0 | 2,326 | Not confirmed |
| Mount Prospect Mount Prospect | 700 | 27 | 65 | Not confirmed |
| Burnham Burnham | 693 | 18 | 356 | Not confirmed |
| Lyons Lyons | 602 | 0 | 28 | Not confirmed |
| Matteson Matteson | 576 | 4 | 0 | Not confirmed |
| Midlothian Midlothian | 538 | 30 | 2,880 | Not confirmed |
| Palatine Palatine | 280 | 261 | 7 | Not confirmed |
| Forest Park Glencoe | 528 | 0 | 24 | Not confirmed |
| Hillside Hillside | 484 | 2 | 1,491 | Not confirmed |
| Berkeley Berkeley | 472 | 0 | 77 | Not confirmed |
| Glenview Glenview | 383 | 44 | 1,391 | Not confirmed |
| Western Springs Western Springs | 383 | 31 | 53 | Not confirmed |
| Flossmoor Flossmoor | 373 | 0 | 199 | Not confirmed |
| Phoenix Phoenix | 266 | 56 | 338 | Not confirmed |
| Northbrook Northbrook | 313 | 1 | 0 | Not confirmed |
| Forest View Forest View | 262 | 6 | 0 | Not confirmed |
| Richton Park Richton Park | 259 | 3 | 111 | Not confirmed |
| Kenilworth Kenilworth | 245 | 0 | 0 | Not confirmed |
| Riverdale Riverdale | 195 | 46 | 2,755 | Not confirmed |
| North Lake Northlake | 150 | 87 | 1,447 | Not confirmed |
| North Riverside North Riverside | 215 | 4 | 2,119 | Not confirmed |
| North Maine (Cook County) (Aqua Illinois) Aqua Illinois-North Maine Utilities | 1 | 207 | 2,904 | Free, utility schedules |
| Harwood Heights Harwood Heights | 206 | 0 | 5 | Not confirmed |
| Olympia Fields Olympia Fields | 205 | 0 | 269 | Not confirmed |
| Leyden TWSP Water District Leyden TWSP Water District | 110 | 93 | 3 | Not confirmed |
| Harvey Harvey | 131 | 59 | 8,009 | Not confirmed |
| Stickney Stickney | 136 | 0 | 1,657 | Not confirmed |
| Thornton Thornton | 113 | 6 | 889 | Not confirmed |
| Burbank (south Stickney) South Stickny SD | 97 | 0 | 347 | Not confirmed |
| Glen Eden Estates Homeowners Association Glen Eden Estates Homeowners Association | 90 | 0 | 0 | Not confirmed |
| Northfield Northfield | 85 | 0 | 6 | Not confirmed |
| Bartlett Bartlett | 59 | 12 | 0 | Not confirmed |
| Stone Park Stone Park | 22 | 49 | 0 | Not confirmed |
| Lemont Lemont | 57 | 8 | 1,452 | Not confirmed |
| Norridge Norridge | 46 | 0 | 207 | Not confirmed |
| Central Stickney SD Central Stickney SD | 35 | 0 | 540 | Not confirmed |
Systems over the new 10 ppb lead action level
Calumet City (11 ppb, 2026-01 to 2026-06); Homewood (12.4 ppb, 2026-01 to 2026-06); Morton Grove (17.4 ppb, 2026-01 to 2026-06); Brookfield (10.4 ppb, 2026-01 to 2026-12); Burnham (13.7 ppb, 2026-01 to 2026-06); Northbrook (11 ppb, 2026-01 to 2026-06); Northfield (21 ppb, 2026-01 to 2026-06); Bartlett (20 ppb, 2026-01 to 2026-06); Lemont (25 ppb, 2026-01 to 2026-06). See all systems over 10 ppb.
Common questions
How many lead pipes are in Cook County, IL?
Water systems based in Cook County reported 493,077 lead service lines, 15,966 galvanized lines that need replacing and 135,995 lines of unknown material to EPA (Q3 2026). Chicago has the most, with 360,857 lead and galvanized lines.
Who pays to replace lead service lines in Cook County?
It depends on your water utility. Illinois was one of the first states to require full replacement of every lead service line. We have confirmed programs for 24 Cook County utilities, listed on this page.
How do I find out if my house has a lead service line?
Look up your address on your water utility's service line inventory map, or check the pipe where it enters your home: lead is dull gray, soft, scratches to shiny silver, and a magnet won't stick. See our step-by-step guide.
Other Illinois counties
Kane CountyWinnebago CountyLake CountyPeoria CountyDupage CountyMacon CountyRock Island CountyMcLean CountyMorgan CountyWill CountyMcHenry CountyHenry CountyIllinois →