Guest, Sign inJoin
Minnesota rankings · Health

Healthiest towns in Minnesota

Deephaven ranks first on health among Minnesota’s 271 towns of 2,500+; 130 of the 271 grade A− or better on health nationally.

The Health grade: seven CDC PLACES estimates for adults (general, physical and mental health, obesity, diabetes, smoking, exercise). How grades work

#2

Shorewood

Hennepin County · 7,620 people
A+

Health grade, among the top in the U.S.·Overall A · #47 of 271 in MN

#3

Edina

Hennepin County · 54,356 people
A+

Health grade, among the top in the U.S.·Overall A · #79 of 271 in MN

All 271 towns

Health grade, best first (the letter is national). Towns with the same score share a rank (T = tied; 2 towns here); the overall grade and state rank are beside each.

271 towns ranked. Not here? See why a town may be missing.

#TownGradeOverall
1DeephavenHennepin County · 3,794 peopleA+among the top in the U.S.·Overall A+ · #3 of 271
2ShorewoodHennepin County · 7,620 peopleA+among the top in the U.S.·Overall A · #47 of 271
3EdinaHennepin County · 54,356 peopleA+among the top in the U.S.·Overall A · #79 of 271
4MedinaHennepin County · 7,460 peopleA+among the top in the U.S.·Overall A+ · #11 of 271
5PlymouthHennepin County · 78,942 peopleA+among the top in the U.S.·Overall A+ · #23 of 271
6WayzataHennepin County · 4,344 peopleA+among the top in the U.S.·Overall A · #59 of 271
7MinnetonkaHennepin County · 53,969 peopleA+among the top in the U.S.·Overall A · #75 of 271
8Eden PrairieHennepin County · 63,075 peopleA+among the top in the U.S.·Overall A · #54 of 271
9OronoHennepin County · 8,301 peopleA+among the top in the U.S.·Overall A · #56 of 271
10St. Louis ParkHennepin County · 50,027 peopleA+better than 98% of U.S. towns·Overall B · #180 of 271
11MinnetristaHennepin County · 9,458 peopleA+better than 98% of U.S. towns·Overall A+ · #35 of 271
12RogersHennepin County · 15,606 peopleA+better than 98% of U.S. towns·Overall A · #95 of 271
13Golden ValleyHennepin County · 21,325 peopleA+better than 98% of U.S. towns·Overall B+ · #155 of 271
14Maple GroveHennepin County · 73,893 peopleA+better than 98% of U.S. towns·Overall B+ · #161 of 271
15St. AnthonyHennepin County · 9,989 peopleA+better than 97% of U.S. towns·Overall A− · #125 of 271
16CorcoranHennepin County · 9,269 peopleA+better than 97% of U.S. towns·Overall A · #44 of 271
17Falcon HeightsRamsey County · 5,071 peopleA+better than 97% of U.S. towns·Overall A · #62 of 271
18VictoriaCarver County · 12,447 peopleA+better than 96% of U.S. towns·Overall A+ · #20 of 271
19ChanhassenCarver County · 25,748 peopleA+better than 96% of U.S. towns·Overall A · #72 of 271
20Arden HillsRamsey County · 9,583 peopleA+better than 96% of U.S. towns·Overall A+ · #28 of 271
21IndependenceHennepin County · 3,763 peopleA+better than 96% of U.S. towns·Overall A · #61 of 271
22ShoreviewRamsey County · 26,906 peopleA+better than 95% of U.S. towns·Overall A · #42 of 271
23WoodburyWashington County · 81,558 peopleA+better than 95% of U.S. towns·Overall A · #92 of 271
24GreenfieldHennepin County · 2,962 peopleAbetter than 94% of U.S. towns·Overall A− · #142 of 271
25North OaksRamsey County · 5,283 peopleAbetter than 94% of U.S. towns·Overall A− · #138 of 271
26DaytonHennepin County · 11,402 peopleAbetter than 94% of U.S. towns·Overall A · #80 of 271
27CarverCarver County · 7,198 peopleAbetter than 94% of U.S. towns·Overall A · #40 of 271
28MahtomediWashington County · 8,189 peopleAbetter than 93% of U.S. towns·Overall A · #51 of 271
29HanoverWright County · 4,392 peopleAbetter than 93% of U.S. towns·Overall A− · #101 of 271
30Lake ElmoWashington County · 14,376 peopleAbetter than 93% of U.S. towns·Overall A− · #117 of 271
31Mendota HeightsDakota County · 11,475 peopleAbetter than 93% of U.S. towns·Overall A− · #109 of 271
32WaconiaCarver County · 14,113 peopleAbetter than 92% of U.S. towns·Overall A+ · #31 of 271
33CentervilleAnoka County · 3,978 peopleAbetter than 92% of U.S. towns·Overall A+ · #10 of 271
34HugoWashington County · 17,167 peopleAbetter than 92% of U.S. towns·Overall A− · #127 of 271
35AlbertvilleWright County · 8,544 peopleAbetter than 92% of U.S. towns·Overall A+ · #6 of 271
36LakevilleDakota County · 79,270 peopleAbetter than 92% of U.S. towns·Overall A+ · #30 of 271
37AftonWashington County · 2,960 peopleAbetter than 92% of U.S. towns·Overall B+ · #162 of 271
38St. MichaelWright County · 22,498 peopleAbetter than 91% of U.S. towns·Overall A+ · #26 of 271
39SavageScott County · 32,970 peopleAbetter than 91% of U.S. towns·Overall A− · #133 of 271
40RosevilleRamsey County · 35,663 peopleAbetter than 91% of U.S. towns·Overall B− · #218 of 271
41RichfieldHennepin County · 36,593 peopleAbetter than 91% of U.S. towns·Overall B · #203 of 271
42NorthfieldRice County · 21,992 peopleAbetter than 91% of U.S. towns·Overall A− · #102 of 271
43RosemountDakota County · 31,881 peopleAbetter than 91% of U.S. towns·Overall A+ · #13 of 271
44OtsegoWright County · 24,525 peopleAbetter than 91% of U.S. towns·Overall A · #82 of 271
45BloomingtonHennepin County · 89,034 peopleAbetter than 91% of U.S. towns·Overall B− · #225 of 271
46Prior LakeScott County · 28,140 peopleAbetter than 91% of U.S. towns·Overall A · #74 of 271
47ChamplinHennepin County · 23,125 peopleAbetter than 91% of U.S. towns·Overall A · #91 of 271
48MoundHennepin County · 9,064 peopleAbetter than 90% of U.S. towns·Overall A+ · #18 of 271
49West Lakeland TownshipWashington County · 3,931 peopleAbetter than 90% of U.S. towns·Overall A · #60 of 271
50GrantWashington County · 3,954 peopleAbetter than 90% of U.S. towns·Overall A · #86 of 271
51White Bear TownshipRamsey County · 10,399 peopleAbetter than 90% of U.S. towns·Overall A · #68 of 271
52New Market TownshipScott County · 3,574 peopleAbetter than 90% of U.S. towns·Overall B+ · #164 of 271
53EaganDakota County · 67,109 peopleAbetter than 90% of U.S. towns·Overall A− · #108 of 271
54May TownshipWashington County · 2,638 peopleAbetter than 90% of U.S. towns·Overall B+ · #149 of 271
55HopkinsHennepin County · 19,523 peopleAbetter than 89% of U.S. towns·Overall B · #198 of 271
56StillwaterWashington County · 19,354 peopleAbetter than 89% of U.S. towns·Overall A · #67 of 271
57ChaskaCarver County · 30,513 peopleAbetter than 89% of U.S. towns·Overall A+ · #33 of 271
58OsseoHennepin County · 2,534 peopleAbetter than 89% of U.S. towns·Overall B · #191 of 271
59Cottage GroveWashington County · 43,604 peopleAbetter than 88% of U.S. towns·Overall A · #50 of 271
60DelanoWright County · 7,788 peopleAbetter than 88% of U.S. towns·Overall A+ · #16 of 271
61Elko New MarketScott County · 5,300 peopleAbetter than 88% of U.S. towns·Overall A · #93 of 271
62New PragueScott County · 8,238 peopleAbetter than 88% of U.S. towns·Overall A+ · #7 of 271
63ByronOlmsted County · 6,740 peopleAbetter than 88% of U.S. towns·Overall A+ · #9 of 271
64KassonDodge County · 7,350 peopleAbetter than 88% of U.S. towns·Overall A+ · #22 of 271
65CrystalHennepin County · 22,239 peopleAbetter than 87% of U.S. towns·Overall B · #201 of 271
66RockfordWright County · 4,827 peopleAbetter than 87% of U.S. towns·Overall A · #46 of 271
67Lino LakesAnoka County · 23,220 peopleAbetter than 87% of U.S. towns·Overall A · #96 of 271
68BarnesvilleClay County · 2,767 peopleAbetter than 87% of U.S. towns·Overall A+ · #2 of 271
69White Bear LakeRamsey County · 23,392 peopleAbetter than 86% of U.S. towns·Overall A− · #122 of 271
70FarmingtonDakota County · 25,425 peopleAbetter than 86% of U.S. towns·Overall A+ · #37 of 271
71Cascade TownshipOlmsted County · 2,810 peopleAbetter than 86% of U.S. towns·Overall B · #183 of 271
72SartellStearns County · 19,918 peopleAbetter than 86% of U.S. towns·Overall B+ · #153 of 271
73North MankatoNicollet County · 14,165 peopleAbetter than 86% of U.S. towns·Overall A− · #98 of 271
74Thomson TownshipCarlton County · 5,624 peopleAbetter than 86% of U.S. towns·Overall A · #81 of 271
75HermantownSt. Louis County · 10,110 peopleAbetter than 86% of U.S. towns·Overall B · #190 of 271
76Pine IslandGoodhue County · 3,911 peopleAbetter than 86% of U.S. towns·Overall A− · #114 of 271
77WyomingChisago County · 8,121 peopleAbetter than 86% of U.S. towns·Overall A · #41 of 271
78Inver Grove HeightsDakota County · 36,873 peopleAbetter than 86% of U.S. towns·Overall A · #89 of 271
79Eagle LakeBlue Earth County · 3,357 peopleAbetter than 86% of U.S. towns·Overall B+ · #167 of 271
80Franklin TownshipWright County · 2,939 peopleAbetter than 86% of U.S. towns·Overall A− · #130 of 271
81Cedar Lake TownshipScott County · 3,080 peopleAbetter than 85% of U.S. towns·Overall A− · #115 of 271
82New BrightonRamsey County · 22,159 peopleA−better than 85% of U.S. towns·Overall A · #73 of 271
83Oak Park HeightsWashington County · 4,625 peopleA−better than 85% of U.S. towns·Overall B+ · #165 of 271
84RobbinsdaleHennepin County · 14,030 peopleA−better than 85% of U.S. towns·Overall C+ · #241 of 271
85RochesterOlmsted County · 124,292 peopleA−better than 84% of U.S. towns·Overall B · #188 of 271
86AndoverAnoka County · 33,874 peopleA−better than 84% of U.S. towns·Overall A− · #112 of 271
87MinneapolisHennepin County · 430,324 peopleA−better than 84% of U.S. towns·Overall C · #262 of 271
88Spring Lake TownshipScott County · 3,498 peopleA−better than 84% of U.S. towns·Overall B+ · #154 of 271
89Vadnais HeightsRamsey County · 13,052 peopleA−better than 83% of U.S. towns·Overall A · #94 of 271
90ScandiaWashington County · 3,979 peopleA−better than 83% of U.S. towns·Overall B+ · #152 of 271
91PaynesvilleStearns County · 2,591 peopleA−better than 83% of U.S. towns·Overall A+ · #27 of 271
92La CrescentHouston County · 5,261 peopleA−better than 82% of U.S. towns·Overall A · #71 of 271
93Ham LakeAnoka County · 17,104 peopleA−better than 82% of U.S. towns·Overall A · #83 of 271
94GoodviewWinona County · 4,122 peopleA−better than 82% of U.S. towns·Overall A · #58 of 271
95Circle PinesAnoka County · 4,967 peopleA−better than 82% of U.S. towns·Overall A+ · #24 of 271
96Apple ValleyDakota County · 55,248 peopleA−better than 82% of U.S. towns·Overall A− · #143 of 271
97MayerCarver County · 2,563 peopleA−better than 81% of U.S. towns·Overall A− · #97 of 271
98RamseyAnoka County · 29,624 peopleA−better than 81% of U.S. towns·Overall A · #84 of 271
99New London TownshipKandiyohi County · 2,965 peopleA−better than 81% of U.S. towns·Overall A+ · #34 of 271
100Cold SpringStearns County · 4,329 peopleA−better than 80% of U.S. towns·Overall B− · #223 of 271
101AlbanyStearns County · 2,873 peopleA−better than 80% of U.S. towns·Overall A+ · #14 of 271
102Little CanadaRamsey County · 10,567 peopleA−better than 79% of U.S. towns·Overall B+ · #145 of 271
103ShakopeeScott County · 49,366 peopleA−better than 79% of U.S. towns·Overall B+ · #150 of 271
104St. CharlesWinona County · 4,090 peopleA−better than 79% of U.S. towns·Overall A+ · #29 of 271
105New HopeHennepin County · 20,807 peopleA−better than 79% of U.S. towns·Overall C+ · #231 of 271
106Forest LakeWashington County · 20,952 peopleA−better than 79% of U.S. towns·Overall B+ · #168 of 271
107LonsdaleRice County · 5,117 peopleA−better than 79% of U.S. towns·Overall A+ · #19 of 271
108Oak GroveAnoka County · 9,476 peopleA−better than 78% of U.S. towns·Overall B · #181 of 271
109Big Lake TownshipSherburne County · 8,283 peopleA−better than 78% of U.S. towns·Overall A− · #106 of 271
110St. AugustaStearns County · 3,799 peopleA−better than 78% of U.S. towns·Overall B · #187 of 271
111Rockford TownshipWright County · 3,474 peopleA−better than 78% of U.S. towns·Overall A− · #107 of 271
112MontgomeryLe Sueur County · 3,539 peopleA−better than 78% of U.S. towns·Overall A+ · #15 of 271
113Breezy PointCrow Wing County · 2,771 peopleA−better than 77% of U.S. towns·Overall A− · #132 of 271
114Belle PlaineScott County · 7,632 peopleA−better than 77% of U.S. towns·Overall A− · #129 of 271
115ZumbrotaGoodhue County · 4,072 peopleA−better than 77% of U.S. towns·Overall A+ · #12 of 271
116ColumbusAnoka County · 4,356 peopleA−better than 77% of U.S. towns·Overall B+ · #158 of 271
117MaplewoodRamsey County · 40,717 peopleA−better than 77% of U.S. towns·Overall C+ · #236 of 271
118Elk RiverSherburne County · 27,896 peopleA−better than 76% of U.S. towns·Overall A · #48 of 271
119Brooklyn ParkHennepin County · 83,543 peopleA−better than 76% of U.S. towns·Overall B · #199 of 271
120LindstromChisago County · 5,039 peopleA−better than 76% of U.S. towns·Overall A · #53 of 271
121NowthenAnoka County · 4,630 peopleA−better than 76% of U.S. towns·Overall A · #55 of 271
122BeckerSherburne County · 5,425 peopleA−better than 76% of U.S. towns·Overall A · #39 of 271
123MoorheadClay County · 46,533 peopleA−better than 76% of U.S. towns·Overall C · #249 of 271
124WatertownCarver County · 4,789 peopleA−better than 76% of U.S. towns·Overall A+ · #21 of 271
125Wakefield TownshipStearns County · 2,829 peopleA−better than 76% of U.S. towns·Overall B · #194 of 271
126OakdaleWashington County · 30,588 peopleA−better than 75% of U.S. towns·Overall B · #186 of 271
127HastingsDakota County · 22,563 peopleA−better than 75% of U.S. towns·Overall A · #69 of 271
128East BethelAnoka County · 12,605 peopleA−better than 75% of U.S. towns·Overall B+ · #160 of 271
129Chisago Lake TownshipChisago County · 4,958 peopleA−better than 75% of U.S. towns·Overall A− · #103 of 271
130Big LakeSherburne County · 12,929 peopleA−better than 75% of U.S. towns·Overall A · #43 of 271
131DilworthClay County · 4,823 peopleB+better than 75% of U.S. towns·Overall B · #209 of 271
132Mounds ViewRamsey County · 12,786 peopleB+better than 75% of U.S. towns·Overall A · #88 of 271
133ChatfieldFillmore County · 3,018 peopleB+better than 75% of U.S. towns·Overall A+ · #1 of 271
134Alexandria TownshipDouglas County · 3,114 peopleB+better than 75% of U.S. towns·Overall A · #87 of 271
135La Grand TownshipDouglas County · 4,309 peopleB+better than 74% of U.S. towns·Overall A− · #131 of 271
136BuffaloWright County · 16,878 peopleB+better than 74% of U.S. towns·Overall A · #64 of 271
137Orrock TownshipSherburne County · 3,698 peopleB+better than 74% of U.S. towns·Overall A− · #141 of 271
138St. Paul ParkWashington County · 5,396 peopleB+better than 74% of U.S. towns·Overall A · #77 of 271
139Collegeville TownshipStearns County · 3,262 peopleB+better than 74% of U.S. towns·Overall C · #257 of 271
140Lake CityWabasha County · 5,306 peopleB+better than 74% of U.S. towns·Overall A · #45 of 271
141Linwood TownshipAnoka County · 5,403 peopleB+better than 74% of U.S. towns·Overall B+ · #170 of 271
142BlaineAnoka County · 76,603 peopleB+better than 74% of U.S. towns·Overall B+ · #156 of 271
143Marion TownshipOlmsted County · 4,111 peopleB+better than 74% of U.S. towns·Overall B+ · #157 of 271
144Brockway TownshipStearns County · 3,016 peopleB+better than 74% of U.S. towns·Overall A− · #123 of 271
145Norwood Young AmericaCarver County · 3,777 peopleB+better than 73% of U.S. towns·Overall A− · #120 of 271
146Monticello TownshipWright County · 3,374 peopleB+better than 73% of U.S. towns·Overall A · #52 of 271
147BaxterCrow Wing County · 9,217 peopleB+better than 73% of U.S. towns·Overall C+ · #245 of 271
148Chisago CityChisago County · 5,955 peopleB+better than 73% of U.S. towns·Overall A− · #140 of 271
149Silver Creek TownshipWright County · 2,620 peopleB+better than 72% of U.S. towns·Overall A · #85 of 271
150Rice LakeSt. Louis County · 4,169 peopleB+better than 72% of U.S. towns·Overall B− · #214 of 271
151Dodge CenterDodge County · 2,951 peopleB+better than 72% of U.S. towns·Overall A+ · #8 of 271
152BurnsvilleDakota County · 65,244 peopleB+better than 72% of U.S. towns·Overall C+ · #234 of 271
153Corinna TownshipWright County · 2,596 peopleB+better than 72% of U.S. towns·Overall A− · #134 of 271
154Watab TownshipBenton County · 3,478 peopleB+better than 72% of U.S. towns·Overall B+ · #172 of 271
155ProctorSt. Louis County · 3,054 peopleB+better than 71% of U.S. towns·Overall A− · #113 of 271
156AlexandriaDouglas County · 15,045 peopleB+better than 71% of U.S. towns·Overall B+ · #144 of 271
157Livonia TownshipSherburne County · 6,436 peopleB+better than 71% of U.S. towns·Overall A · #65 of 271
158BayportWashington County · 3,721 peopleB+better than 70% of U.S. towns·Overall A+ · #25 of 271
159MorrisStevens County · 5,150 peopleB+better than 69% of U.S. towns·Overall A+ · #38 of 271
160IsantiIsanti County · 7,714 peopleB+better than 68% of U.S. towns·Overall A · #70 of 271
161OwatonnaSteele County · 26,633 peopleB+better than 68% of U.S. towns·Overall B+ · #177 of 271
162MankatoBlue Earth County · 46,529 peopleB+better than 68% of U.S. towns·Overall C+ · #239 of 271
163ZimmermanSherburne County · 6,904 peopleB+better than 68% of U.S. towns·Overall A− · #119 of 271
164St. PaulRamsey County · 306,684 peopleB+better than 68% of U.S. towns·Overall C · #259 of 271
165JacksonJackson County · 3,305 peopleB+better than 68% of U.S. towns·Overall A · #76 of 271
166South St. PaulDakota County · 20,532 peopleB+better than 68% of U.S. towns·Overall B · #206 of 271
167Grand Lake TownshipSt. Louis County · 2,705 peopleB+better than 67% of U.S. towns·Overall C+ · #247 of 271
168Blue Hill TownshipSherburne County · 2,625 peopleB+better than 67% of U.S. towns·Overall B+ · #159 of 271
169MonticelloWright County · 15,670 peopleB+better than 66% of U.S. towns·Overall A · #63 of 271
170North BranchChisago County · 12,398 peopleB+better than 66% of U.S. towns·Overall B+ · #146 of 271
171AnnandaleWright County · 3,801 peopleB+better than 66% of U.S. towns·Overall A+ · #17 of 271
172WinonaWinona County · 26,530 peopleB+better than 66% of U.S. towns·Overall B− · #230 of 271
173StacyChisago County · 4,367 peopleB+better than 66% of U.S. towns·Overall A− · #104 of 271
174Sylvan TownshipCass County · 3,030 peopleB+better than 66% of U.S. towns·Overall A− · #136 of 271
175St. PeterNicollet County · 12,275 peopleB+better than 66% of U.S. towns·Overall A− · #124 of 271
176Bradford TownshipIsanti County · 3,549 peopleB+better than 66% of U.S. towns·Overall B− · #215 of 271
177New UlmBrown County · 13,863 peopleB+better than 66% of U.S. towns·Overall A · #78 of 271
178West St. PaulDakota County · 21,950 peopleB+better than 66% of U.S. towns·Overall B− · #217 of 271
179StewartvilleOlmsted County · 6,850 peopleB+better than 66% of U.S. towns·Overall A · #57 of 271
180Sauk RapidsBenton County · 13,768 peopleB+better than 65% of U.S. towns·Overall B+ · #175 of 271
181DuluthSt. Louis County · 88,330 peopleB+better than 65% of U.S. towns·Overall C · #253 of 271
182Cannon FallsGoodhue County · 4,209 peopleBbetter than 64% of U.S. towns·Overall A− · #128 of 271
183LuverneRock County · 4,984 peopleBbetter than 64% of U.S. towns·Overall A+ · #32 of 271
184HutchinsonMcLeod County · 14,655 peopleBbetter than 63% of U.S. towns·Overall B+ · #147 of 271
185CaledoniaHouston County · 2,768 peopleBbetter than 63% of U.S. towns·Overall A+ · #4 of 271
186MontroseWright County · 3,986 peopleBbetter than 63% of U.S. towns·Overall A− · #100 of 271
187RoseauRoseau County · 2,685 peopleBbetter than 63% of U.S. towns·Overall B · #195 of 271
188Cambridge TownshipIsanti County · 2,592 peopleBbetter than 62% of U.S. towns·Overall B · #200 of 271
189CambridgeIsanti County · 11,090 peopleBbetter than 62% of U.S. towns·Overall B · #197 of 271
190CohassetItasca County · 2,728 peopleBbetter than 62% of U.S. towns·Overall C+ · #235 of 271
191Brooklyn CenterHennepin County · 31,846 peopleBbetter than 62% of U.S. towns·Overall C · #261 of 271
192Coon RapidsAnoka County · 64,193 peopleBbetter than 62% of U.S. towns·Overall B+ · #174 of 271
193MarshallLyon County · 14,171 peopleBbetter than 62% of U.S. towns·Overall B · #184 of 271
194AnokaAnoka County · 18,169 peopleBbetter than 62% of U.S. towns·Overall B+ · #163 of 271
195FridleyAnoka County · 30,829 peopleBbetter than 62% of U.S. towns·Overall C · #251 of 271
196East Grand ForksPolk County · 8,906 peopleBbetter than 60% of U.S. towns·Overall B+ · #148 of 271
197WabashaWabasha County · 2,599 peopleBbetter than 60% of U.S. towns·Overall B+ · #178 of 271
198St. JosephStearns County · 6,846 peopleBbetter than 60% of U.S. towns·Overall B− · #210 of 271
199Harris TownshipItasca County · 3,364 peopleBbetter than 60% of U.S. towns·Overall B− · #226 of 271
200FoleyBenton County · 2,650 peopleBbetter than 59% of U.S. towns·Overall B+ · #171 of 271
201CokatoWright County · 2,793 peopleBbetter than 59% of U.S. towns·Overall A · #49 of 271
202Mountain IronSt. Louis County · 2,835 peopleBbetter than 58% of U.S. towns·Overall A− · #99 of 271
203St. FrancisAnoka County · 8,635 peopleBbetter than 58% of U.S. towns·Overall A− · #110 of 271
T204Bemidji TownshipBeltrami County · 4,031 peopleBbetter than 58% of U.S. towns·Overall B− · #229 of 271
T204Northern TownshipBeltrami County · 3,701 peopleBbetter than 58% of U.S. towns·Overall C+ · #248 of 271
206North St. PaulRamsey County · 12,780 peopleBbetter than 58% of U.S. towns·Overall B− · #227 of 271
207Palmer TownshipSherburne County · 2,633 peopleBbetter than 57% of U.S. towns·Overall B− · #222 of 271
208MelroseStearns County · 3,888 peopleBbetter than 57% of U.S. towns·Overall A− · #118 of 271
209Detroit LakesBecker County · 10,019 peopleBbetter than 57% of U.S. towns·Overall C+ · #243 of 271
210PlainviewWabasha County · 3,482 peopleBbetter than 56% of U.S. towns·Overall A+ · #5 of 271
211Le CenterLe Sueur County · 2,524 peopleBbetter than 56% of U.S. towns·Overall A+ · #36 of 271
212Sauk CentreStearns County · 4,663 peopleB−better than 54% of U.S. towns·Overall B− · #221 of 271
213Park RapidsHubbard County · 4,447 peopleB−better than 54% of U.S. towns·Overall C− · #265 of 271
214Fergus FallsOtter Tail County · 14,246 peopleB−better than 54% of U.S. towns·Overall B · #208 of 271
215JordanScott County · 6,988 peopleB−better than 54% of U.S. towns·Overall A · #66 of 271
216Grand RapidsItasca County · 11,181 peopleB−better than 54% of U.S. towns·Overall B− · #211 of 271
217Le SueurLe Sueur County · 4,210 peopleB−better than 54% of U.S. towns·Overall A · #90 of 271
218LitchfieldMeeker County · 6,528 peopleB−better than 53% of U.S. towns·Overall B+ · #176 of 271
219Thief River FallsPennington County · 8,799 peopleB−better than 52% of U.S. towns·Overall B · #182 of 271
220Sleepy EyeBrown County · 3,461 peopleB−better than 51% of U.S. towns·Overall A− · #105 of 271
221CrookstonPolk County · 7,375 peopleB−better than 51% of U.S. towns·Overall C+ · #240 of 271
222GlenwoodPope County · 2,631 peopleB−better than 51% of U.S. towns·Overall A− · #135 of 271
223ElySt. Louis County · 3,231 peopleB−better than 51% of U.S. towns·Overall A− · #116 of 271
224BemidjiBeltrami County · 15,770 peopleB−better than 50% of U.S. towns·Overall D · #270 of 271
225NewportWashington County · 5,525 peopleB−better than 50% of U.S. towns·Overall B · #185 of 271
226PrincetonMille Lacs County · 5,480 peopleB−better than 49% of U.S. towns·Overall B+ · #151 of 271
227St. CloudStearns County · 72,647 peopleB−better than 49% of U.S. towns·Overall C− · #269 of 271
228MilacaMille Lacs County · 3,041 peopleB−better than 48% of U.S. towns·Overall B · #189 of 271
229Spring Lake ParkAnoka County · 7,127 peopleB−better than 48% of U.S. towns·Overall B · #204 of 271
230BrainerdCrow Wing County · 14,428 peopleB−better than 47% of U.S. towns·Overall C+ · #238 of 271
231Rush CityChisago County · 3,300 peopleB−better than 47% of U.S. towns·Overall B− · #220 of 271
232PerhamOtter Tail County · 3,746 peopleB−better than 47% of U.S. towns·Overall B · #202 of 271
233FairmontMartin County · 10,099 peopleB−better than 46% of U.S. towns·Overall C+ · #233 of 271
234International FallsKoochiching County · 5,481 peopleB−better than 46% of U.S. towns·Overall B · #207 of 271
235Red WingGoodhue County · 16,805 peopleB−better than 45% of U.S. towns·Overall C · #254 of 271
236Pokegama TownshipPine County · 2,884 peopleC+better than 45% of U.S. towns·Overall C− · #263 of 271
237CloquetCarlton County · 12,399 peopleC+better than 44% of U.S. towns·Overall B− · #228 of 271
238Granite FallsYellow Medicine County · 2,691 peopleC+better than 43% of U.S. towns·Overall B · #193 of 271
239LexingtonAnoka County · 3,081 peopleC+better than 43% of U.S. towns·Overall A− · #139 of 271
240GlencoeMcLeod County · 5,632 peopleC+better than 42% of U.S. towns·Overall B+ · #179 of 271
241Columbia HeightsAnoka County · 22,482 peopleC+better than 42% of U.S. towns·Overall C · #260 of 271
242WindomCottonwood County · 4,817 peopleC+better than 42% of U.S. towns·Overall B+ · #173 of 271
243Blue EarthFaribault County · 3,165 peopleC+better than 41% of U.S. towns·Overall B+ · #169 of 271
244Little FallsMorrison County · 9,277 peopleC+better than 41% of U.S. towns·Overall C− · #264 of 271
245Redwood FallsRedwood County · 5,040 peopleC+better than 41% of U.S. towns·Overall B− · #216 of 271
246WasecaWaseca County · 9,035 peopleC+better than 40% of U.S. towns·Overall B− · #213 of 271
247StaplesTodd County · 3,074 peopleC+better than 39% of U.S. towns·Overall B− · #212 of 271
248Pelican RapidsOtter Tail County · 2,608 peopleC+better than 39% of U.S. towns·Overall A− · #126 of 271
249AustinMower County · 26,689 peopleC+better than 38% of U.S. towns·Overall C · #250 of 271
250BensonSwift County · 3,444 peopleC+better than 38% of U.S. towns·Overall C+ · #232 of 271
251MontevideoChippewa County · 5,335 peopleC+better than 38% of U.S. towns·Overall A− · #111 of 271
252Long PrairieTodd County · 3,830 peopleC+better than 38% of U.S. towns·Overall B− · #224 of 271
253Pine CityPine County · 3,820 peopleC+better than 38% of U.S. towns·Overall C · #252 of 271
254Two HarborsLake County · 3,443 peopleC+better than 37% of U.S. towns·Overall A− · #137 of 271
255EvelethSt. Louis County · 3,381 peopleC+better than 36% of U.S. towns·Overall C+ · #242 of 271
256St. JamesWatonwan County · 4,863 peopleC+better than 36% of U.S. towns·Overall B · #196 of 271
257Albert LeaFreeborn County · 18,217 peopleC+better than 36% of U.S. towns·Overall C+ · #246 of 271
258WillmarKandiyohi County · 22,001 peopleC+better than 36% of U.S. towns·Overall C · #256 of 271
259PipestonePipestone County · 4,100 peopleCbetter than 35% of U.S. towns·Overall B+ · #166 of 271
260Waite ParkStearns County · 8,450 peopleCbetter than 32% of U.S. towns·Overall D · #271 of 271
261White TownshipSt. Louis County · 3,088 peopleCbetter than 32% of U.S. towns·Overall B− · #219 of 271
262HibbingSt. Louis County · 15,823 peopleCbetter than 32% of U.S. towns·Overall A− · #121 of 271
263MoraKanabec County · 3,763 peopleCbetter than 32% of U.S. towns·Overall B · #192 of 271
264WorthingtonNobles County · 13,979 peopleCbetter than 29% of U.S. towns·Overall C− · #266 of 271
265BreckenridgeWilkin County · 3,323 peopleCbetter than 28% of U.S. towns·Overall B · #205 of 271
266WadenaWadena County · 4,341 peopleC−better than 25% of U.S. towns·Overall C · #255 of 271
267FaribaultRice County · 25,040 peopleC−better than 24% of U.S. towns·Overall C− · #268 of 271
268ChisholmSt. Louis County · 4,625 peopleC−better than 20% of U.S. towns·Overall C+ · #237 of 271
269SandstonePine County · 2,543 peopleC−better than 19% of U.S. towns·Overall C− · #267 of 271
270VirginiaSt. Louis County · 8,187 peopleC−better than 16% of U.S. towns·Overall C+ · #244 of 271
271Moose LakeCarlton County · 2,948 peopleDbetter than 8% of U.S. towns·Overall C · #258 of 271
Not ranked

3 towns without a health grade

Towns of 2,500+ that don’t have the figures this grade needs. Each town’s page says which ones are missing.

Quick answers

Questions people ask

What is the healthiest town in Minnesota?

Deephaven (Hennepin County) ranks first on health among 271 towns, with an A+; Shorewood and Edina follow.

How are these towns ranked?

The Health grade: seven CDC PLACES estimates for adults (general, physical and mental health, obesity, diabetes, smoking, exercise). Towns are sorted on the grade’s score; the letter and rank are the same as on each town’s page. How grades work.

Why isn’t my town on this list?

The list covers towns of 2,500+ residents with a health grade (271 in Minnesota). 3 towns of 2,500+ lack the figures and are listed above. Smaller towns have the grade on their page but no rank. Every town is on the Minnesota page.

Go deeper

More Minnesota lists

Every list ranks the same 2,500+ towns, so a town’s rank means the same thing on each.

All Minnesota rankings →
Other states

Healthiest towns in other states