North Carolina Tap Water Quality Report
476 cities analyzed • 8,282,725 people served
Updated March 2026 • Data from EWG & EPA SDWIS
Most Common Contaminants in North Carolina
| Contaminant | Found In | % of Cities |
|---|---|---|
| Total trihalomethanes (TTHMs) carcinogen | 393 of 476 | 83% |
| Haloacetic acids (HAA5) carcinogen | 379 of 476 | 80% |
| Chloroform carcinogen | 376 of 476 | 79% |
| Bromodichloromethane carcinogen | 372 of 476 | 78% |
| Dichloroacetic acid carcinogen | 366 of 476 | 77% |
| Trichloroacetic acid carcinogen | 342 of 476 | 72% |
| Dibromochloromethane carcinogen | 327 of 476 | 69% |
| Fluoride | 251 of 476 | 53% |
| Manganese | 246 of 476 | 52% |
| Monochloroacetic acid | 207 of 476 | 43% |
City-by-City Water Quality Rankings
Ranked by number of contaminants above EWG health guidelines (most to fewest).
| # | City | Detected | Above Guidelines | Above Legal | People Served |
|---|---|---|---|---|---|
| 1 | Wilmington | 37 | 22 | 1 | 180,516 |
| 2 | Lillington | 35 | 21 | 1 | 109,415 |
| 3 | Holly Springs | 35 | 21 | 2 | 45,058 |
| 4 | Angier | 35 | 21 | 2 | 8,468 |
| 5 | Coats | 35 | 21 | 1 | 2,831 |
| 6 | Linden | 35 | 21 | 1 | 2,077 |
| 7 | Wrightsville Beach | 38 | 20 | 1 | 5,300 |
| 8 | Carthage | 33 | 19 | 0 | 29,509 |
| 9 | Bolivia | 33 | 18 | 2 | 152,030 |
| 10 | Oak Island | 33 | 18 | 1 | 23,896 |
| 11 | Ocean Isle Beach | 33 | 18 | 2 | 7,925 |
| 12 | City Of Southport | 33 | 18 | 2 | 6,447 |
| 13 | Holden Beach | 33 | 18 | 2 | 6,358 |
| 14 | Fuquay-varina | 27 | 17 | 2 | 39,065 |
| 15 | Goldsboro | 31 | 17 | 1 | 34,959 |
| 16 | Burgaw | 31 | 17 | 0 | 30,506 |
| 17 | Rockingham | 30 | 17 | 0 | 22,021 |
| 18 | Dunn | 30 | 17 | 2 | 12,088 |
| 19 | Bell Arthur | 31 | 17 | 0 | 10,635 |
| 20 | Seymour Johnson | 31 | 17 | 1 | 6,875 |
| 21 | Ellerbe | 31 | 17 | 0 | 1,640 |
| 22 | Falcon | 30 | 17 | 2 | 714 |
| 23 | Pfafftown | 27 | 16 | 0 | 374,403 |
| 24 | Greensboro | 32 | 16 | 2 | 318,057 |
| 25 | Fayetteville | 30 | 16 | 3 | 214,137 |
| 26 | Fort Liberty | 26 | 16 | 2 | 65,000 |
| 27 | Bald Head Island | 33 | 16 | 1 | 3,291 |
| 28 | Tabor City | 33 | 16 | 0 | 3,277 |
| 29 | Stokesdale | 27 | 16 | 0 | 2,268 |
| 30 | Stedman | 30 | 16 | 3 | 1,506 |
| 31 | Gaffney | 27 | 16 | 2 | 1,257 |
| 32 | Danbury | 28 | 16 | 0 | 420 |
| 33 | Welcome | 27 | 15 | 0 | 163,586 |
| 34 | Smithfield | 28 | 15 | 1 | 70,549 |
| 35 | Sanford | 30 | 15 | 2 | 47,302 |
| 36 | Mocksville | 26 | 15 | 0 | 29,947 |
| 37 | Kinston | 32 | 15 | 1 | 27,475 |
| 38 | Asheboro | 26 | 15 | 2 | 27,191 |
| 39 | Clayton | 30 | 15 | 2 | 25,444 |
| 40 | Pittsboro | 27 | 15 | 0 | 22,948 |
| 41 | Deep Run | 30 | 15 | 1 | 13,332 |
| 42 | Selma | 26 | 15 | 2 | 12,900 |
| 43 | Elon | 27 | 15 | 2 | 11,350 |
| 44 | Winterville | 28 | 15 | 0 | 10,462 |
| 45 | Stokes | 29 | 15 | 0 | 3,327 |
| 46 | Grifton | 27 | 15 | 1 | 2,982 |
| 47 | Four Oaks | 28 | 15 | 1 | 2,776 |
| 48 | Broadway | 30 | 15 | 2 | 1,783 |
| 49 | Goldston | 30 | 15 | 2 | 1,285 |
| 50 | Greenville | 28 | 14 | 0 | 103,140 |
| 51 | Carrboro | 20 | 14 | 2 | 86,300 |
| 52 | Apex | 28 | 14 | 0 | 70,272 |
| 53 | Lumberton | 33 | 14 | 0 | 65,303 |
| 54 | Burlington | 25 | 14 | 2 | 59,287 |
| 55 | Thomasville | 24 | 14 | 0 | 27,485 |
| 56 | Archdale | 24 | 14 | 2 | 12,700 |
| 57 | Gibsonville | 26 | 14 | 2 | 8,920 |
| 58 | Farmville | 28 | 14 | 0 | 8,458 |
| 59 | Ayden | 27 | 14 | 0 | 6,366 |
| 60 | Elm City | 25 | 14 | 0 | 1,450 |
| 61 | Alamance | 26 | 14 | 2 | 1,100 |
| 62 | Evergreen | 33 | 14 | 0 | 165 |
| 63 | Whitsett | 25 | 14 | 2 | 89 |
| 64 | Raleigh | 25 | 13 | 0 | 620,000 |
| 65 | Cary | 27 | 13 | 0 | 212,000 |
| 66 | Monroe | 22 | 13 | 0 | 145,019 |
| 67 | Mebane | 23 | 13 | 2 | 18,579 |
| 68 | Graham | 23 | 13 | 2 | 18,057 |
| 69 | Hamlet | 22 | 13 | 2 | 10,289 |
| 70 | Warrenton | 19 | 13 | 0 | 9,654 |
| 71 | Nashville | 27 | 13 | 2 | 5,881 |
| 72 | Wingate | 22 | 13 | 0 | 3,950 |
| 73 | Haw River | 25 | 13 | 2 | 2,450 |
| 74 | Sharpsburg | 27 | 13 | 2 | 1,945 |
| 75 | Whitakers | 27 | 13 | 2 | 869 |
| 76 | Wade | 17 | 13 | 0 | 835 |
| 77 | High Point | 29 | 12 | 1 | 116,270 |
| 78 | Concord | 21 | 12 | 1 | 112,212 |
| 79 | Rocky Mount | 27 | 12 | 2 | 55,047 |
| 80 | Wilson | 25 | 12 | 0 | 50,001 |
| 81 | Kannapolis | 21 | 12 | 1 | 48,893 |
| 82 | Salisbury | 18 | 12 | 0 | 48,394 |
| 83 | Leland | 19 | 12 | 0 | 45,748 |
| 84 | Camp Lejeune | 18 | 12 | 0 | 37,500 |
| 85 | Morganton | 17 | 12 | 0 | 26,576 |
| 86 | Raeford | 22 | 12 | 0 | 24,899 |
| 87 | Kill Devil Hills | 18 | 12 | 0 | 22,766 |
| 88 | Lexington | 21 | 12 | 0 | 19,200 |
| 89 | Elizabeth City | 22 | 12 | 0 | 19,187 |
| 90 | Butner | 19 | 12 | 2 | 17,232 |
| 91 | Roanoke Rapids | 24 | 12 | 0 | 16,615 |
| 92 | Eden | 17 | 12 | 0 | 15,023 |
| 93 | Henderson | 19 | 12 | 0 | 14,998 |
| 94 | Mt Gilead | 22 | 12 | 0 | 14,710 |
| 95 | Reidsville | 21 | 12 | 0 | 14,087 |
| 96 | Tarboro | 18 | 12 | 0 | 12,845 |
| 97 | Edenton | 16 | 12 | 0 | 10,762 |
| 98 | Oxford | 20 | 12 | 0 | 8,721 |
| 99 | Siler City | 19 | 12 | 1 | 8,474 |
| 100 | Glen Alpine | 17 | 12 | 0 | 5,362 |
| 101 | Maiden | 22 | 12 | 0 | 5,275 |
| 102 | Benson | 19 | 12 | 2 | 4,259 |
| 103 | Troy | 22 | 12 | 0 | 3,591 |
| 104 | Landis | 21 | 12 | 1 | 3,200 |
| 105 | Nags Head | 18 | 12 | 0 | 3,125 |
| 106 | Manteo | 18 | 12 | 0 | 2,638 |
| 107 | Pine Level | 17 | 12 | 0 | 2,413 |
| 108 | Kenly | 24 | 12 | 0 | 2,301 |
| 109 | Walnut Cove | 15 | 12 | 0 | 2,210 |
| 110 | Robbins | 22 | 12 | 0 | 1,579 |
| 111 | Littleton | 19 | 12 | 1 | 1,540 |
| 112 | Mt. Gilead | 22 | 12 | 0 | 1,463 |
| 113 | Princeton | 24 | 12 | 0 | 1,326 |
| 114 | Pink Hill | 26 | 12 | 1 | 950 |
| 115 | Star | 22 | 12 | 0 | 933 |
| 116 | Candor | 22 | 12 | 0 | 875 |
| 117 | Grover | 21 | 12 | 0 | 694 |
| 118 | Peachland | 26 | 12 | 1 | 423 |
| 119 | Shallotte | 19 | 12 | 2 | 302 |
| 120 | Biscoe | 22 | 12 | 0 | 0 |
| 121 | Drexel | 17 | 12 | 0 | 0 |
| 122 | Mooresville | 22 | 11 | 0 | 47,531 |
| 123 | New Bern | 19 | 11 | 0 | 36,830 |
| 124 | Statesville | 22 | 11 | 0 | 28,844 |
| 125 | Washington | 13 | 11 | 0 | 22,467 |
| 126 | Bayboro | 17 | 11 | 0 | 19,665 |
| 127 | Harrisburg | 16 | 11 | 0 | 19,439 |
| 128 | Laurinburg | 16 | 11 | 0 | 18,288 |
| 129 | Albemarle | 21 | 11 | 1 | 17,368 |
| 130 | Wadesboro | 25 | 11 | 1 | 13,880 |
| 131 | Kings Mountain | 20 | 11 | 0 | 13,484 |
| 132 | Lincolnton | 26 | 11 | 0 | 12,453 |
| 133 | Millers Creek | 16 | 11 | 0 | 12,202 |
| 134 | Roxboro | 17 | 11 | 0 | 10,832 |
| 135 | Mount Airy | 18 | 11 | 0 | 10,314 |
| 136 | Black Mountain | 22 | 11 | 0 | 10,125 |
| 137 | Williamston | 15 | 11 | 0 | 7,650 |
| 138 | Stanley | 18 | 11 | 0 | 5,453 |
| 139 | Long View | 20 | 11 | 0 | 5,244 |
| 140 | Richfield | 22 | 11 | 1 | 4,316 |
| 141 | Marshville | 25 | 11 | 1 | 3,163 |
| 142 | Pilot Mountain | 21 | 11 | 0 | 1,976 |
| 143 | Weldon | 16 | 11 | 1 | 1,402 |
| 144 | Norlina | 16 | 11 | 0 | 1,108 |
| 145 | Lilesville | 25 | 11 | 1 | 900 |
| 146 | Pikeville | 20 | 11 | 0 | 896 |
| 147 | Polkton | 25 | 11 | 1 | 838 |
| 148 | Morven | 25 | 11 | 1 | 512 |
| 149 | Cove City | 19 | 11 | 0 | 440 |
| 150 | Sims | 13 | 11 | 1 | 440 |
| 151 | Barium Spring | 23 | 11 | 0 | 244 |
| 152 | Ansonville | 25 | 11 | 1 | 0 |
| 153 | Salemburg | 13 | 11 | 0 | 0 |
| 154 | Charlotte | 19 | 10 | 0 | 1,122,276 |
| 155 | Durham | 23 | 10 | 1 | 321,414 |
| 156 | Gastonia | 17 | 10 | 0 | 91,491 |
| 157 | Hickory | 20 | 10 | 0 | 65,707 |
| 158 | Denver | 20 | 10 | 0 | 46,139 |
| 159 | Pinebluff | 15 | 10 | 0 | 25,382 |
| 160 | Forest City | 19 | 10 | 0 | 21,366 |
| 161 | Halifax | 16 | 10 | 0 | 20,250 |
| 162 | Kenansville | 19 | 10 | 0 | 18,542 |
| 163 | Mount Holly | 16 | 10 | 0 | 17,780 |
| 164 | Rutherfordton | 18 | 10 | 0 | 17,093 |
| 165 | Conover | 20 | 10 | 0 | 15,540 |
| 166 | Hillsborough | 16 | 10 | 0 | 15,238 |
| 167 | Havelock | 14 | 10 | 0 | 14,550 |
| 168 | Windsor | 23 | 10 | 0 | 12,893 |
| 169 | Carolina Beach | 21 | 10 | 0 | 12,294 |
| 170 | Elizabethtown | 21 | 10 | 0 | 12,014 |
| 171 | Spring Lake | 13 | 10 | 0 | 11,725 |
| 172 | Gatesville | 14 | 10 | 0 | 11,621 |
| 173 | Snow Hill | 12 | 10 | 0 | 10,183 |
| 174 | Denton | 16 | 10 | 0 | 7,899 |
| 175 | Dallas | 17 | 10 | 0 | 7,422 |
| 176 | Jamestown | 16 | 10 | 1 | 6,543 |
| 177 | Ahoskie | 17 | 10 | 0 | 5,479 |
| 178 | Swan Quarter | 13 | 10 | 0 | 5,256 |
| 179 | Kure Beach | 12 | 10 | 0 | 5,110 |
| 180 | Emerald Isle | 13 | 10 | 0 | 4,995 |
| 181 | Des Peres | 13 | 10 | 0 | 4,849 |
| 182 | Norwood | 15 | 10 | 1 | 4,229 |
| 183 | Lowell | 18 | 10 | 0 | 3,725 |
| 184 | Oakboro | 15 | 10 | 0 | 3,173 |
| 185 | Scotland Neck | 16 | 10 | 0 | 2,761 |
| 186 | Maxton | 11 | 10 | 1 | 2,353 |
| 187 | Ellenboro | 20 | 10 | 0 | 2,258 |
| 188 | Mt. Pleasant | 16 | 10 | 0 | 2,194 |
| 189 | Bostic | 20 | 10 | 0 | 1,867 |
| 190 | Freemont | 20 | 10 | 0 | 1,265 |
| 191 | Wagram | 13 | 10 | 2 | 965 |
| 192 | High Shoals | 20 | 10 | 0 | 729 |
| 193 | Inman | 18 | 10 | 0 | 671 |
| 194 | Mcadenville | 17 | 10 | 0 | 470 |
| 195 | Maury | 12 | 10 | 0 | 468 |
| 196 | Robersonville | 13 | 10 | 0 | 419 |
| 197 | Chesnee | 13 | 10 | 0 | 330 |
| 198 | Godwin | 14 | 10 | 0 | 275 |
| 199 | Glen Allen | 11 | 10 | 1 | 178 |
| 200 | Bessemer City | 21 | 10 | 1 | 0 |
| 201 | Asheville | 17 | 9 | 0 | 156,720 |
| 202 | Jacksonville | 22 | 9 | 0 | 144,155 |
| 203 | Lawndale | 17 | 9 | 0 | 56,596 |
| 204 | King | 18 | 9 | 0 | 23,198 |
| 205 | Lenoir | 16 | 9 | 0 | 23,192 |
| 206 | Shelby | 14 | 9 | 0 | 21,826 |
| 207 | Cherry Point | 11 | 9 | 0 | 17,144 |
| 208 | Belmont | 15 | 9 | 0 | 15,010 |
| 209 | Hiddenite | 13 | 9 | 0 | 13,445 |
| 210 | Clinton | 13 | 9 | 0 | 12,459 |
| 211 | 252-426-4034 | 15 | 9 | 0 | 11,314 |
| 212 | White Lake | 12 | 9 | 0 | 5,862 |
| 213 | Wallace | 12 | 9 | 0 | 5,825 |
| 214 | Boiling Springs | 15 | 9 | 0 | 4,769 |
| 215 | Louisburg | 13 | 9 | 0 | 3,341 |
| 216 | Topsail Beach | 13 | 9 | 0 | 3,198 |
| 217 | Columbia | 12 | 9 | 0 | 3,177 |
| 218 | Lagrange | 10 | 9 | 0 | 3,167 |
| 219 | River Bend | 10 | 9 | 0 | 2,846 |
| 220 | Hertford | 15 | 9 | 0 | 2,145 |
| 221 | Hayesville | 10 | 9 | 0 | 1,870 |
| 222 | Faison | 10 | 9 | 0 | 1,410 |
| 223 | Stoneville | 15 | 9 | 0 | 1,308 |
| 224 | Rich Square | 10 | 9 | 0 | 1,067 |
| 225 | Ronda | 14 | 9 | 0 | 938 |
| 226 | Pollocksville | 12 | 9 | 0 | 858 |
| 227 | Harrellsville | 12 | 9 | 0 | 843 |
| 228 | Aurora | 14 | 9 | 1 | 805 |
| 229 | Woodland | 10 | 9 | 0 | 767 |
| 230 | Teachey | 12 | 9 | 0 | 663 |
| 231 | Riegel Wood | 12 | 9 | 0 | 609 |
| 232 | Cornelius | 11 | 9 | 0 | 561 |
| 233 | Parkton | 12 | 9 | 0 | 487 |
| 234 | Powellsville | 10 | 9 | 0 | 482 |
| 235 | Stovall | 11 | 9 | 0 | 450 |
| 236 | Riegelwood | 12 | 9 | 0 | 422 |
| 237 | Farmington Hills | 12 | 9 | 0 | 254 |
| 238 | Walstonburg | 12 | 9 | 0 | 240 |
| 239 | Clemmons | 11 | 9 | 0 | 187 |
| 240 | Mountain Home | 9 | 9 | 0 | 124 |
| 241 | Castle Hayne | 10 | 9 | 0 | 86 |
| 242 | Boonville | 11 | 9 | 0 | 0 |
| 243 | Newton Grove | 13 | 9 | 0 | 0 |
| 244 | Autryville | 10 | 9 | 0 | 0 |
| 245 | Marshall | 10 | 9 | 0 | 0 |
| 246 | Randleman | 17 | 8 | 2 | 367,681 |
| 247 | Youngsville | 10 | 8 | 0 | 24,612 |
| 248 | Boone | 15 | 8 | 0 | 19,667 |
| 249 | Newton | 15 | 8 | 0 | 17,592 |
| 250 | Maple | 11 | 8 | 0 | 17,430 |
| 251 | Valdese | 18 | 8 | 0 | 13,571 |
| 252 | Aberdeen | 14 | 8 | 0 | 12,241 |
| 253 | Weaverville | 9 | 8 | 0 | 8,145 |
| 254 | Winton | 11 | 8 | 0 | 7,970 |
| 255 | Cullowhee | 9 | 8 | 0 | 7,800 |
| 256 | Whiteville | 12 | 8 | 0 | 7,663 |
| 257 | Cherryville | 11 | 8 | 0 | 6,353 |
| 258 | Jackson | 10 | 8 | 0 | 5,715 |
| 259 | Chinquapin | 10 | 8 | 0 | 4,686 |
| 260 | Elkin | 12 | 8 | 0 | 4,018 |
| 261 | Wilkesboro | 10 | 8 | 0 | 3,705 |
| 262 | Moravian Falls | 11 | 8 | 0 | 3,455 |
| 263 | Warsaw | 10 | 8 | 0 | 3,151 |
| 264 | New London | 13 | 8 | 0 | 2,743 |
| 265 | Liberty | 16 | 8 | 1 | 2,655 |
| 266 | Corolla | 10 | 8 | 0 | 2,600 |
| 267 | Lake Waccamaw | 10 | 8 | 0 | 2,469 |
| 268 | Enfield | 10 | 8 | 0 | 2,319 |
| 269 | Rutherford College | 18 | 8 | 0 | 2,083 |
| 270 | Sparta | 11 | 8 | 0 | 1,900 |
| 271 | Saluda | 16 | 8 | 0 | 1,808 |
| 272 | Aulander | 9 | 8 | 0 | 1,438 |
| 273 | Stantonsburg | 11 | 8 | 0 | 1,275 |
| 274 | Bunn | 11 | 8 | 0 | 915 |
| 275 | Lucama | 11 | 8 | 0 | 881 |
| 276 | Cleveland | 8 | 8 | 0 | 872 |
| 277 | Fallston | 17 | 8 | 0 | 732 |
| 278 | Wentworth | 13 | 8 | 0 | 715 |
| 279 | Bolton | 10 | 8 | 0 | 681 |
| 280 | Hobgood | 10 | 8 | 0 | 665 |
| 281 | Stanfield | 9 | 8 | 0 | 643 |
| 282 | Seaboard | 10 | 8 | 0 | 495 |
| 283 | Creswell | 11 | 8 | 0 | 482 |
| 284 | Dublin | 10 | 8 | 0 | 447 |
| 285 | Jamesville | 10 | 8 | 0 | 440 |
| 286 | Fountain | 12 | 8 | 0 | 427 |
| 287 | Hamilton | 9 | 8 | 0 | 408 |
| 288 | Grimesland | 10 | 8 | 0 | 332 |
| 289 | Marietra | 10 | 8 | 0 | 48 |
| 290 | Calypso | 9 | 8 | 0 | 0 |
| 291 | Hendersonville | 15 | 7 | 0 | 78,298 |
| 292 | Waynesville | 11 | 7 | 0 | 19,758 |
| 293 | Newport | 11 | 7 | 0 | 19,512 |
| 294 | Brevard | 8 | 7 | 0 | 10,686 |
| 295 | Maggie Valley | 8 | 7 | 0 | 9,527 |
| 296 | Trenton | 13 | 7 | 0 | 8,999 |
| 297 | N Wilkesboro | 12 | 7 | 0 | 8,150 |
| 298 | Goldboro | 13 | 7 | 0 | 7,793 |
| 299 | Sylva | 8 | 7 | 0 | 7,503 |
| 300 | Granite Falls | 10 | 7 | 0 | 7,318 |
| 301 | Plymouth | 10 | 7 | 0 | 6,693 |
| 302 | Highlands | 10 | 7 | 0 | 6,614 |
| 303 | Bridgeton | 9 | 7 | 0 | 6,325 |
| 304 | Spruce Pine | 10 | 7 | 0 | 5,661 |
| 305 | Tryon | 8 | 7 | 0 | 5,476 |
| 306 | Lake Junaluska | 11 | 7 | 0 | 4,613 |
| 307 | Red Springs | 8 | 7 | 0 | 4,493 |
| 308 | N. Wilkesboro | 12 | 7 | 0 | 4,245 |
| 309 | Taylorsville | 9 | 7 | 0 | 3,265 |
| 310 | Clyde | 9 | 7 | 0 | 3,264 |
| 311 | Mars Hill | 7 | 7 | 0 | 3,150 |
| 312 | South Mills | 7 | 7 | 0 | 3,048 |
| 313 | Ramseur | 10 | 7 | 0 | 2,893 |
| 314 | Pembroke | 9 | 7 | 0 | 2,839 |
| 315 | Chocowinity | 11 | 7 | 0 | 2,565 |
| 316 | Mayodan | 11 | 7 | 0 | 2,418 |
| 317 | Chadbourn | 9 | 7 | 0 | 2,370 |
| 318 | Jonesville | 12 | 7 | 0 | 2,360 |
| 319 | Richlands | 8 | 7 | 0 | 2,052 |
| 320 | Rose Hill | 10 | 7 | 0 | 1,867 |
| 321 | Vanceboro | 8 | 7 | 0 | 1,864 |
| 322 | Bladenboro | 8 | 7 | 0 | 1,648 |
| 323 | Clarkton | 8 | 7 | 0 | 1,500 |
| 324 | Franklinville | 10 | 7 | 0 | 1,400 |
| 325 | Beulaville | 9 | 7 | 0 | 1,326 |
| 326 | West Jefferson | 11 | 7 | 0 | 1,305 |
| 327 | Oriental | 9 | 7 | 0 | 1,136 |
| 328 | Maysville | 8 | 7 | 0 | 1,100 |
| 329 | Magnolia | 10 | 7 | 0 | 980 |
| 330 | Rhodhiss | 8 | 7 | 0 | 867 |
| 331 | Cliffside | 10 | 7 | 0 | 721 |
| 332 | Garland | 9 | 7 | 0 | 625 |
| 333 | Gibson | 7 | 7 | 0 | 589 |
| 334 | Roper | 11 | 7 | 0 | 546 |
| 335 | Swansboro | 8 | 7 | 0 | 425 |
| 336 | Pisgah Forest | 15 | 7 | 0 | 288 |
| 337 | Yadkinville | 12 | 7 | 0 | 277 |
| 338 | Pineville | 9 | 7 | 0 | 200 |
| 339 | Moyock | 11 | 7 | 0 | 122 |
| 340 | Willard | 11 | 7 | 0 | 120 |
| 341 | Robbinsville | 9 | 7 | 0 | 117 |
| 342 | Hampstead | 11 | 7 | 0 | 101 |
| 343 | Fort Mill | 9 | 7 | 0 | 100 |
| 344 | Dillsboro | 8 | 7 | 0 | 37 |
| 345 | Burnsville | 8 | 7 | 0 | 0 |
| 346 | Beech Mountain | 9 | 7 | 0 | 0 |
| 347 | Harrells | 9 | 7 | 0 | 0 |
| 348 | Atlantic Beach | 10 | 7 | 0 | 0 |
| 349 | Bryson City | 9 | 7 | 0 | 0 |
| 350 | Surf City | 8 | 6 | 0 | 9,730 |
| 351 | Marion | 9 | 6 | 0 | 9,362 |
| 352 | Troutman | 8 | 6 | 0 | 7,223 |
| 353 | Hildebran | 7 | 6 | 0 | 5,207 |
| 354 | Pine Knoll Shores | 8 | 6 | 0 | 4,656 |
| 355 | Mount Olive | 7 | 6 | 0 | 4,190 |
| 356 | Murfreesboro | 8 | 6 | 0 | 3,645 |
| 357 | St. Pauls | 6 | 6 | 0 | 2,438 |
| 358 | Belhaven | 8 | 6 | 0 | 1,960 |
| 359 | Blowing Rock | 12 | 6 | 0 | 1,637 |
| 360 | Franklinton | 8 | 6 | 0 | 1,042 |
| 361 | Newland | 9 | 6 | 0 | 999 |
| 362 | Jefferson | 10 | 6 | 0 | 653 |
| 363 | Macclesfield | 8 | 6 | 0 | 494 |
| 364 | Hubert | 7 | 6 | 0 | 470 |
| 365 | Whittier | 7 | 6 | 0 | 302 |
| 366 | Connelly Springs | 7 | 6 | 0 | 239 |
| 367 | Greer | 7 | 6 | 0 | 30 |
| 368 | La Grange | 17 | 6 | 1 | 0 |
| 369 | Ocracoke | 6 | 6 | 0 | 0 |
| 370 | Sea Level | 7 | 6 | 0 | 0 |
| 371 | Hays | 8 | 6 | 0 | 0 |
| 372 | Dobson | 9 | 6 | 0 | 0 |
| 373 | Fontana Dam | 6 | 6 | 0 | 0 |
| 374 | Morehead City | 6 | 5 | 0 | 9,420 |
| 375 | Beaufort | 6 | 5 | 0 | 4,452 |
| 376 | Faith | 8 | 5 | 0 | 1,291 |
| 377 | Virginia Beach | 5 | 5 | 0 | 559 |
| 378 | Cameron | 7 | 5 | 0 | 490 |
| 379 | Hookerton | 6 | 5 | 0 | 409 |
| 380 | Camden | 4 | 4 | 0 | 5,717 |
| 381 | Old Fort | 9 | 4 | 0 | 1,700 |
| 382 | Banner Elk | 7 | 4 | 0 | 1,407 |
| 383 | Pinetops | 6 | 4 | 0 | 1,312 |
| 384 | Saxapahaw | 8 | 4 | 0 | 994 |
| 385 | Rosman | 5 | 4 | 0 | 724 |
| 386 | Micro | 8 | 4 | 0 | 444 |
| 387 | Eastover | 4 | 4 | 0 | 305 |
| 388 | Barco | 6 | 4 | 0 | 300 |
| 389 | Chapel Hill | 4 | 4 | 0 | 255 |
| 390 | Glendale | 5 | 4 | 0 | 226 |
| 391 | Lugoff | 5 | 4 | 0 | 91 |
| 392 | Middlesex | 8 | 4 | 0 | 80 |
| 393 | Columbus | 5 | 4 | 0 | 0 |
| 394 | Linville | 3 | 3 | 0 | 2,280 |
| 395 | Elk Park | 5 | 3 | 0 | 495 |
| 396 | Mulberry | 6 | 3 | 0 | 432 |
| 397 | Seven Devils | 6 | 3 | 0 | 400 |
| 398 | Zebulon | 5 | 3 | 0 | 332 |
| 399 | Wendell | 6 | 3 | 0 | 285 |
| 400 | Pleasant Garden | 4 | 3 | 0 | 265 |
| 401 | Knightdale | 3 | 3 | 0 | 232 |
| 402 | Barnardsville | 4 | 3 | 0 | 147 |
| 403 | Englewood | 6 | 3 | 0 | 135 |
| 404 | East Bend | 5 | 3 | 0 | 97 |
| 405 | Crystal Bay | 4 | 3 | 0 | 61 |
| 406 | Hot Springs | 4 | 3 | 0 | 59 |
| 407 | Bakersville | 7 | 3 | 0 | 0 |
| 408 | Creedmoor | 4 | 3 | 0 | 0 |
| 409 | Rowland | 4 | 2 | 0 | 1,341 |
| 410 | Lake Lure | 3 | 2 | 0 | 1,176 |
| 411 | Ridgecrest | 4 | 2 | 0 | 950 |
| 412 | Garner | 3 | 2 | 0 | 755 |
| 413 | Milton | 4 | 2 | 0 | 212 |
| 414 | Claremont | 4 | 2 | 0 | 185 |
| 415 | Rtp | 3 | 2 | 0 | 162 |
| 416 | Willow Springs | 3 | 2 | 0 | 120 |
| 417 | Seneca | 3 | 2 | 0 | 104 |
| 418 | Sapphire | 3 | 2 | 0 | 81 |
| 419 | Dunwoody | 5 | 2 | 0 | 72 |
| 420 | Climax | 2 | 2 | 0 | 72 |
| 421 | Todd | 2 | 2 | 0 | 70 |
| 422 | Browns Summit | 2 | 2 | 0 | 70 |
| 423 | Ft Mill | 3 | 2 | 0 | 64 |
| 424 | Black Creek | 4 | 2 | 0 | 0 |
| 425 | Spring Hope | 1 | 1 | 0 | 1,307 |
| 426 | Marble | 4 | 1 | 0 | 999 |
| 427 | Conetoe | 3 | 1 | 0 | 990 |
| 428 | Fletcher | 3 | 1 | 0 | 965 |
| 429 | Conway | 3 | 1 | 0 | 887 |
| 430 | Waxhaw | 3 | 1 | 0 | 790 |
| 431 | Roaring Gap | 2 | 1 | 0 | 470 |
| 432 | Birmingham | 4 | 1 | 0 | 331 |
| 433 | Kernersville | 1 | 1 | 0 | 279 |
| 434 | Jonas Ridge | 1 | 1 | 0 | 270 |
| 435 | Madison | 2 | 1 | 0 | 250 |
| 436 | Crossnore | 3 | 1 | 0 | 195 |
| 437 | Yanceyville | 2 | 1 | 0 | 180 |
| 438 | Maitland | 2 | 1 | 0 | 165 |
| 439 | Novato | 1 | 1 | 0 | 138 |
| 440 | Sophia | 1 | 1 | 0 | 119 |
| 441 | Etowah | 2 | 1 | 0 | 75 |
| 442 | Tampa | 2 | 1 | 0 | 74 |
| 443 | Mt Airy | 2 | 1 | 0 | 71 |
| 444 | San Diego | 3 | 1 | 0 | 65 |
| 445 | Mt Holly | 2 | 1 | 0 | 58 |
| 446 | Monteray | 1 | 1 | 0 | 56 |
| 447 | Patterson | 1 | 1 | 0 | 50 |
| 448 | Horseshoe | 1 | 1 | 0 | 25 |
| 449 | Fairmont | 2 | 0 | 0 | 2,837 |
| 450 | Montreat | 1 | 0 | 0 | 798 |
| 451 | Lake Santeetlah | 0 | 0 | 0 | 498 |
| 452 | Snow Hiil | 2 | 0 | 0 | 447 |
| 453 | Cofield | 1 | 0 | 0 | 417 |
| 454 | Nebo | 2 | 0 | 0 | 343 |
| 455 | Severn | 2 | 0 | 0 | 325 |
| 456 | Canton | 1 | 0 | 0 | 300 |
| 457 | Little Switzerland | 1 | 0 | 0 | 300 |
| 458 | Franklin | 2 | 0 | 0 | 270 |
| 459 | Arden | 1 | 0 | 0 | 234 |
| 460 | Lansing | 1 | 0 | 0 | 228 |
| 461 | Candler | 2 | 0 | 0 | 210 |
| 462 | Davidson | 2 | 0 | 0 | 203 |
| 463 | Oak Ridge | 1 | 0 | 0 | 178 |
| 464 | Bailey | 0 | 0 | 0 | 123 |
| 465 | Cashiers | 0 | 0 | 0 | 122 |
| 466 | Penland | 0 | 0 | 0 | 100 |
| 467 | Mooresboro | 0 | 0 | 0 | 96 |
| 468 | Pilot Mtn | 0 | 0 | 0 | 94 |
| 469 | Blacksburg | 1 | 0 | 0 | 67 |
| 470 | Andrews | 0 | 0 | 0 | 53 |
| 471 | Murphy | 2 | 0 | 0 | 53 |
| 472 | Atlanta | 1 | 0 | 0 | 51 |
| 473 | Westfield | 0 | 0 | 0 | 39 |
| 474 | Lake Toxaway | 1 | 0 | 0 | 38 |
| 475 | Boomer | 0 | 0 | 0 | 33 |
| 476 | Almond | 0 | 0 | 0 | 0 |
Recommended Filtration for North Carolina
Based on the most common contaminants found across North Carolina (Total trihalomethanes (TTHMs), Haloacetic acids (HAA5), Chloroform), we recommend a reverse osmosis system or high-quality carbon block filter to remove disinfection byproducts and their precursors.
Echo RO System
Removes up to 99.9% of contaminants. The gold standard for drinking water in North Carolina homes.
View RO SystemsEcho Whole-Home Filter
Protect every tap in your home from chlorine, VOCs, and disinfection byproducts.
View Whole-Home FiltersEcho Hydrogen Water Flask
Once your water is clean, supercharge it with molecular hydrogen for antioxidant and anti-inflammatory benefits.
Shop Hydrogen FlaskFrequently Asked Questions
Is North Carolina tap water safe to drink?
Water quality varies significantly across North Carolina. Of the 476 cities analyzed, the average city has 8.5 contaminants above EWG health guidelines. The best water quality was found in Fairmont. We recommend checking your specific city's report for detailed information.
What city has the best water in North Carolina?
Based on our analysis, Fairmont has the fewest contaminants above EWG health guidelines in North Carolina, with 0 above guideline levels.
What city has the worst water in North Carolina?
Based on our analysis, Wilmington has the most contaminants above EWG health guidelines in North Carolina, with 22 above guideline levels.
What's the best water filter for North Carolina residents?
For most North Carolina households, we recommend a reverse osmosis (RO) system for drinking water and a whole-home filter for showers and baths. The specific recommendation depends on your city's contaminant profile — check your city's report for personalized guidance.
National Water Quality Reports
Data sources: Environmental Working Group (EWG) Tap Water Database, U.S. EPA Safe Drinking Water Information System (SDWIS)
Last updated: March 2026
Methodology: Contaminant levels are compared against both EPA legal limits (Maximum Contaminant Levels) and EWG health guidelines, which are often stricter and based on the latest scientific research.