Guest, Sign inJoin
Whitefish Bay, Wisconsin 2023 AWhitefish Bay, #1 on this list · Photo: Gnome70 · CC BY-SA 4.0
Wisconsin rankings · Health

Healthiest towns in Wisconsin

Whitefish Bay ranks first on health among Wisconsin’s 357 towns of 2,500+; 115 of the 357 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

#1

Whitefish Bay

Milwaukee County · 14,489 people
A+

Health grade, better than 98% of U.S. towns·Overall A+ · #9 of 357 in WI

#3

Middleton

Dane County · 6,833 people
A+

Health grade, better than 96% of U.S. towns·Overall A− · #90 of 357 in WI

All 357 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.

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

#TownGradeOverall
1Whitefish BayMilwaukee County · 14,489 peopleA+better than 98% of U.S. towns·Overall A+ · #9 of 357
2VeronaDane County · 16,821 peopleA+better than 97% of U.S. towns·Overall A+ · #23 of 357
3MiddletonDane County · 6,833 peopleA+better than 96% of U.S. towns·Overall A− · #90 of 357
4Fox PointMilwaukee County · 6,583 peopleA+better than 96% of U.S. towns·Overall A+ · #7 of 357
5ShorewoodMilwaukee County · 13,474 peopleA+better than 96% of U.S. towns·Overall A− · #106 of 357
6MiddletonDane County · 23,115 peopleAbetter than 95% of U.S. towns·Overall A · #63 of 357
7MertonWaukesha County · 3,676 peopleAbetter than 95% of U.S. towns·Overall A · #71 of 357
8BaysideMilwaukee County · 4,331 peopleAbetter than 94% of U.S. towns·Overall A+ · #18 of 357
9MequonOzaukee County · 25,120 peopleAbetter than 94% of U.S. towns·Overall A · #34 of 357
10DelafieldWaukesha County · 7,314 peopleAbetter than 94% of U.S. towns·Overall A− · #114 of 357
11WauwatosaMilwaukee County · 48,649 peopleAbetter than 94% of U.S. towns·Overall B · #197 of 357
12SpringfieldDane County · 2,800 peopleAbetter than 93% of U.S. towns·Overall A · #33 of 357
13BrookfieldWaukesha County · 41,448 peopleAbetter than 93% of U.S. towns·Overall A · #40 of 357
14WaunakeeDane County · 16,411 peopleAbetter than 93% of U.S. towns·Overall A+ · #5 of 357
15Elm GroveWaukesha County · 6,354 peopleAbetter than 93% of U.S. towns·Overall A+ · #13 of 357
16WestportDane County · 4,249 peopleAbetter than 92% of U.S. towns·Overall A · #74 of 357
17FitchburgDane County · 34,615 peopleAbetter than 92% of U.S. towns·Overall B+ · #154 of 357
18Cottage GroveDane County · 8,930 peopleAbetter than 92% of U.S. towns·Overall A− · #86 of 357
19ThiensvilleOzaukee County · 3,267 peopleAbetter than 92% of U.S. towns·Overall A · #35 of 357
20Mount HorebDane County · 7,725 peopleAbetter than 92% of U.S. towns·Overall A+ · #1 of 357
21PewaukeeWaukesha County · 8,216 peopleAbetter than 91% of U.S. towns·Overall A · #69 of 357
22WalesWaukesha County · 2,885 peopleAbetter than 91% of U.S. towns·Overall A · #39 of 357
23Sun PrairieDane County · 39,227 peopleAbetter than 91% of U.S. towns·Overall B+ · #149 of 357
24CedarburgOzaukee County · 12,916 peopleAbetter than 90% of U.S. towns·Overall A+ · #10 of 357
25LodiColumbia County · 3,190 peopleAbetter than 90% of U.S. towns·Overall B+ · #151 of 357
26BristolDane County · 4,347 peopleAbetter than 90% of U.S. towns·Overall A− · #96 of 357
27McFarlandDane County · 9,145 peopleAbetter than 90% of U.S. towns·Overall B · #227 of 357
28PewaukeeWaukesha County · 16,375 peopleAbetter than 90% of U.S. towns·Overall A− · #139 of 357
29MononaDane County · 8,664 peopleAbetter than 90% of U.S. towns·Overall B− · #234 of 357
30HarrisonCalumet County · 14,492 peopleAbetter than 89% of U.S. towns·Overall A · #73 of 357
31Cottage GroveDane County · 3,677 peopleAbetter than 89% of U.S. towns·Overall B− · #275 of 357
32Cross PlainsDane County · 4,182 peopleAbetter than 89% of U.S. towns·Overall A · #59 of 357
33DunnDane County · 4,676 peopleAbetter than 89% of U.S. towns·Overall B− · #251 of 357
34BrookfieldWaukesha County · 6,515 peopleAbetter than 89% of U.S. towns·Overall B+ · #146 of 357
35SummitWaukesha County · 5,323 peopleAbetter than 89% of U.S. towns·Overall A · #77 of 357
36GraftonOzaukee County · 4,343 peopleAbetter than 88% of U.S. towns·Overall A · #57 of 357
37BurkeDane County · 3,089 peopleAbetter than 88% of U.S. towns·Overall A · #49 of 357
38MertonWaukesha County · 8,319 peopleAbetter than 88% of U.S. towns·Overall A− · #94 of 357
39CedarburgOzaukee County · 6,169 peopleAbetter than 88% of U.S. towns·Overall A− · #105 of 357
40DeForestDane County · 13,094 peopleAbetter than 87% of U.S. towns·Overall A · #68 of 357
41New BerlinWaukesha County · 39,953 peopleAbetter than 87% of U.S. towns·Overall A · #52 of 357
42GraftonOzaukee County · 13,389 peopleAbetter than 86% of U.S. towns·Overall A · #51 of 357
43RichfieldWashington County · 11,785 peopleAbetter than 86% of U.S. towns·Overall A− · #93 of 357
44GermantownWashington County · 21,050 peopleAbetter than 86% of U.S. towns·Overall A− · #126 of 357
45MuskegoWaukesha County · 25,602 peopleAbetter than 86% of U.S. towns·Overall A · #43 of 357
46SussexWaukesha County · 12,779 peopleAbetter than 86% of U.S. towns·Overall A− · #87 of 357
47SherwoodCalumet County · 3,311 peopleAbetter than 86% of U.S. towns·Overall A · #61 of 357
48MadisonDane County · 286,233 peopleAbetter than 86% of U.S. towns·Overall C+ · #289 of 357
49OregonDane County · 12,015 peopleAbetter than 86% of U.S. towns·Overall A+ · #20 of 357
50HobartBrown County · 11,674 peopleAbetter than 85% of U.S. towns·Overall A− · #129 of 357
51DousmanWaukesha County · 2,665 peopleA−better than 85% of U.S. towns·Overall A · #78 of 357
52Pleasant SpringsDane County · 2,968 peopleA−better than 85% of U.S. towns·Overall A · #66 of 357
53OregonDane County · 2,994 peopleA−better than 85% of U.S. towns·Overall B+ · #167 of 357
54FranklinMilwaukee County · 36,687 peopleA−better than 84% of U.S. towns·Overall A− · #113 of 357
55Menomonee FallsWaukesha County · 41,291 peopleA−better than 84% of U.S. towns·Overall A · #46 of 357
56PrescottPierce County · 4,581 peopleA−better than 84% of U.S. towns·Overall A+ · #25 of 357
57GeneseeWaukesha County · 7,235 peopleA−better than 84% of U.S. towns·Overall B+ · #166 of 357
58North HudsonSt. Croix County · 3,803 peopleA−better than 84% of U.S. towns·Overall A · #81 of 357
59HartlandWaukesha County · 10,740 peopleA−better than 84% of U.S. towns·Overall A+ · #17 of 357
60HudsonSt. Croix County · 8,736 peopleA−better than 84% of U.S. towns·Overall A · #82 of 357
61WindsorDane County · 10,085 peopleA−better than 84% of U.S. towns·Overall A− · #119 of 357
62JacksonWashington County · 3,950 peopleA−better than 83% of U.S. towns·Overall A · #84 of 357
63TroySt. Croix County · 5,686 peopleA−better than 83% of U.S. towns·Overall B+ · #152 of 357
64MukwonagoWaukesha County · 8,544 peopleA−better than 83% of U.S. towns·Overall A− · #92 of 357
65EagleWaukesha County · 3,536 peopleA−better than 83% of U.S. towns·Overall A− · #130 of 357
66Hales CornersMilwaukee County · 7,740 peopleA−better than 83% of U.S. towns·Overall A · #54 of 357
67SuamicoBrown County · 13,153 peopleA−better than 83% of U.S. towns·Overall A− · #97 of 357
68Oak CreekMilwaukee County · 38,296 peopleA−better than 82% of U.S. towns·Overall B+ · #176 of 357
69SlingerWashington County · 6,495 peopleA−better than 82% of U.S. towns·Overall A · #48 of 357
70GlendaleMilwaukee County · 14,795 peopleA−better than 82% of U.S. towns·Overall C · #313 of 357
71Grand ChuteOutagamie County · 24,579 peopleA−better than 82% of U.S. towns·Overall B− · #267 of 357
72GreendaleMilwaukee County · 14,426 peopleA−better than 82% of U.S. towns·Overall A− · #101 of 357
73JacksonWashington County · 8,322 peopleA−better than 82% of U.S. towns·Overall A · #32 of 357
74OconomowocWaukesha County · 8,849 peopleA−better than 82% of U.S. towns·Overall B+ · #145 of 357
75KronenwetterMarathon County · 8,413 peopleA−better than 82% of U.S. towns·Overall A · #50 of 357
76PolkWashington County · 4,041 peopleA−better than 82% of U.S. towns·Overall A · #70 of 357
77BristolKenosha County · 5,300 peopleA−better than 82% of U.S. towns·Overall A · #31 of 357
78WashingtonEau Claire County · 7,478 peopleA−better than 81% of U.S. towns·Overall B+ · #164 of 357
79Oak GrovePierce County · 2,561 peopleA−better than 81% of U.S. towns·Overall A · #67 of 357
80StoughtonDane County · 13,256 peopleA−better than 81% of U.S. towns·Overall A− · #133 of 357
81OttawaWaukesha County · 3,642 peopleA−better than 81% of U.S. towns·Overall A · #60 of 357
82St. JosephSt. Croix County · 4,408 peopleA−better than 81% of U.S. towns·Overall B+ · #170 of 357
83BelgiumOzaukee County · 2,540 peopleA−better than 81% of U.S. towns·Overall A · #79 of 357
84Combined LocksOutagamie County · 3,626 peopleA−better than 80% of U.S. towns·Overall A+ · #8 of 357
85WrightstownBrown County · 4,169 peopleA−better than 80% of U.S. towns·Overall A · #64 of 357
86ColumbusColumbia County · 5,400 peopleA−better than 80% of U.S. towns·Overall A− · #100 of 357
87River FallsPierce County · 17,916 peopleA−better than 80% of U.S. towns·Overall A · #27 of 357
88HudsonSt. Croix County · 15,019 peopleA−better than 80% of U.S. towns·Overall A− · #108 of 357
89BellevilleDane County · 2,705 peopleA−better than 80% of U.S. towns·Overall A · #65 of 357
90CenterOutagamie County · 3,706 peopleA−better than 80% of U.S. towns·Overall A · #38 of 357
91OnalaskaLa Crosse County · 20,297 peopleA−better than 80% of U.S. towns·Overall B · #210 of 357
92Rib MountainMarathon County · 7,280 peopleA−better than 80% of U.S. towns·Overall B · #229 of 357
93OconomowocWaukesha County · 20,119 peopleA−better than 79% of U.S. towns·Overall A · #62 of 357
94FreedomOutagamie County · 6,354 peopleA−better than 79% of U.S. towns·Overall A · #26 of 357
95SomersetSt. Croix County · 3,408 peopleA−better than 79% of U.S. towns·Overall A · #44 of 357
96PloverPortage County · 14,274 peopleA−better than 78% of U.S. towns·Overall B · #228 of 357
97WaukeshaWaukesha County · 70,872 peopleA−better than 78% of U.S. towns·Overall B+ · #184 of 357
98OnalaskaLa Crosse County · 5,809 peopleA−better than 78% of U.S. towns·Overall B+ · #183 of 357
99West SalemLa Crosse County · 5,288 peopleA−better than 77% of U.S. towns·Overall A− · #118 of 357
100AltoonaEau Claire County · 9,376 peopleA−better than 77% of U.S. towns·Overall B · #224 of 357
101DeerfieldDane County · 2,619 peopleA−better than 77% of U.S. towns·Overall A− · #131 of 357
102BaldwinSt. Croix County · 4,347 peopleA−better than 77% of U.S. towns·Overall A · #29 of 357
103MaineMarathon County · 2,621 peopleA−better than 77% of U.S. towns·Overall A− · #112 of 357
104Pleasant ValleyEau Claire County · 3,878 peopleA−better than 77% of U.S. towns·Overall C+ · #286 of 357
105LawrenceBrown County · 6,937 peopleA−better than 77% of U.S. towns·Overall A− · #125 of 357
106AllouezBrown County · 13,838 peopleA−better than 77% of U.S. towns·Overall B− · #235 of 357
107Lake MillsJefferson County · 6,655 peopleA−better than 76% of U.S. towns·Overall A− · #89 of 357
108HollandLa Crosse County · 4,512 peopleA−better than 76% of U.S. towns·Overall A− · #136 of 357
109Port WashingtonOzaukee County · 12,658 peopleA−better than 76% of U.S. towns·Overall A+ · #6 of 357
110GreenfieldMilwaukee County · 37,159 peopleA−better than 76% of U.S. towns·Overall B− · #258 of 357
111Eau ClaireEau Claire County · 72,465 peopleA−better than 76% of U.S. towns·Overall B− · #264 of 357
112West BendWashington County · 4,401 peopleA−better than 76% of U.S. towns·Overall B+ · #160 of 357
113SomersetSt. Croix County · 4,536 peopleA−better than 75% of U.S. towns·Overall A · #72 of 357
114HullPortage County · 5,239 peopleA−better than 75% of U.S. towns·Overall B+ · #181 of 357
115De PereBrown County · 25,590 peopleA−better than 75% of U.S. towns·Overall A+ · #12 of 357
116HolmenLa Crosse County · 12,105 peopleB+better than 75% of U.S. towns·Overall A− · #110 of 357
117AmeryPolk County · 2,927 peopleB+better than 74% of U.S. towns·Overall A · #55 of 357
118LedgeviewBrown County · 9,642 peopleB+better than 74% of U.S. towns·Overall A− · #127 of 357
119HammondSt. Croix County · 2,732 peopleB+better than 74% of U.S. towns·Overall B+ · #158 of 357
120AlgomaWinnebago County · 6,956 peopleB+better than 74% of U.S. towns·Overall C+ · #279 of 357
121TrentonWashington County · 4,721 peopleB+better than 73% of U.S. towns·Overall B+ · #148 of 357
122Pleasant PrairieKenosha County · 21,798 peopleB+better than 73% of U.S. towns·Overall C+ · #311 of 357
123Sugar CreekWalworth County · 3,888 peopleB+better than 73% of U.S. towns·Overall A− · #138 of 357
124StocktonPortage County · 3,019 peopleB+better than 73% of U.S. towns·Overall B+ · #156 of 357
125ErinWashington County · 3,835 peopleB+better than 72% of U.S. towns·Overall B · #215 of 357
126New RichmondSt. Croix County · 10,988 peopleB+better than 72% of U.S. towns·Overall A · #36 of 357
127WaterfordRacine County · 6,025 peopleB+better than 72% of U.S. towns·Overall B · #199 of 357
128East TroyWalworth County · 4,002 peopleB+better than 72% of U.S. towns·Overall B+ · #186 of 357
129Star PrairieSt. Croix County · 3,771 peopleB+better than 72% of U.S. towns·Overall A− · #88 of 357
130New HolsteinCalumet County · 3,040 peopleB+better than 72% of U.S. towns·Overall A+ · #3 of 357
131HowardBrown County · 22,233 peopleB+better than 72% of U.S. towns·Overall A− · #115 of 357
132OsceolaPolk County · 2,890 peopleB+better than 71% of U.S. towns·Overall B− · #241 of 357
133Howards GroveSheboygan County · 3,190 peopleB+better than 71% of U.S. towns·Overall A+ · #16 of 357
134West BendWashington County · 32,268 peopleB+better than 71% of U.S. towns·Overall B+ · #165 of 357
135Williams BayWalworth County · 2,935 peopleB+better than 70% of U.S. towns·Overall B+ · #187 of 357
136AldenPolk County · 3,019 peopleB+better than 70% of U.S. towns·Overall B · #196 of 357
137RichmondSt. Croix County · 4,276 peopleB+better than 70% of U.S. towns·Overall B− · #238 of 357
138BuchananOutagamie County · 6,793 peopleB+better than 70% of U.S. towns·Overall A− · #107 of 357
139EvansvilleRock County · 5,837 peopleB+better than 70% of U.S. towns·Overall B+ · #192 of 357
140ElkhornWalworth County · 10,045 peopleB+better than 70% of U.S. towns·Overall A− · #116 of 357
141UnionEau Claire County · 2,556 peopleB+better than 70% of U.S. towns·Overall B+ · #195 of 357
142AppletonOutagamie County · 75,452 peopleB+better than 69% of U.S. towns·Overall B+ · #168 of 357
143SaukvilleOzaukee County · 4,554 peopleB+better than 69% of U.S. towns·Overall B+ · #159 of 357
144IxoniaJefferson County · 5,083 peopleB+better than 69% of U.S. towns·Overall A · #56 of 357
145HartfordWashington County · 3,359 peopleB+better than 69% of U.S. towns·Overall A+ · #14 of 357
146EllsworthPierce County · 3,336 peopleB+better than 69% of U.S. towns·Overall A · #42 of 357
147East TroyWalworth County · 4,988 peopleB+better than 69% of U.S. towns·Overall A− · #111 of 357
148PoynetteColumbia County · 2,924 peopleB+better than 69% of U.S. towns·Overall A · #58 of 357
149RochesterRacine County · 3,786 peopleB+better than 69% of U.S. towns·Overall A− · #121 of 357
150OostburgSheboygan County · 3,056 peopleB+better than 69% of U.S. towns·Overall A+ · #15 of 357
151OneidaOutagamie County · 4,568 peopleB+better than 68% of U.S. towns·Overall B+ · #171 of 357
152WestonMarathon County · 15,931 peopleB+better than 68% of U.S. towns·Overall A− · #98 of 357
153Stevens PointPortage County · 26,377 peopleB+better than 68% of U.S. towns·Overall B · #212 of 357
154Paddock LakeKenosha County · 2,974 peopleB+better than 68% of U.S. towns·Overall A− · #109 of 357
155GenevaWalworth County · 5,443 peopleB+better than 68% of U.S. towns·Overall A− · #85 of 357
156MosineeMarathon County · 4,529 peopleB+better than 68% of U.S. towns·Overall A · #37 of 357
157SomersKenosha County · 8,171 peopleB+better than 68% of U.S. towns·Overall C− · #338 of 357
158ScottBrown County · 3,650 peopleB+better than 68% of U.S. towns·Overall C+ · #287 of 357
159HartfordWashington County · 16,005 peopleB+better than 68% of U.S. towns·Overall B · #218 of 357
160Union GroveRacine County · 5,370 peopleB+better than 68% of U.S. towns·Overall A− · #102 of 357
161ClaytonWinnebago County · 5,303 peopleB+better than 68% of U.S. towns·Overall A− · #140 of 357
162AddisonWashington County · 3,416 peopleB+better than 67% of U.S. towns·Overall A+ · #22 of 357
163SeymourEau Claire County · 3,261 peopleB+better than 67% of U.S. towns·Overall B · #220 of 357
164MarshallDane County · 3,696 peopleB+better than 67% of U.S. towns·Overall B+ · #190 of 357
165Little ChuteOutagamie County · 11,800 peopleB+better than 67% of U.S. towns·Overall A+ · #21 of 357
166AshippunDodge County · 2,666 peopleB+better than 67% of U.S. towns·Overall B+ · #150 of 357
167DaleOutagamie County · 2,902 peopleB+better than 67% of U.S. towns·Overall B+ · #169 of 357
168BartonWashington County · 2,769 peopleB+better than 67% of U.S. towns·Overall B+ · #180 of 357
169FarmingtonWashington County · 3,586 peopleB+better than 67% of U.S. towns·Overall A− · #142 of 357
170KimberlyOutagamie County · 7,556 peopleB+better than 67% of U.S. towns·Overall A+ · #4 of 357
171Mineral PointIowa County · 2,555 peopleB+better than 67% of U.S. towns·Overall A+ · #19 of 357
172Johnson CreekJefferson County · 3,435 peopleB+better than 66% of U.S. towns·Overall B− · #250 of 357
173YorkvilleRacine County · 3,253 peopleB+better than 66% of U.S. towns·Overall B+ · #162 of 357
174Brown DeerMilwaukee County · 12,821 peopleB+better than 66% of U.S. towns·Overall C · #331 of 357
175KewaskumWashington County · 4,561 peopleB+better than 66% of U.S. towns·Overall A− · #91 of 357
176MenomonieDunn County · 16,664 peopleB+better than 66% of U.S. towns·Overall B+ · #177 of 357
177NeenahWinnebago County · 3,673 peopleB+better than 66% of U.S. towns·Overall B+ · #147 of 357
178SheboyganSheboygan County · 8,615 peopleB+better than 66% of U.S. towns·Overall B− · #265 of 357
179EllingtonOutagamie County · 3,307 peopleB+better than 66% of U.S. towns·Overall A− · #132 of 357
180ViroquaVernon County · 4,435 peopleB+better than 65% of U.S. towns·Overall A− · #117 of 357
181AshwaubenonBrown County · 17,398 peopleBbetter than 65% of U.S. towns·Overall B · #200 of 357
182LinnWalworth County · 2,707 peopleBbetter than 65% of U.S. towns·Overall B+ · #163 of 357
183KaukaunaOutagamie County · 18,517 peopleBbetter than 64% of U.S. towns·Overall A · #30 of 357
184PittsfieldBrown County · 2,838 peopleBbetter than 64% of U.S. towns·Overall A · #76 of 357
185RothschildMarathon County · 5,627 peopleBbetter than 64% of U.S. towns·Overall A− · #95 of 357
186OmroWinnebago County · 3,639 peopleBbetter than 64% of U.S. towns·Overall B+ · #185 of 357
187Prairie du SacSauk County · 4,316 peopleBbetter than 64% of U.S. towns·Overall B− · #262 of 357
188PlymouthSheboygan County · 3,038 peopleBbetter than 64% of U.S. towns·Overall B+ · #172 of 357
189BellevueBrown County · 16,776 peopleBbetter than 64% of U.S. towns·Overall C · #318 of 357
190SeymourOutagamie County · 3,628 peopleBbetter than 63% of U.S. towns·Overall A · #80 of 357
191Twin LakesKenosha County · 6,338 peopleBbetter than 63% of U.S. towns·Overall B · #206 of 357
192Fox CrossingWinnebago County · 19,320 peopleBbetter than 63% of U.S. towns·Overall A− · #120 of 357
193FultonRock County · 3,715 peopleBbetter than 63% of U.S. towns·Overall B · #209 of 357
194EdgertonRock County · 6,121 peopleBbetter than 62% of U.S. towns·Overall B+ · #155 of 357
195West AllisMilwaukee County · 60,119 peopleBbetter than 62% of U.S. towns·Overall C+ · #308 of 357
196MenomonieDunn County · 3,514 peopleBbetter than 62% of U.S. towns·Overall B+ · #189 of 357
197Little SuamicoOconto County · 5,794 peopleBbetter than 62% of U.S. towns·Overall A− · #122 of 357
198LimaSheboygan County · 2,920 peopleBbetter than 62% of U.S. towns·Overall A− · #124 of 357
199NorwayRacine County · 7,856 peopleBbetter than 61% of U.S. towns·Overall B · #207 of 357
200DoverRacine County · 4,202 peopleBbetter than 61% of U.S. towns·Overall A− · #143 of 357
201StettinMarathon County · 2,593 peopleBbetter than 61% of U.S. towns·Overall C+ · #299 of 357
202Lake GenevaWalworth County · 8,818 peopleBbetter than 61% of U.S. towns·Overall B− · #231 of 357
203RaymondRacine County · 4,006 peopleBbetter than 61% of U.S. towns·Overall B+ · #188 of 357
204Salem LakesKenosha County · 14,271 peopleBbetter than 61% of U.S. towns·Overall B− · #239 of 357
205PlattevilleGrant County · 11,815 peopleBbetter than 60% of U.S. towns·Overall B · #208 of 357
206St. FrancisMilwaukee County · 8,955 peopleBbetter than 60% of U.S. towns·Overall B− · #272 of 357
207LyonsWalworth County · 3,635 peopleBbetter than 60% of U.S. towns·Overall B− · #236 of 357
208WheatonChippewa County · 2,785 peopleBbetter than 60% of U.S. towns·Overall B+ · #161 of 357
209MiltonRock County · 3,129 peopleBbetter than 60% of U.S. towns·Overall B · #202 of 357
210ChaseOconto County · 3,373 peopleBbetter than 60% of U.S. towns·Overall A− · #104 of 357
211DodgevilleIowa County · 5,076 peopleBbetter than 60% of U.S. towns·Overall B · #223 of 357
212DenmarkBrown County · 2,875 peopleBbetter than 60% of U.S. towns·Overall A− · #128 of 357
213Arbor VitaeVilas County · 3,503 peopleBbetter than 59% of U.S. towns·Overall B+ · #179 of 357
214MiltonRock County · 6,024 peopleBbetter than 59% of U.S. towns·Overall A · #45 of 357
215HortonvilleOutagamie County · 3,340 peopleBbetter than 59% of U.S. towns·Overall A · #53 of 357
216Genoa CityWalworth County · 2,866 peopleBbetter than 59% of U.S. towns·Overall C+ · #304 of 357
217South MilwaukeeMilwaukee County · 20,191 peopleBbetter than 59% of U.S. towns·Overall B− · #271 of 357
218Sauk CitySauk County · 3,439 peopleBbetter than 59% of U.S. towns·Overall B− · #270 of 357
219Sheboygan FallsSheboygan County · 8,687 peopleBbetter than 58% of U.S. towns·Overall A− · #134 of 357
220SevastopolDoor County · 2,835 peopleBbetter than 58% of U.S. towns·Overall B · #204 of 357
221LuxemburgKewaunee County · 2,784 peopleBbetter than 58% of U.S. towns·Overall A · #47 of 357
222MonroeGreen County · 10,581 peopleBbetter than 58% of U.S. towns·Overall A− · #135 of 357
223TainterDunn County · 2,690 peopleBbetter than 58% of U.S. towns·Overall C · #322 of 357
224WheatlandKenosha County · 3,337 peopleBbetter than 58% of U.S. towns·Overall B− · #233 of 357
225BurlingtonRacine County · 6,403 peopleBbetter than 58% of U.S. towns·Overall B+ · #193 of 357
226Wisconsin DellsColumbia County · 3,149 peopleBbetter than 58% of U.S. towns·Overall C+ · #281 of 357
227RandallKenosha County · 3,276 peopleBbetter than 58% of U.S. towns·Overall B+ · #153 of 357
228MarshfieldWood County · 18,980 peopleBbetter than 58% of U.S. towns·Overall B+ · #157 of 357
229NeenahWinnebago County · 27,638 peopleBbetter than 58% of U.S. towns·Overall A− · #141 of 357
230PlymouthSheboygan County · 8,821 peopleBbetter than 58% of U.S. towns·Overall A− · #103 of 357
231PulaskiBrown County · 4,048 peopleBbetter than 57% of U.S. towns·Overall A · #41 of 357
232ShelbyLa Crosse County · 4,668 peopleBbetter than 57% of U.S. towns·Overall B− · #259 of 357
233CaledoniaRacine County · 25,229 peopleBbetter than 57% of U.S. towns·Overall B− · #254 of 357
234TaycheedahFond du Lac County · 4,690 peopleBbetter than 57% of U.S. towns·Overall B− · #243 of 357
235DelavanWalworth County · 5,210 peopleBbetter than 56% of U.S. towns·Overall B · #213 of 357
236Beaver DamDodge County · 16,542 peopleBbetter than 56% of U.S. towns·Overall B · #214 of 357
237LancasterGrant County · 4,031 peopleBbetter than 56% of U.S. towns·Overall C+ · #303 of 357
238OaklandJefferson County · 3,215 peopleBbetter than 56% of U.S. towns·Overall C+ · #302 of 357
239Sturgeon BayDoor County · 9,917 peopleBbetter than 56% of U.S. towns·Overall B+ · #182 of 357
240KewauneeKewaunee County · 2,793 peopleBbetter than 56% of U.S. towns·Overall A+ · #24 of 357
241WhitewaterWalworth County · 16,038 peopleBbetter than 55% of U.S. towns·Overall B− · #268 of 357
242HarmonyRock County · 2,608 peopleB−better than 55% of U.S. towns·Overall B · #198 of 357
243EmpireFond du Lac County · 2,790 peopleB−better than 55% of U.S. towns·Overall B− · #232 of 357
244Beaver DamDodge County · 4,105 peopleB−better than 54% of U.S. towns·Overall B · #203 of 357
245ChiltonCalumet County · 4,183 peopleB−better than 54% of U.S. towns·Overall A · #28 of 357
246FriendshipFond du Lac County · 2,774 peopleB−better than 54% of U.S. towns·Overall C+ · #288 of 357
247KielManitowoc County · 3,973 peopleB−better than 54% of U.S. towns·Overall A+ · #2 of 357
248DaytonWaupaca County · 2,608 peopleB−better than 54% of U.S. towns·Overall B+ · #173 of 357
249Eagle PointChippewa County · 3,267 peopleB−better than 54% of U.S. towns·Overall B− · #253 of 357
250FarmingtonWaupaca County · 3,501 peopleB−better than 54% of U.S. towns·Overall B · #211 of 357
251Fond du LacFond du Lac County · 3,780 peopleB−better than 54% of U.S. towns·Overall C+ · #278 of 357
252WilsonSheboygan County · 3,401 peopleB−better than 54% of U.S. towns·Overall C · #325 of 357
253PacificColumbia County · 2,769 peopleB−better than 54% of U.S. towns·Overall B · #225 of 357
254CudahyMilwaukee County · 17,655 peopleB−better than 52% of U.S. towns·Overall B− · #256 of 357
255Mount PleasantRacine County · 28,253 peopleB−better than 52% of U.S. towns·Overall C · #328 of 357
256Lake HallieChippewa County · 7,396 peopleB−better than 52% of U.S. towns·Overall B− · #273 of 357
257LincolnVilas County · 2,737 peopleB−better than 51% of U.S. towns·Overall B− · #240 of 357
258MinocquaOneida County · 5,062 peopleB−better than 51% of U.S. towns·Overall C+ · #301 of 357
259WausauMarathon County · 40,188 peopleB−better than 51% of U.S. towns·Overall B− · #274 of 357
260KoshkonongJefferson County · 3,776 peopleB−better than 51% of U.S. towns·Overall B− · #248 of 357
261BarabooSauk County · 13,224 peopleB−better than 50% of U.S. towns·Overall B− · #269 of 357
262WaterlooJefferson County · 3,600 peopleB−better than 50% of U.S. towns·Overall B · #217 of 357
263JeffersonJefferson County · 7,814 peopleB−better than 50% of U.S. towns·Overall C+ · #300 of 357
264WaupacaWaupaca County · 6,352 peopleB−better than 50% of U.S. towns·Overall B− · #242 of 357
265BurlingtonRacine County · 10,951 peopleB−better than 50% of U.S. towns·Overall B+ · #194 of 357
266DelavanWalworth County · 9,228 peopleB−better than 50% of U.S. towns·Overall C+ · #290 of 357
267LafayetteChippewa County · 6,430 peopleB−better than 50% of U.S. towns·Overall C+ · #312 of 357
268NewboldOneida County · 2,869 peopleB−better than 49% of U.S. towns·Overall C+ · #297 of 357
269Chippewa FallsChippewa County · 15,293 peopleB−better than 49% of U.S. towns·Overall B− · #257 of 357
270Grand RapidsWood County · 7,622 peopleB−better than 49% of U.S. towns·Overall B+ · #175 of 357
271La CrosseLa Crosse County · 50,784 peopleB−better than 49% of U.S. towns·Overall C− · #342 of 357
272MedfordTaylor County · 4,589 peopleB−better than 49% of U.S. towns·Overall B− · #246 of 357
273SuperiorDouglas County · 26,397 peopleB−better than 48% of U.S. towns·Overall C+ · #294 of 357
274PeshtigoMarinette County · 3,423 peopleB−better than 48% of U.S. towns·Overall A · #75 of 357
275Fort AtkinsonJefferson County · 12,388 peopleB−better than 48% of U.S. towns·Overall B+ · #191 of 357
276Lake DeltonSauk County · 3,451 peopleB−better than 47% of U.S. towns·Overall B− · #230 of 357
277BrillionCalumet County · 3,327 peopleB−better than 47% of U.S. towns·Overall A+ · #11 of 357
278RiponFond du Lac County · 7,738 peopleB−better than 47% of U.S. towns·Overall A · #83 of 357
279MayvilleDodge County · 5,184 peopleB−better than 47% of U.S. towns·Overall A− · #123 of 357
280PeshtigoMarinette County · 4,087 peopleB−better than 47% of U.S. towns·Overall C · #317 of 357
T281PelicanOneida County · 2,840 peopleB−better than 46% of U.S. towns·Overall B− · #255 of 357
T281Pine LakeOneida County · 2,733 peopleB−better than 46% of U.S. towns·Overall C+ · #284 of 357
283SaratogaWood County · 5,141 peopleB−better than 46% of U.S. towns·Overall C · #330 of 357
284OshkoshWinnebago County · 67,460 peopleB−better than 45% of U.S. towns·Overall C+ · #298 of 357
285BloomerChippewa County · 3,634 peopleB−better than 45% of U.S. towns·Overall B · #205 of 357
286WalworthWalworth County · 2,759 peopleC+better than 45% of U.S. towns·Overall C+ · #296 of 357
287JanesvilleRock County · 66,929 peopleC+better than 44% of U.S. towns·Overall C+ · #307 of 357
288Fox LakeDodge County · 2,550 peopleC+better than 44% of U.S. towns·Overall C · #324 of 357
289PortageColumbia County · 9,956 peopleC+better than 44% of U.S. towns·Overall C+ · #293 of 357
290Rice LakeBarron County · 2,897 peopleC+better than 44% of U.S. towns·Overall B+ · #144 of 357
291Rice LakeBarron County · 8,882 peopleC+better than 43% of U.S. towns·Overall C+ · #309 of 357
292Two RiversManitowoc County · 11,222 peopleC+better than 43% of U.S. towns·Overall B · #221 of 357
293SturtevantRacine County · 6,852 peopleC+better than 42% of U.S. towns·Overall B− · #277 of 357
294MarinetteMarinette County · 11,168 peopleC+better than 42% of U.S. towns·Overall C+ · #305 of 357
295BarronBarron County · 3,634 peopleC+better than 42% of U.S. towns·Overall C · #320 of 357
296WatertownJefferson County · 22,704 peopleC+better than 42% of U.S. towns·Overall B− · #263 of 357
297JanesvilleRock County · 3,699 peopleC+better than 42% of U.S. towns·Overall C+ · #291 of 357
298Fond du LacFond du Lac County · 44,541 peopleC+better than 42% of U.S. towns·Overall C · #327 of 357
299ManitowocManitowoc County · 34,671 peopleC+better than 42% of U.S. towns·Overall B− · #261 of 357
300SheboyganSheboygan County · 49,376 peopleC+better than 42% of U.S. towns·Overall C+ · #306 of 357
301LomiraDodge County · 2,686 peopleC+better than 41% of U.S. towns·Overall B · #216 of 357
302MenashaWinnebago County · 18,385 peopleC+better than 41% of U.S. towns·Overall B− · #266 of 357
303MukwaWaupaca County · 2,793 peopleC+better than 41% of U.S. towns·Overall B− · #276 of 357
304JuneauDodge County · 2,706 peopleC+better than 40% of U.S. towns·Overall A− · #137 of 357
305BloomfieldWalworth County · 6,369 peopleC+better than 39% of U.S. towns·Overall B− · #245 of 357
306RockRock County · 2,988 peopleC+better than 39% of U.S. towns·Overall C · #332 of 357
307KenoshaKenosha County · 99,239 peopleC+better than 37% of U.S. towns·Overall C− · #333 of 357
308MedfordTaylor County · 2,506 peopleC+better than 37% of U.S. towns·Overall B− · #237 of 357
309West MilwaukeeMilwaukee County · 3,984 peopleC+better than 37% of U.S. towns·Overall D · #349 of 357
310ReedsburgSauk County · 10,641 peopleC+better than 36% of U.S. towns·Overall C+ · #292 of 357
311HaywardSawyer County · 2,614 peopleC+better than 36% of U.S. towns·Overall D · #348 of 357
312RomeAdams County · 3,420 peopleC+better than 35% of U.S. towns·Overall D · #347 of 357
313SpoonerWashburn County · 2,531 peopleC+better than 35% of U.S. towns·Overall C · #315 of 357
314BrodheadGreen County · 3,214 peopleCbetter than 34% of U.S. towns·Overall B− · #244 of 357
315Green BayBrown County · 106,675 peopleCbetter than 34% of U.S. towns·Overall C− · #336 of 357
316HaywardSawyer County · 3,928 peopleCbetter than 34% of U.S. towns·Overall C− · #341 of 357
317North Fond du LacFond du Lac County · 5,425 peopleCbetter than 33% of U.S. towns·Overall C− · #339 of 357
318Bass LakeSawyer County · 2,896 peopleCbetter than 33% of U.S. towns·Overall C− · #344 of 357
319MerrillLincoln County · 2,856 peopleCbetter than 33% of U.S. towns·Overall B− · #260 of 357
320WaupunDodge County · 11,150 peopleCbetter than 33% of U.S. towns·Overall B · #201 of 357
321Richland CenterRichland County · 5,020 peopleCbetter than 32% of U.S. towns·Overall D · #345 of 357
322Black River FallsJackson County · 3,555 peopleCbetter than 32% of U.S. towns·Overall C+ · #310 of 357
323New LondonWaupaca County · 7,726 peopleCbetter than 31% of U.S. towns·Overall B+ · #174 of 357
324WescottShawano County · 3,287 peopleCbetter than 31% of U.S. towns·Overall D− · #355 of 357
325RhinelanderOneida County · 8,242 peopleCbetter than 31% of U.S. towns·Overall B · #226 of 357
326SpartaMonroe County · 3,277 peopleCbetter than 30% of U.S. towns·Overall C− · #335 of 357
327Wisconsin RapidsWood County · 18,654 peopleCbetter than 30% of U.S. towns·Overall C− · #343 of 357
328HoriconDodge County · 3,917 peopleCbetter than 29% of U.S. towns·Overall B− · #247 of 357
329StanleyChippewa County · 3,876 peopleCbetter than 29% of U.S. towns·Overall B+ · #178 of 357
330FennimoreGrant County · 2,775 peopleCbetter than 28% of U.S. towns·Overall A− · #99 of 357
331StephensonMarinette County · 3,654 peopleCbetter than 26% of U.S. towns·Overall D · #354 of 357
332MondoviBuffalo County · 2,853 peopleCbetter than 26% of U.S. towns·Overall C+ · #283 of 357
333TomahMonroe County · 9,600 peopleCbetter than 26% of U.S. towns·Overall D · #346 of 357
334ClintonvilleWaupaca County · 4,499 peopleCbetter than 25% of U.S. towns·Overall C · #314 of 357
335CampbellLa Crosse County · 4,092 peopleC−better than 24% of U.S. towns·Overall C · #319 of 357
336BerlinGreen Lake County · 5,588 peopleC−better than 24% of U.S. towns·Overall B · #219 of 357
337OcontoOconto County · 4,640 peopleC−better than 24% of U.S. towns·Overall B · #222 of 357
338ArcadiaTrempealeau County · 3,840 peopleC−better than 24% of U.S. towns·Overall C+ · #282 of 357
339AshlandAshland County · 7,927 peopleC−better than 23% of U.S. towns·Overall D · #351 of 357
340BeloitRock County · 8,014 peopleC−better than 23% of U.S. towns·Overall B− · #252 of 357
341AlgomaKewaunee County · 3,225 peopleC−better than 23% of U.S. towns·Overall B− · #249 of 357
342BoscobelGrant County · 3,250 peopleC−better than 23% of U.S. towns·Overall C− · #337 of 357
343SpartaMonroe County · 9,974 peopleC−better than 23% of U.S. towns·Overall C− · #340 of 357
344Oconto FallsOconto County · 3,012 peopleC−better than 22% of U.S. towns·Overall C+ · #280 of 357
345TomahawkLincoln County · 3,387 peopleC−better than 22% of U.S. towns·Overall C+ · #295 of 357
346MerrillLincoln County · 9,389 peopleC−better than 21% of U.S. towns·Overall C · #329 of 357
347ShawanoShawano County · 9,693 peopleC−better than 21% of U.S. towns·Overall C · #321 of 357
348BrockwayJackson County · 2,991 peopleC−better than 20% of U.S. towns·Overall D · #353 of 357
349RacineRacine County · 77,908 peopleC−better than 20% of U.S. towns·Overall D · #350 of 357
350Prairie du ChienCrawford County · 5,408 peopleC−better than 19% of U.S. towns·Overall C+ · #285 of 357
351AntigoLanglade County · 8,060 peopleC−better than 18% of U.S. towns·Overall C · #323 of 357
352BeloitRock County · 36,649 peopleC−better than 17% of U.S. towns·Overall D · #352 of 357
353Lac du FlambeauVilas County · 3,659 peopleC−better than 17% of U.S. towns·Overall D− · #356 of 357
354LadysmithRusk County · 3,172 peopleC−better than 17% of U.S. towns·Overall C− · #334 of 357
355New LisbonJuneau County · 2,577 peopleC−better than 17% of U.S. towns·Overall C · #326 of 357
356MilwaukeeMilwaukee County · 562,407 peopleDbetter than 14% of U.S. towns·Overall D− · #357 of 357
357MaustonJuneau County · 4,133 peopleDbetter than 11% of U.S. towns·Overall C · #316 of 357
Not ranked

5 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 Wisconsin?

Whitefish Bay (Milwaukee County) ranks first on health among 357 towns, with an A+; Verona and Middleton 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 (357 in Wisconsin). 5 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 Wisconsin page.

Go deeper

More Wisconsin lists

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

All Wisconsin rankings →
Other states

Healthiest towns in other states