WaterVerge

Massachusetts Water Quality Rankings

280 cities ranked · Data from EPA SDWIS

79.3
State avg score
280
Cities ranked
82%
A or B grade
7%
D or F grade
263
Health violations
138
PFAS detected

Massachusetts water quality overview

Massachusetts's drinking water quality is good overall, with a state average score of 79.3 out of 100 — 5.1 points above the national average of 74.2. The median city score is 82.3, reflecting how water quality is distributed across the state's 280 ranked cities. 82% of Massachusetts cities earned an A or B grade, indicating broadly strong water quality infrastructure. Only 10 cities received a failing grade. PFAS "forever chemicals" were detected in 138 of 280 cities (49%). Of those, 103 cities exceed the 2024 EPA maximum contaminant levels — a health concern requiring action. 8 cities have lead levels exceeding the EPA action level of 15 ppb, typically a sign of aging lead service lines or lead solder in older plumbing. Residents in these areas should use an NSF 53-certified filter. 263 cities have recorded health-based violations with the EPA — meaning contaminant levels exceeded safe limits or required testing was missed. Use the table below to find your city's specific record.

How Massachusetts cities scored

41%
41%
11%
A
114
41%
Excellent
B
115
41%
Good
C
32
11%
Fair
D
9
3%
Poor
F
10
4%
Failing

Score distribution by range

138 69 0
3
10
12
26
58
138
33
0–9
10–19
20–29
30–39
40–49
50–59
60–69
70–79
80–89
90–100

State vs national average

B
Massachusetts
79.3/100
B-
National avg
74.2/100
▲ 5.1 pts above national average

Water quality across Massachusetts

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

All 280 cities in Massachusetts

# City Grade Score Score Population Violations Issues
1 Adams
A+
96.8
8K 7 Health Unresolved
2 Harwich
A+
95.9
39K 5 Health Unresolved
3 West Springfield
A
94.9
29K 16 Health Unresolved
4 Pembroke
A
94.8
18K 22 Health Unresolved
5 Newbury
A
94.8
2K 29 Health Unresolved
6 Essex
A
94.7
4K 40 Unresolved
7 Sandwich
A
94.5
79K 37 Health
8 West Newbury
A
94.5
3K 6 Health Unresolved
9 Provincetown
A
93.7
22K 11 Health Unresolved
10 Edgartown
A
93.5
8K 11 Health Unresolved
11 Dennis
A
93.2
65K 40 Health Unresolved
12 Mattapoisett
A
93
37K 12 Health Unresolved
13 Dalton
A
93
6K 44 Health Unresolved
14 Hadley
A
92.9
5K 22 Health Unresolved
15 Easthampton
A
92.6
16K 49 Health Unresolved
16 Williamsburg
A
92.5
2K 57 Health Unresolved
17 Rockport
A
92.3
10K 10 Health Unresolved
18 Douglas
A
92.1
4K 47 Health Unresolved
19 Southborough
A
92
11K 6 Health Unresolved
20 Amesbury
A
91.7
17K 28 Unresolved
21 North Andover
A
91.5
31K 13 Health Unresolved
22 Fairhaven
A
91.5
14K 10 Health Unresolved
23 Montague
A
91.5
9K 46 Health Unresolved
24 Athol
A
91.2
10K 7 Health Unresolved
25 Chatham
A
91.1
30K 68 Health Unresolved
26 Erving
A
91.1
561 6 Health Unresolved
27 Methuen
A
90.7
53K 25 Health Unresolved
28 Avon
A
90.7
5K 81 Health PFAS Unresolved
29 Weymouth
A
90.6
59K 31 Health Unresolved
30 Orange
A
90.5
7K 6 Health Unresolved
31 Southbridge
A
90.3
19K 4 Health Unresolved
32 Gloucester
A
90.2
37K 79 Health Unresolved
33 Shelburne
A
90.2
2K 17 Health Unresolved
34 South Hadley
A-
89.8
21K 73 Health Unresolved
35 Weston
A-
89.8
12K 20 Health Unresolved
36 Hancock
A-
89.8
1K 24 Health Unresolved
37 Eastham
A-
89.7
6K 1 Unresolved
38 North Brookfield
A-
89.7
4K 38 Health Unresolved
39 Ashland
A-
89.5
19K 19 Health Unresolved
40 Littleton
A-
89.5
10K 27 Health Unresolved
41 Monson
A-
89.5
4K 55 Health Unresolved
42 Hatfield
A-
89.5
3K 34 Health Unresolved
43 East Longmeadow
A-
89.4
16K 9 Health Unresolved
44 Lanesborough
A-
89.4
2K 49 Health Unresolved
45 Saugus
A-
89.2
27K 13 Health Unresolved
46 Marblehead
A-
89.2
20K 8 Health Unresolved
47 Colchester
A-
89.1
663 8 Unresolved
48 Lynn
A-
89
101K 12 Health PFAS Unresolved
49 Pittsfield
A-
89
44K 105 Health Unresolved
50 Swampscott
A-
88.8
15K 10 Health Unresolved
51 Seekonk
A-
88.8
15K 9 Health PFAS Unresolved
52 Clinton
A-
88.7
16K 23 Health Unresolved
53 Brockton
A-
88.5
106K 62 Health Unresolved
54 Northampton
A-
88.5
30K 80 Health Unresolved
55 Northbridge
A-
88.5
16K 30 Health Unresolved
56 West Stockbridge
A-
88.5
535 8 Health Unresolved
57 West Bridgewater
A-
88.4
8K 76 Health PFAS Unresolved
58 Marlborough
A-
88.3
42K 22 Health Unresolved
59 Williamstown
A-
88.3
8K 31 Health Unresolved
60 Southwick
A-
88.2
8K 110 Health Unresolved
61 Nahant
A-
88.1
3K 15 Health Unresolved
62 Groveland
A-
88
7K 38 Health PFAS Unresolved
63 Holyoke
A-
87.9
40K 31 Unresolved
64 Hamilton
A-
87.9
7K 67 Health PFAS Unresolved
65 Marion
A-
87.9
6K 24 Health Unresolved
66 Paxton
A-
87.7
4K 18 Health Unresolved
67 Wenham
A-
87.6
4K 12 Health PFAS Unresolved
68 Beverly
A-
87.5
138K 15 Unresolved
69 Salisbury
A-
87.5
20K 34 PFAS Unresolved
70 Whitman
A-
87.5
15K 21 Health Unresolved
71 Uxbridge
A-
87.5
12K 24 Health PFAS Unresolved
72 Wilbraham
A-
87.5
9K 9 Health Unresolved
73 New Bedford
A-
87.4
101K 3 Health Unresolved
74 Mendon
A-
87.3
501 90 Health Unresolved
75 Lenox
A-
87.2
10K 1 Unresolved
76 Amherst
A-
87
39K 12 Health Unresolved
77 Walpole
A-
87
24K 42 Health Unresolved
78 Egremont
A-
87
1K 41 Health Unresolved
79 Wilmington
A-
86.9
22K 31 Health Unresolved
80 Chicopee
A-
86.8
56K 7 Unresolved
81 Chelsea
A-
86.8
38K 19 Health Unresolved
82 Easton
A-
86.8
23K 4 Health PFAS Unresolved
83 Southampton
A-
86.8
5K 7 Health Unresolved
84 Agawam
A-
86.7
29K 14 Health Unresolved
85 Brookline
A-
86.6
63K 8 Health Unresolved
86 Norwood
A-
86.6
30K 10 Health Unresolved
87 Canton
A-
86.6
22K 21 Health PFAS Unresolved
88 Framingham
A-
86.5
72K 6 Health Unresolved
89 Watertown
A-
86.5
35K 8 Health Unresolved
90 Winchendon
A-
86.5
6K 52 Health Unresolved
91 Acushnet
A-
86.4
9K 94 Health Unresolved
92 Cheshire
A-
86.4
2K 49 Health Unresolved
93 Russell
A-
86.4
1K 34 Health Unresolved
94 Needham
A-
86.3
33K 49 Health PFAS Unresolved
95 Attleboro
A-
86.2
47K 16 Health PFAS Unresolved
96 Stoneham
A-
86.2
23K 18 Health Unresolved
97 Newburyport
A-
86.2
20K 37 Health PFAS Unresolved
98 Yarmouth
A-
86.1
39K 32 Health Unresolved
99 Greenfield
A-
86.1
18K 86 Health Unresolved
100 Arlington
A-
85.8
46K 7 Health Unresolved
101 Salem
A-
85.7
45K 1 Unresolved
102 Reading
A-
85.5
27K 4 Health Unresolved
103 Mansfield
A-
85.5
23K 21 Health PFAS Unresolved
104 North Reading
A-
85.5
16K 54 Health Unresolved
105 Lunenburg
A-
85.5
7K 13 Health PFAS Unresolved
106 East Brookfield
A-
85.4
2K 8 Health Unresolved
107 Quincy
A-
85.2
106K 7 Health Unresolved
108 Waltham
A-
85.2
65K 15 Health Unresolved
109 Gardner
A-
85.2
21K 47 Health Unresolved
110 Freetown
A-
85.2
2K 7 Unresolved
111 Northfield
A-
85.2
1K 128 Health Unresolved
112 Manchester
A-
85.1
5K 69 Health PFAS Unresolved
113 Gill
A-
85.1
1K 7 Unresolved
114 Foxborough
A-
85
19K 70 Health PFAS Unresolved
115 Somerville
B+
84.8
81K 15 Health Unresolved
116 Oak Bluffs
B+
84.8
24K 102 Health Unresolved
117 Hanson
B+
84.6
10K 80 Health PFAS Unresolved
118 Lowell
B+
84.5
115K 41 Health PFAS Unresolved
119 Dedham
B+
84.5
42K 4 Health PFAS Unresolved
120 Natick
B+
84.5
37K 116 Health PFAS Unresolved
121 Norton
B+
84.5
19K 15 Health PFAS Unresolved
122 Belmont
B+
84.3
27K 7 Health Unresolved
123 Millis
B+
84.3
9K 67 Health PFAS Unresolved
124 Lincoln
B+
84.2
9K 63 Health PFAS Unresolved
125 Lee
B+
84.2
6K 94 Health Unresolved
126 Whately
B+
83.9
900 12 Unresolved
127 Taunton
B+
83.8
62K 67 Health Unresolved
128 Wayland
B+
83.8
13K 58 Health PFAS Unresolved
129 Stockbridge
B+
83.5
3K 124 Health Unresolved
130 Bedford
B+
83.3
26K 96 Health Unresolved
131 Revere
B+
83.2
62K 20 Health Unresolved
132 Billerica
B+
83
42K 34 Health PFAS Unresolved
133 Hopedale
B+
83
6K 39 Health PFAS Unresolved
134 Springfield
B+
82.9
168K 22 Health Unresolved
135 Westfield
B+
82.8
42K 81 Health Unresolved
136 Andover
B+
82.8
37K 4 Health Unresolved
137 Franklin
B+
82.7
33K 21 Health PFAS Unresolved
138 Westminster
B+
82.7
4K 91 Health Unresolved
139 Dudley
B+
82.6
6K 162 Health Unresolved
140 Danvers
B+
82.5
28K 36 Health PFAS Unresolved
141 Randolph
B+
82.3
80K 21 Health PFAS Unresolved
142 Everett
B+
82.3
49K 11 Health Unresolved
143 Tisbury
B+
82.3
6K 35 Health Unresolved
144 Fitchburg
B+
82.2
42K 16 Health PFAS Unresolved
145 Concord
B+
82.2
19K 14 Health PFAS Unresolved
146 Lexington
B+
82.1
34K 10 Health Unresolved
147 Holbrook
B+
82.1
11K 19 Health PFAS Unresolved
148 Topsfield
B+
82.1
5K 51 Health PFAS Unresolved
149 Sturbridge
B+
82.1
5K 83 Health Unresolved
150 Shrewsbury
B+
82
38K 9 Health PFAS Unresolved
151 Swansea
B+
82
17K 15 Health PFAS Unresolved
152 Ashburnham
B+
82
15K 100 Health Unresolved
153 Raynham
B+
81.8
15K 5 PFAS Unresolved
154 East Bridgewater
B+
81.8
15K 59 Health PFAS Unresolved
155 Blackstone
B+
81.6
10K 78 Health PFAS Unresolved
156 Woburn
B+
81.5
41K 22 Health PFAS Unresolved
157 Duxbury
B+
81.5
16K 12 Health PFAS Unresolved
158 Lawrence
B+
81.4
89K 183 Health Unresolved
159 Groton
B+
81.4
7K 80 Health Unresolved
160 Wakefield
B+
81.2
27K 52 Health PFAS Unresolved
161 Bolton
B+
81.1
1K 42 Health Unresolved
162 Cambridge
B+
81
118K 67 Health PFAS Unresolved
163 Medfield
B+
80.9
13K 86 Health PFAS Unresolved
164 Milton
B+
80.8
29K 8 Health Unresolved
165 Burlington
B+
80.8
27K 157 Health Unresolved
166 Winthrop
B+
80.8
19K 11 Health Unresolved
167 Brewster
B+
80.7
35K 28 Health Unresolved
168 Worthington
B+
80.4
565 7 Lead Unresolved
169 Newton
B
80
89K 54 Health Unresolved
170 Norwell
B+
80
11K 14 Health PFAS Unresolved
171 Templeton
B+
80
6K 138 PFAS Unresolved
172 Northborough
B
79.8
14K 217 Health Unresolved
173 Bernardston
B
79.8
1K 214 Health Unresolved
174 Boylston
B
79.5
3K 108 Health PFAS Unresolved
175 West Boylston
B
79.4
7K 79 Health PFAS Unresolved
176 Rowley
B
79.4
6K 74 Health PFAS Unresolved
177 Braintree
B
79.1
39K 79 Health PFAS Unresolved
178 Ware
B
79.1
10K 155 Health PFAS Unresolved
179 Brookfield
B
79.1
1K 288 Health Unresolved
180 Falmouth
B
79
104K 40 Health Unresolved
181 Worcester
B
78.9
207K 16 Health Unresolved
182 Holden
B
78.8
18K 67 Health PFAS Unresolved
183 North Adams
B
78.8
13K 190 Health PFAS Unresolved
184 Dracut
B
78.7
35K 120 Health PFAS Unresolved
185 Sunderland
B
78.7
4K 237 Health Unresolved
186 Tewksbury
B
78.2
34K 142 Health PFAS Unresolved
187 Abington
B
78.1
34K 17 Health PFAS Unresolved
188 Sutton
B
78.1
3K 152 Health Unresolved
189 Merrimac
B
78
7K 208 Health PFAS Unresolved
190 Spencer
B
78
7K 113 Health Unresolved
191 Middleton
B
77.9
7K 9 PFAS Unresolved
192 Peabody
B
77.8
54K 116 Health PFAS Unresolved
193 Sterling
B
77.8
7K 110 Health PFAS Unresolved
194 Mashpee
B
77.5
37K 110 Health Unresolved
195 Stoughton
B
77.5
29K 23 Health PFAS Unresolved
196 Westford
B
77.4
19K 40 Health PFAS Unresolved
197 Ayer
B
77.4
15K 69 Health Unresolved
198 Melrose
B
77.3
29K 18 Health Unresolved
199 Leominster
B
77.2
42K 138 Health PFAS Unresolved
200 Wareham
B
77.2
27K 65 Health PFAS Unresolved
201 Somerset
B
76.9
18K 24 Health Unresolved
202 Cohasset
B
76.9
8K 48 Health PFAS Unresolved
203 Boston
B
76.8
3.3M 10 Health Lead Unresolved
204 Westport
B
76.7
615 122 Health Unresolved
205 Palmer
B
76.4
11K 87 Health Unresolved
206 Ipswich
B
76.2
13K 50 Health PFAS Unresolved
207 Webster
B
76
18K 105 Health PFAS Unresolved
208 Granby
B
75.9
727 226 Health Unresolved
209 Wellesley
B
75.8
33K 29 Health PFAS Unresolved
210 Longmeadow
B
75.8
16K 28 Health Unresolved
211 Plainville
B
75.8
9K 29 Health PFAS Unresolved
212 Orleans
B
75.6
19K 36 Health Unresolved
213 Middleborough
B
75.5
16K 108 Health PFAS Unresolved
214 Townsend
B
75.3
7K 117 Health PFAS Unresolved
215 Lynnfield
B
75.2
13K 118 Health PFAS Unresolved
216 Bourne
B-
74.8
36K 76 Health PFAS Unresolved
217 Chelmsford
B-
74.2
39K 141 Health PFAS Unresolved
218 Marshfield
B-
74.2
34K 68 Health PFAS Unresolved
219 Bellingham
B-
74
16K 38 Health PFAS Unresolved
220 Fall River
B-
73.9
94K 55 Health Unresolved
221 Lancaster
B-
72.8
6K 48 Health Lead Unresolved
222 Medway
B-
72
13K 240 Health PFAS Unresolved
223 Sudbury
B-
71.7
18K 197 Health PFAS Unresolved
224 West Brookfield
B-
71.3
3K 261 Health Unresolved
225 Pepperell
B-
71.2
9K 91 Health PFAS Unresolved
226 Belchertown
B-
70.9
4K 211 Health Unresolved
227 Hopkinton
B-
70.3
13K 170 Health PFAS Unresolved
228 Maynard
B-
70.3
10K 188 Health PFAS Unresolved
229 Malden
B-
70.2
66K 24 Health Lead Unresolved
230 Oxford
C+
69.8
8K 109 Health Unresolved
231 Wellfleet
C+
69.8
1K 192 Health Unresolved
232 Hingham
C+
69.5
46K 35 Health PFAS Unresolved
233 Preble (T)
C+
69.2
520 234 Health Unresolved
234 Bridgewater
C+
69
31K 44 Health PFAS Unresolved
235 Hinsdale
C+
68.5
2K 308 Health Unresolved
236 Great Barrington
C+
68.4
6K 136 Health Unresolved
237 Atkinson
C+
68.4
507 109 Health Lead Unresolved
238 Georgetown
C+
68.2
9K 89 Health Unresolved
239 Warren
C+
68.1
3K 369 Health Unresolved
240 Halifax
C+
67.8
8K 50 Health PFAS Unresolved
241 Deerfield
C+
67.7
6K 222 Health Unresolved
242 Dartmouth
C+
66.5
25K 21 Health PFAS Unresolved
243 Huntington
C+
66.3
2K 38 Health Unresolved
244 Hardwick
C+
65
2K 146 Health Lead Unresolved
245 Barre
C
64.9
4K 132 Health Unresolved
246 Dover
C
64.8
2K 98 Health Unresolved
247 Millbury
C
64.7
12K 52 Health PFAS Unresolved
248 Haverhill
C
64.2
63K 73 Health Unresolved
249 Chester
C
63.8
750 143 Health Unresolved
250 Kingston
C
63.5
15K 80 Health Unresolved
251 Medford
C
62.6
62K 12 Health Lead Unresolved
252 Scituate
C
61.9
19K 67 Health PFAS Unresolved
253 Shirley
C
61.8
8K 343 Health PFAS Unresolved
254 Upton
C
61.7
5K 119 Health Unresolved
255 Berlin
C
60.4
2K 416 Health Unresolved
256 Holliston
C-
59.6
16K 155 Health PFAS Unresolved
257 Carver
C-
59.3
2K 209 Health Unresolved
258 Winchester
C-
58
23K 61 Health Unresolved
259 Tyngsborough
C-
58
5K 450 Health PFAS Unresolved
260 Rutland
C-
56.6
6K 417 Health Unresolved
261 Hanover
C-
56.2
15K 42 Health PFAS Unresolved
262 Auburn
D+
54.9
15K 309 Health PFAS Unresolved
263 Sharon
D+
54.3
17K 37 Health PFAS Unresolved
264 Chilmark
D+
54.1
930 146 Health Unresolved
265 Dighton
D+
52.1
112K 54 Health PFAS Unresolved
266 Barnstable
D+
51.5
95K 136 Health PFAS Unresolved
267 Boxborough
D+
50
2K 972 Health Unresolved
268 Westborough
D
48.6
22K 81 Health PFAS Unresolved
269 Nantucket
D
47
31K 214 Health Unresolved
270 Leicester
D
45.9
9K 361 Health Unresolved
271 Harvard
F
44
2K 369 Health Unresolved
272 Plymouth
F
43.4
61K 294 Health Unresolved
273 North Attleborough
F
42.4
29K 243 Health PFAS Unresolved
274 Acton
F
42.4
21K 376 Health PFAS Unresolved
275 Hudson
F
42.2
20K 156 Health Unresolved
276 Grafton
F
41.8
14K 203 Health PFAS Unresolved
277 Norfolk
F
40.7
10K 181 Health PFAS Unresolved
278 Wrentham
F
39.5
13K 187 Health PFAS Unresolved
279 Milford
F
38.5
30K 226 Health PFAS Unresolved
280 Lee
F
36.1
654 180 Health Lead Unresolved