Skip to main content
WaterVerge

Iowa Water Quality Report

430 cities tested · Average grade: A- · 2.8M people served

Cities Tested
430
Avg Score
87.8
Population Served
2.8M
Avg Grade
A-
Live Water Alerts for Iowa →
Analysis

Iowa water quality overview

Iowa's drinking water quality is excellent overall, with an average score of 87.8 out of 100 across 430 cities tested. The median score is 89.7, serving a total population of 2,762,924 residents. 97% of cities earned an A or B grade, indicating broadly strong water quality infrastructure across the state. PFAS "forever chemicals" were detected in 111 of 430 cities tested (26%). 7 cities exceed the 2024 EPA maximum contaminant levels. 2 cities have lead levels exceeding the EPA action level of 15 ppb, often indicating aging infrastructure with lead service lines or lead solder. The state relies on a mix of water sources: 367 cities use groundwater while 60 draw from surface water such as rivers, lakes, and reservoirs.

Key Concerns

Issues to watch in Iowa

111 cities
PFAS Detected
26% of tested cities have PFAS in their water supply.
2 cities
Lead Exceedances
Lead levels above the EPA action level of 15 ppb (90th percentile).
297 cities
Health Violations
11,823 total violations recorded, 418 with unresolved issues.
4 cities
Failing Systems
Received a grade of F, indicating serious water quality issues.
State context
14
Superfund sites in Iowa
EPA National Priorities List
89.8%
of Iowa residents on fluoridated water
CDC, 2020
5,377,629
lbs released to surface water
Top 10 TRI facilities, 2023
10.0%
of Iowa domestic wells exceed EPA arsenic limit
USGS, 521 samples · 10 µg/L MCL
Domestic well chemistry

Private-well water in Iowa

Based on USGS Powell Domestic-Well Database — 1,550 private wells sampled across Iowa. These wells are not regulated by the EPA; if you draw your tap from a private well, the public-system grade above does not apply to you.

1.0 µg/L
Median arsenic in domestic wells
P90 10.0 µg/L · max 153.0 µg/L
170 µg/L
Median manganese in domestic wells
35.1% exceed 300 µg/L aesthetic limit
Industrial pollution

Top industrial water polluters in Iowa

Industrial polluters nearby

The 10 facilities reporting the most pounds released to surface water in Iowa, 2023.

Total reported releases to surface water: 5,377,629 lbs

FacilityTop chemicalTo surface water (lbs/yr)
TYSON FRESH MEATS INC-LOUISA COUNTY
Food · TYSON FOODS INC
COLUMBUS JUNCTION, IA52738
Nitrate compounds (water dissociable; reportable only when in aqueous solution)1,339,654
CF INDUSTRIES NITROGEN LLC-PORT NEAL NITROGEN COMPLEX
Chemicals · CF INDUSTRIES HOLDINGS INC
SERGEANT BLUFF, IA51054
Nitrate compounds (water dissociable; reportable only when in aqueous solution)876,722
AJINOMOTO HEALTH & NUTRITION N.A. INC.
Chemicals · AJINOMOTO HEALTH & NUTRITION NORTH AMERICA INC
EDDYVILLE, IA52553
Nitrate compounds (water dissociable; reportable only when in aqueous solution)768,487
AGRI STAR MEAT & POULTRY LLC.
Food · LAURIDSEN GROUP INC
POSTVILLE, IA52162
Nitrate compounds (water dissociable; reportable only when in aqueous solution)577,258
JBS PORK
Food · JBS USA FOOD CO
OTTUMWA, IA52501
Nitrate compounds (water dissociable; reportable only when in aqueous solution)442,519

+ 5 more facilities

Source: EPA Toxic Release Inventory (TRI) 2023

Grade Distribution

How Iowa cities scored

A: 342 B: 75 C: 5 D: 4 F: 4
City Map

Water quality across Iowa

Each dot is a city, colored by its water quality grade. Size reflects population served. Click any city to view its full water report.

All Cities

430 cities in Iowa

# City Grade Score Population Violations
1 Asbury A+
97.8
6K 0
2 Cresco A+
97
4K 15
3 Rockford A+
95.9
762 5
4 Gilman A+
95.9
582 8
5 Brooklyn A+
95.8
2K 13
6 Bancroft A+
95.7
711 8
7 Evansdale A+
95.4
5K 5
8 Glenwood A+
95.2
5K 27
9 West Bend A+
95.2
791 9
10 Brooks A+
95.1
3K 6
11 Sumner A+
95.1
2K 38
12 Hartley A+
95
2K 0
13 Rolfe A+
95
509 35
14 Charter Oak A
94.8
522 24
15 Lenox A
94.7
1K 6
16 Winfield A
94.7
1K 5
17 Fairbank A
94.5
1K 11
18 Dakota City A
94.5
769 6
19 Montrose A
94.5
738 7
20 Strawberry Point A
94.4
1K 6
21 Villisca A
94.4
1K 6
22 Redfield A
94.4
744 8
23 Eagle Grove A
94.3
4K 5
24 Monroe A
94.3
2K 6
25 Dexter A
94.3
693 9
26 Hopkinton A
94.3
622 9
27 Melcher-Dallas A
94.2
1K 8
28 Graettinger A
94.2
897 9
29 Colo A
94.2
853 7
30 Ainsworth A
94.2
511 6
31 Cascade A
94.1
2K 13
32 Prairie City A
94.1
2K 8
33 Dows A
94
526 7
34 Pocahontas A
93.9
2K 7
35 Central City A
93.9
1K 12
36 North English A
93.9
1K 16
37 Lansing A
93.9
983 6
38 Riceville A
93.9
816 43
39 Jesup A
93.8
3K 19
40 New Hartford A
93.8
570 6
41 Collins A
93.8
505 13
42 Elma A
93.8
505 20
43 Keota A
93.7
897 11
44 Northwood A
93.6
2K 10
45 Carson A
93.6
766 7
46 Murray A
93.6
684 20
47 Huxley A
93.5
4K 4
48 Logan A
93.5
1K 7
49 New Sharon A
93.5
1K 12
50 Saint Ansgar A
93.5
1K 12
51 Hamburg A
93.5
890 25
52 What Cheer A
93.5
607 10
53 Story City A
93.4
3K 7
54 Hubbard A
93.4
860 10
55 Manilla A
93.4
758 9
56 Badger A
93.4
561 13
57 Milford A
93.3
3K 9
58 Walcott A
93.3
2K 6
59 Inwood A
93.3
928 10
60 Norwalk A
93.2
14K 10
61 Denison A
93.2
9K 8
62 Spirit Lake A
93.2
6K 5
63 Vinton A
93.2
5K 8
64 Belmond A
93.2
2K 16
65 Farley A
93.2
2K 9
66 State Center A
93.2
1K 13
67 Clarence A
93.2
1K 20
68 Sabula A
93.2
506 12
69 Durant A
93.1
2K 4
70 Van Horne A
93.1
779 11
71 Shenandoah A
93
5K 17
72 West Liberty A
93
4K 15
73 New London A
93
2K 12
74 Stuart A
93
2K 22
75 Coon Rapids A
93
1K 1
76 Odebolt A
93
994 14
77 Walnut A
93
768 16
78 Breda A
93
500 15
79 Eldora A
92.9
3K 3
80 Grand Junction A
92.9
725 7
81 Radcliffe A
92.9
561 28
82 Marcus A
92.8
1K 15
83 Clive A
92.7
19K 6
84 Toledo A
92.7
2K 19
85 Rockwell A
92.6
1K 12
86 Sully A
92.6
881 26
87 Richland A
92.6
542 17
88 Anita A
92.5
972 7
89 Conrad A
92.4
1K 5
90 Melbourne A
92.4
765 5
91 Alburnett A
92.4
675 25
92 Ely A
92.3
2K 7
93 Epworth A
92.3
2K 5
94 Walker A
92.3
688 8
95 Bondurant A
92.2
9K 6
96 Nevada A
92.2
7K 22
97 Mount Vernon A
92.2
5K 9
98 New Hampton A
92.2
3K 6
99 Hawarden A
92.2
3K 31
100 Winthrop A
92.2
840 10
101 Lake View A
92.1
1K 11
102 Gladbrook A
92.1
799 10
103 Dayton A
92.1
772 14
104 Brighton A
92.1
600 11
105 Palo A
92
1K 14
106 Calmar A
92
1K 8
107 Wayland A
92
966 19
108 Olin A
92
651 12
109 Lake Park A
91.9
1K 11
110 Sloan A
91.9
1K 8
111 Wellsburg A
91.9
721 25
112 Sheldon A
91.8
6K 5
113 Sergeant Bluff A
91.8
5K 5
114 Larchwood A
91.8
926 19
115 Janesville A
91.7
1K 12
116 Jefferson A
91.6
4K 9
117 Albia A
91.6
4K 24
118 Garner A
91.6
3K 3
119 Sac City A
91.6
2K 3
120 Sigourney A
91.6
2K 3
121 Oakland A
91.6
2K 3
122 Aurelia A
91.6
968 3
123 Garnavillo A
91.6
763 4
124 Schaller A
91.6
729 9
125 Whiting A
91.6
727 4
126 Lakeside A
91.6
700 3
127 Goldfield A
91.6
634 3
128 Grundy Center A
91.5
3K 3
129 Traer A
91.5
2K 12
130 Buffalo Center A
91.5
857 4
131 Correctionville A
91.5
766 4
132 Morning Sun A
91.5
752 4
133 Audubon A
91.4
2K 4
134 Earlham A
91.4
1K 23
135 Schleswig A
91.4
803 36
136 Mount Pleasant A
91.3
9K 27
137 Perry A
91.3
8K 17
138 Oelwein A
91.3
6K 9
139 West Union A
91.3
3K 4
140 Elk Run Heights A
91.3
1K 6
141 Keosauqua A
91.3
961 11
142 Adair A
91.3
809 41
143 Anthon A
91.3
545 7
144 Newton A
91.2
17K 8
145 Humboldt A
91.2
5K 3
146 Mount Ayr A
91.2
2K 63
147 Crescent A
91.2
778 14
148 Grand Mound A
91.2
615 6
149 Delmar A
91.2
542 3
150 Lake Mills A
91.1
2K 7
151 Lake City A
91.1
2K 48
152 Sanborn A
91.1
1K 33
153 Fredericksburg A
91.1
987 7
154 Le Grand A
91.1
910 9
155 Merrill A
91.1
717 58
156 Wyoming A
91.1
523 8
157 Estherville A
91
6K 2
158 Pleasantville A
91
2K 4
159 Laurens A
91
1K 3
160 Mapleton A
91
1K 23
161 Lawton A
91
943 10
162 Kellogg A
91
617 7
163 Adel A
90.9
6K 13
164 Preston A
90.9
949 3
165 Fort Madison A
90.8
11K 37
166 Independence A
90.8
6K 11
167 Long Grove A
90.8
838 61
168 Okoboji A
90.7
793 18
169 Hinton A
90.6
935 13
170 Le Mars A
90.5
11K 17
171 Manchester A
90.5
5K 3
172 Camanche A
90.5
5K 17
173 Waukon A
90.5
4K 4
174 Denver A
90.5
2K 14
175 Dallas Center A
90.5
2K 2
176 Clarksville A
90.5
1K 8
177 Arcadia A
90.5
525 6
178 Mitchellville A
90.4
3K 11
179 Guttenberg A
90.4
2K 8
180 Dike A
90.4
1K 5
181 Paullina A
90.4
996 6
182 Milo A
90.4
788 25
183 La Porte City A
90.3
2K 11
184 Greenfield A
90.3
2K 23
185 Truro A
90.3
525 18
186 Spencer A
90.2
18K 16
187 Dyersville A
90.2
4K 43
188 Decatur City A
90.2
1K 5
189 Newell A
90.2
906 10
190 Farmington A
90.2
601 30
191 Roland A
90.1
1K 6
192 Alden A
90.1
763 11
193 Albert City A
90.1
677 12
194 Webster City A
90
8K 8
195 Avoca A
90
6K 15
196 Luther A
90
5K 20
197 Onawa A-
90
3K 2
198 Springville A
90
1K 18
199 Alton A
90
1K 12
200 Kingsley A-
89.9
1K 11
201 Gowrie A-
89.9
954 7
202 Newhall A-
89.9
881 15
203 Exira A-
89.9
764 7
204 Hedrick A-
89.9
728 9
205 Moulton A-
89.9
607 2
206 Waukee A-
89.8
32K 26
207 Clear Lake A-
89.8
8K 22
208 May City A-
89.8
7K 3
209 South Amana A-
89.8
2K 15
210 Ogden A-
89.8
2K 14
211 Van Meter A-
89.8
1K 46
212 Wall Lake A-
89.8
780 30
213 Essex A-
89.8
722 27
214 Battle Creek A-
89.8
700 33
215 Harlan A-
89.7
5K 1
216 Ida Grove A-
89.7
2K 18
217 Wheatland A-
89.7
775 12
218 Kanawha A-
89.7
658 2
219 Storm Lake A-
89.6
12K 8
220 Tipton A-
89.6
3K 2
221 Wilton A-
89.6
3K 4
222 Hudson A-
89.6
3K 4
223 Alta A-
89.6
2K 2
224 Manly A-
89.6
1K 2
225 George A-
89.6
1K 26
226 Mechanicsville A-
89.6
1K 13
227 Eldon A-
89.6
927 28
228 West Point A-
89.6
921 37
229 Earlville A-
89.6
724 31
230 Nashua A-
89.5
2K 21
231 Holstein A-
89.5
2K 12
232 Greene A-
89.5
994 3
233 Edgewood A-
89.5
939 3
234 Cambridge A-
89.5
832 10
235 Lowden A-
89.4
807 4
236 Ossian A-
89.4
802 3
237 Fairfax A-
89.3
3K 12
238 Gilbertville A-
89.3
794 20
239 Wellman A-
89.2
2K 45
240 Bedford A-
89.2
2K 39
241 Winterset A-
89.1
5K 31
242 Danville A-
89.1
923 26
243 Cedar Falls A-
89
41K 14
244 Manning A-
89
5K 38
245 Clarion A-
89
3K 4
246 Bellevue A-
89
2K 36
247 Coggon A-
89
701 41
248 Indianola A-
88.9
36K 18
249 Charles City A-
88.9
7K 4
250 Columbus Junction A-
88.9
2K 7
251 Remsen A-
88.9
2K 12
252 Shellsburg A-
88.9
961 53
253 Primghar A-
88.9
896 4
254 Peosta A-
88.8
3K 65
255 Atkins A-
88.7
2K 32
256 Tabor A-
88.7
1K 6
257 Elkhart A-
88.7
882 12
258 Fontanelle A-
88.7
670 2
259 Seymour A-
88.6
637 4
260 Red Oak A-
88.5
6K 79
261 Shelby A-
88.5
727 18
262 Everly A-
88.5
575 66
263 Marshalltown A-
88.4
28K 45
264 Emmetsburg A-
88.3
4K 3
265 Akron A-
88.3
2K 15
266 Maquoketa A-
88.2
6K 38
267 Ackley A-
88.2
2K 8
268 Dysart A-
88.2
1K 4
269 Fayette A-
88.2
1K 2
270 Blairstown A-
88.1
738 9
271 Williamsburg A-
88
3K 15
272 Dumont A-
88
635 4
273 Colfax A-
87.9
2K 12
274 Baxter A-
87.9
1K 8
275 Sutherland A-
87.9
629 21
276 Montezuma A-
87.8
3K 14
277 Aplington A-
87.8
1K 11
278 Minden A-
87.8
598 10
279 Ireton A-
87.7
6K 19
280 Shell Rock A-
87.7
1K 2
281 Glidden A-
87.7
1K 7
282 Waterloo A-
87.6
70K 23
283 Sibley A-
87.6
3K 4
284 Minburn A-
87.5
13K 14
285 Cherokee A-
87.5
10K 45
286 Hampton A-
87.5
4K 36
287 Hull A-
87.5
2K 3
288 Monona A-
87.5
1K 4
289 Treynor A-
87.5
1K 7
290 Allison A-
87.5
966 4
291 Boyden A-
87.5
701 5
292 Keokuk A-
87.4
10K 8
293 Sioux Center A-
87.4
8K 4
294 Corydon A-
87.4
2K 149
295 Elgin A-
87.4
685 7
296 Atlantic A-
87.3
7K 2
297 Ventura A-
87.3
716 3
298 Stratford A-
87.3
707 13
299 Keystone A-
87.3
599 33
300 Pella A-
87.2
11K 85
301 Corning A-
87.2
2K 129
302 Dunkerton A-
87.2
842 30
303 Sheffield A-
87.1
1K 8
304 Maxwell A-
87.1
859 10
305 Whittemore A-
87.1
522 10
306 Grimes A-
87
16K 24
307 Orange City A-
87
6K 5
308 Carlisle A-
87
4K 11
309 Titonka A-
87
511 4
310 Panora A-
86.9
4K 100
311 Manson A-
86.9
2K 33
312 Urbana A-
86.7
2K 1
313 Griswold A-
86.7
1K 13
314 Readlyn A-
86.7
845 1
315 Agency A-
86.7
620 1
316 Swea City A-
86.7
584 1
317 Postville A-
86.6
3K 8
318 Dunlap A-
86.6
1K 16
319 Carter Lake A-
86.5
4K 20
320 Bloomfield A-
86.4
3K 88
321 Leon A-
86.4
2K 27
322 Hills A-
86.4
863 2
323 Ellsworth A-
86.3
514 14
324 Buffalo A-
86.2
1K 74
325 Oskaloosa A-
86
23K 37
326 Tama A-
86
8K 44
327 Mediapolis A-
86
2K 15
328 Marion A-
85.9
43K 98
329 Zearing A-
85.9
528 28
330 Granger A-
85.8
2K 7
331 Arnolds Park A-
85.7
1K 1
332 Moville A-
85.6
2K 75
333 Tripoli A-
85.6
1K 2
334 Riverside A-
85.6
1K 31
335 Guthrie Center A-
85.5
2K 3
336 Clinton A-
85.4
25K 2
337 Madrid A-
85.4
3K 7
338 Ruthven A-
85.4
779 1
339 Mason City A-
85.3
27K 143
340 Fairfield A-
85.3
10K 28
341 Creston A-
85.1
28K 27
342 Des Moines B+
85
247K 35
343 Pomeroy A-
85
671 9
344 Middle Amana B+
84.9
1K 6
345 Armstrong B+
84.9
875 26
346 Rock Valley B+
84.8
6K 34
347 Gilbert B+
84.8
1K 40
348 Mcgregor B+
84.8
747 21
349 Tiffin B+
84.7
5K 25
350 Kalona B+
84.7
3K 26
351 Elk Horn B+
84.7
631 9
352 Malvern B+
84.6
1K 17
353 Centerville B+
84.5
38K 75
354 Burlington B+
84.5
26K 26
355 Polk City B+
84.5
7K 2
356 Nora Springs B+
84.5
1K 3
357 Lamoni B+
84.4
2K 27
358 Fonda B+
84.3
636 6
359 Moravia B+
84.1
637 15
360 Ottumwa B+
84
43K 31
361 Osage B+
84
4K 13
362 Britt B+
84
2K 3
363 Altoona B+
83.9
20K 37
364 Waverly B+
83.7
11K 30
365 West Burlington B+
83.7
4K 31
366 Stanwood B+
83.6
637 4
367 Woodbine B+
83.5
2K 8
368 Sioux Rapids B+
83.4
920 25
369 Eldridge B+
83.2
9K 51
370 Doon B+
83.1
619 69
371 Clermont B+
83.1
586 31
372 Delhi B+
83
509 110
373 Council Bluffs B+
82.9
64K 45
374 Donnellson B+
82.7
885 48
375 Elkader B+
82.6
1K 36
376 Slater B+
82.5
2K 11
377 Rockwell City B+
82.4
3K 22
378 Washington B+
82.2
7K 96
379 Rock Rapids B+
82.2
6K 36
380 Neola B+
81.8
906 35
381 West Des Moines B+
81.6
69K 31
382 Parkersburg B+
81.6
2K 3
383 Ames B+
81.5
97K 70
384 Johnston B+
80.9
25K 45
385 Hospers B+
80.8
4K 25
386 Lisbon B+
80.8
2K 86
387 Lone Tree B+
80.6
1K 17
388 Decorah B+
80.5
8K 82
389 Wapello B+
80.5
2K 94
390 Early B+
80.5
587 30
391 Reinbeck B+
80.4
2K 8
392 Urbandale B+
80.2
46K 8
393 Belle Plaine B+
80.1
2K 10
394 Carroll B
79.8
10K 2
395 Forest City B
79.8
4K 94
396 Center Point B
79.8
3K 43
397 Woodward B
79.8
2K 46
398 Iowa Falls B
79.7
5K 15
399 West Branch B
79.3
3K 18
400 Knoxville B
79.2
15K 8
401 Jewell B
79.2
1K 4
402 Clarinda B
78.8
9K 78
403 Algona B
78.8
5K 67
404 Princeton B
78.8
923 67
405 Boone B
78.7
13K 44
406 Sidney B
78.4
1K 21
407 Osceola B
78.2
6K 39
408 De Soto B
78.2
960 25
409 Ankeny B
77.7
77K 99
410 Sioux City B
77.3
86K 35
411 Coralville B
77.3
22K 104
412 Scranton B
76.2
504 21
413 Anamosa B-
74.8
6K 35
414 Chariton B-
74.4
4K 98
415 Hiawatha B-
73.2
7K 64
416 Marengo B-
71.1
2K 55
417 North Liberty B-
70
21K 120
418 Victor C+
68.7
875 19
419 Missouri Valley C+
66.3
3K 79
420 Oxford C+
65.2
1K 114
421 Blue Grass C
60.6
920 363
422 Davenport C-
55
148K 143
423 Grinnell D+
54.5
10K 23
424 Fort Dodge D+
50.4
27K 271
425 Monticello D
46
4K 265
426 Cedar Rapids D
45.5
142K 365
427 Solon F
44
4K 364
428 Dubuque F
42.5
60K 354
429 Iowa City F
42
97K 691
430 Muscatine F
36.9
27K 320
Counties

Browse Iowa counties

Adair 4 cities · avg 90.8 Adams 2 cities · avg 91.2 Allamakee 3 cities · avg 90.3 Appanoose 2 cities · avg 87 Audubon 2 cities · avg 90.7 Benton 9 cities · avg 88.4 Black Hawk 8 cities · avg 90 Boone 5 cities · avg 86.2 Bremer 5 cities · avg 89.9 Buchanan 4 cities · avg 92.8 Buena Vista 6 cities · avg 89.1 Butler 8 cities · avg 88.3 Calhoun 4 cities · avg 86.3 Carroll 6 cities · avg 88.8 Cass 3 cities · avg 88.8 Cedar 7 cities · avg 88.3 Cerro Gordo 4 cities · avg 88.8 Cherokee 3 cities · avg 90.6 Chickasaw 3 cities · avg 90.9 Clarke 2 cities · avg 85.9 Clay 2 cities · avg 89.3 Clayton 7 cities · avg 88.7 Clinton 5 cities · avg 89.6 Crawford 4 cities · avg 93.2 Dallas 11 cities · avg 88.4 Davis 1 city · avg 86.4 Decatur 4 cities · avg 86.4 Delaware 4 cities · avg 89.3 Des Moines 4 cities · avg 85.8 Dickinson 5 cities · avg 91 Dubuque 7 cities · avg 85.6 Emmet 2 cities · avg 88 Fayette 5 cities · avg 88.3 Floyd 3 cities · avg 89.8 Franklin 2 cities · avg 87.3 Fremont 3 cities · avg 86.9 Greene 3 cities · avg 86.9 Grundy 5 cities · avg 89.3 Guthrie 2 cities · avg 86.2 Hamilton 3 cities · avg 85.2 Hancock 3 cities · avg 88.4 Hardin 6 cities · avg 89.5 Harrison 4 cities · avg 82.5 Henry 4 cities · avg 92.8 Howard 3 cities · avg 94.9 Humboldt 2 cities · avg 92.8 Ida 3 cities · avg 89.7 Iowa 6 cities · avg 82.7 Jackson 4 cities · avg 90.3 Jasper 7 cities · avg 91.3 Jefferson 1 city · avg 85.3 Johnson 8 cities · avg 68.8 Jones 4 cities · avg 76 Keokuk 5 cities · avg 92.3 Kossuth 5 cities · avg 87.1 Lee 5 cities · avg 89 Linn 14 cities · avg 84.9 Louisa 3 cities · avg 87 Lucas 1 city · avg 74.4 Lyon 5 cities · avg 88 Madison 4 cities · avg 89.9 Mahaska 2 cities · avg 89.8 Marion 4 cities · avg 87.9 Marshall 6 cities · avg 90.8 Mills 2 cities · avg 89.9 Mitchell 2 cities · avg 88.8 Monona 3 cities · avg 90.9 Monroe 1 city · avg 91.6 Montgomery 2 cities · avg 91.5 Muscatine 3 cities · avg 73.2 O'Brien 5 cities · avg 91.4 Osceola 3 cities · avg 88.4 Page 3 cities · avg 87.2 Palo Alto 4 cities · avg 90.8 Plymouth 6 cities · avg 89.9 Pocahontas 4 cities · avg 91 Polk 12 cities · avg 85.4 Pottawattamie 9 cities · avg 88.4 Poweshiek 2 cities · avg 71.2 Ringgold 1 city · avg 91.2 Sac 6 cities · avg 89.8 Scott 7 cities · avg 78.3 Shelby 4 cities · avg 88.2 Sioux 9 cities · avg 87.2 Story 12 cities · avg 89 Tama 6 cities · avg 91 Taylor 3 cities · avg 89.7 Van Buren 2 cities · avg 90.8 Wapello 3 cities · avg 86.8 Warren 3 cities · avg 90.2 Washington 6 cities · avg 88 Wayne 2 cities · avg 88 Webster 4 cities · avg 81.5 Winnebago 3 cities · avg 87.5 Winneshiek 3 cities · avg 87.3 Woodbury 7 cities · avg 88.6 Worth 2 cities · avg 91.6 Wright 5 cities · avg 92.4
ZIP Codes

Browse Iowa by ZIP code

Look up water quality by ZIP code to find the systems serving your area.

View all Iowa ZIP codes →
FAQ

Frequently asked questions about Iowa's water

Is Iowa's tap water safe to drink?

Iowa's water quality varies by city. The statewide average grade is A- (87.8/100). 97% of cities scored an A or B, while 2% received a D or F. Check your specific city for detailed results.

Which Iowa cities have the best water quality?

The top-rated cities are Asbury (A+), Cresco (A+), Rockford (A+). These cities scored highest based on violation history, lead levels, PFAS contamination, and regulatory compliance.

Which Iowa cities have the worst water quality?

The lowest-rated cities are Muscatine (F), Iowa City (F), Dubuque (F). We recommend residents in these areas consider water filtration and review their city's specific contaminant data.

How many Iowa cities have PFAS in their water?

111 out of 430 cities tested positive for PFAS "forever chemicals" (26%). 7 cities exceed the 2024 EPA maximum contaminant levels. Reverse osmosis or activated carbon filters can help reduce PFAS exposure.

Do any Iowa cities have dangerous lead levels?

2 cities exceed the EPA lead action level of 15 ppb. Lead contamination typically comes from aging pipes and lead service lines rather than the water source itself. An NSF 53-certified filter can effectively remove lead from tap water.

Share this reportHelp others learn about their water quality
WhatsAppXFacebookLinkedInEmail