← Minnesota overview

PFAS in Minnesota drinking water

197 community water systems tested

8.1%
of tested systems detected PFOA or PFOS
(16/197)

PFAS — “forever chemicals” — are synthetic compounds that accumulate in the body and are linked to cancer, liver damage and immune effects. In 2024 the EPA set enforceable limits of 4 parts per trillion each for PFOA and PFOS. These are the only nationwide PFAS measurements, from the EPA’s UCMR-5 program.

Water systems

PFAS value per system, 2023–2025. EPA limit — 4 ppt (0.004 µg/L) for PFOA and PFOS, set in 2024. Systems that detected PFOA or PFOS are highlighted and listed first. “Not detected” means the contaminant was measured but not found.
SystemCityPopulationPFAS (ug/L)
Hastings 23,222 0.0237 ug/L
Waite Park 8,354 0.0180 ug/L
Woodbury 82,643 0.0171 ug/L
Sauk Rapids 13,835 0.0120 ug/L
Lake Elmo 10,978 0.0120 ug/L
Brooklyn Park 89,995 0.0105 ug/L
Cloquet 12,864 0.0084 ug/L
Stillwater 19,462 0.0081 ug/L
South Saint Paul 20,664 0.0076 ug/L
Newport 4,000 0.0069 ug/L
Brooklyn Center 33,782 0.0060 ug/L
Princeton 5,421 0.0049 ug/L
White Bear Township 11,699 0.0046 ug/L
Becker 5,034 0.0046 ug/L
Alexandria 15,000 0.0044 ug/L
North Saint Paul 13,134 0.0042 ug/L
Minneapolis 425,300 Not detected
Saint Paul Regional Water Services 392,529 Not detected
Rochester 123,624 Not detected
Bloomington 91,300 Not detected
Duluth 86,859 Not detected
Maple Grove 82,000 Not detected
Plymouth 76,546 Not detected
Saint Cloud 71,321 Not detected
Blaine 70,220 Not detected
Eagan 68,223 Not detected
Lakeville 67,300 Not detected
Coon Rapids 64,000 Not detected
Eden Prairie 63,726 Not detected
Burnsville 61,747 Not detected
Minnetonka 54,474 Not detected
Edina 53,494 Not detected
Apple Valley 50,300 Not detected
Saint Louis Park 50,010 Not detected
Shakopee 47,000 Not detected
Moorhead 44,583 Not detected
Mankato 42,803 Not detected
Cottage Grove 42,760 Not detected
Richfield 36,899 Not detected
Roseville 35,343 Not detected
Inver Grove Heights 34,189 Not detected
Joint Powers Water Board 30,922 Not detected
Savage 30,285 Not detected
Oakdale 30,144 Not detected
Chaska 30,000 Not detected
Winona 27,782 Not detected
Fridley 27,476 Not detected
Rosemount 26,500 Not detected
Owatonna 26,430 Not detected
Austin Utilities 26,174 Not detected
Shoreview 26,000 Not detected
White Bear Lake 25,634 Not detected
Prior Lake 25,282 Not detected
SOUTH WATER TREATMENT PLANT (SWTP) 24,959 Not detected
Chanhassen 24,951 Not detected
Champlin 23,919 Not detected
Faribault 23,718 Not detected
Farmington 23,534 Not detected
Golden Valley 23,000 Not detected
Crystal 22,937 Not detected
New Brighton 22,902 Not detected
Columbia Heights 22,278 Not detected
Andover 21,455 Not detected
Willmar 21,045 Not detected
New Hope 20,963 Not detected
Northfield 20,790 Not detected
Sartell 20,300 Not detected
Elk River 19,532 Not detected
Hopkins 19,462 Not detected
Otsego 19,000 Not detected
Albert Lea 18,492 Not detected
Lino Lakes 17,859 Not detected
Anoka 17,798 Not detected
Ramsey 17,705 Not detected
Buffalo 16,711 Not detected
Red Wing 16,459 Not detected
Hibbing 16,028 Not detected
Bemidji 15,147 Not detected
Monticello 15,087 Not detected
Hutchinson 14,900 Not detected
Brainerd 14,670 Not detected
Robbinsdale 14,646 Not detected
North Mankato 14,448 Not detected
Rogers 14,430 Not detected
Fergus Falls 14,194 Not detected
New Ulm 14,052 Not detected
Worthington 14,052 Not detected
Marshall 13,890 Not detected
Lincoln-Pipestone Rural Water System 13,644 Not detected
Waconia 13,277 Not detected
Mounds View 13,250 Not detected
Big Lake 13,056 Not detected
Vadnais Heights 13,025 Not detected
Saint Peter 12,198 Not detected
Hugo 12,047 Not detected
Forest Lake 11,800 Not detected
Grand Rapids 11,346 Not detected
Victoria 10,546 Not detected
Fairmont 10,328 Not detected
Little Canada 10,200 Not detected