Wisconsin · 157 places of 5,000+
Fastest-growing cities in Wisconsin, 2020 to 2024
Short answer
- Fastest
- +21.5%
- Growing
- 100
- Shrinking
- 57
The 20 fastest-growing
Cottage Grove grew fastest, from 7,386 in July 2020 to 8,974 in July 2024, +21.5%. It is the 108th largest of the 157 places ranked. 100 places grew and 57 shrank or held flat; the median change was +0.8%.
By raw numbers the biggest gain was in Madison, +10,416 people. At the other end, Portage changed by -5.8%. Growth is measured between the July 2020 and July 2024 estimates for places with 5,000 or more residents in 2024, so fast growth from a small base can outrank larger absolute gains.
- 01Cottage Grove+21.5%
- 02Verona+20.3%
- 03Windsor+13.8%
- 04DeForest+13.3%
- 05Harrison+13.2%
- 06Summit+10.6%
- 07Altoona+10.6%
- 08Holmen+10.2%
- 09Howard+9.8%
- 10Oconomowoc+9.8%
- 11Fitchburg+9.8%
- 12Waunakee+9.7%
- 13River Falls+9.1%
- 14Sun Prairie+9.0%
- 15Union Grove+8.7%
- 16Sussex+8.4%
- 17Glendale+7.3%
- 18Lisbon+7.2%
- 19Kaukauna+7.2%
- 20New Richmond+7.1%
Dots: the 20 places in the chart. Orange pin: Cottage Grove, ranked first.
All 157 places of 5,000+ ranked
| # | Place | 2024 | Since 2020 | County |
|---|---|---|---|---|
| 1 | Cottage Grove | 8,974 | +21.5% | Dane County |
| 2 | Verona | 16,825 | +20.3% | Dane County |
| 3 | Windsor | 10,005 | +13.8% | Dane County |
| 4 | DeForest | 12,260 | +13.3% | Dane County |
| 5 | Harrison | 14,254 | +13.2% | Calumet County |
| 6 | Summit | 5,346 | +10.6% | Waukesha County |
| 7 | Altoona | 9,302 | +10.6% | Eau Claire County |
| 8 | Holmen | 11,866 | +10.2% | La Crosse County |
| 9 | Howard | 21,961 | +9.8% | Brown County |
| 10 | Oconomowoc | 20,002 | +9.8% | Waukesha County |
| 11 | Fitchburg | 34,357 | +9.8% | Dane County |
| 12 | Waunakee | 16,363 | +9.7% | Dane County |
| 13 | River Falls | 17,802 | +9.1% | Pierce County +1 |
| 14 | Sun Prairie | 39,253 | +9.0% | Dane County |
| 15 | Union Grove | 5,241 | +8.7% | Racine County |
| 16 | Sussex | 12,607 | +8.4% | Waukesha County |
| 17 | Glendale | 14,381 | +7.3% | Milwaukee County |
| 18 | Lisbon | 11,127 | +7.2% | Waukesha County |
| 19 | Kaukauna | 18,363 | +7.2% | Outagamie County |
| 20 | New Richmond | 10,879 | +7.1% | St. Croix County |
| 21 | Hartland | 10,203 | +7.1% | Waukesha County |
| 22 | East Troy | 5,011 | +6.9% | Walworth County |
| 23 | Cedarburg | 13,011 | +6.6% | Ozaukee County |
| 24 | Slinger | 6,443 | +6.5% | Washington County |
| 25 | Hobart | 10,876 | +6.4% | Brown County |
| 26 | Delavan | 9,055 | +6.1% | Walworth County |
| 27 | Oregon | 11,895 | +5.8% | Dane County |
| 28 | Waterford | 5,885 | +5.7% | Racine County |
| 29 | Lake Mills | 6,617 | +5.6% | Jefferson County |
| 30 | Sheboygan Falls | 8,656 | +5.5% | Sheboygan County |
| 31 | Onalaska | 19,898 | +5.5% | La Crosse County |
| 32 | Grafton | 12,741 | +5.4% | Ozaukee County |
| 33 | Menomonee Falls | 40,700 | +5.4% | Waukesha County |
| 34 | Bellevue | 16,749 | +5.0% | Brown County |
| 35 | Plover | 14,208 | +4.8% | Portage County |
| 36 | Oak Creek | 38,373 | +4.6% | Milwaukee County |
| 37 | Lake Geneva | 8,691 | +4.6% | Walworth County |
| 38 | Baraboo | 13,096 | +4.5% | Sauk County |
| 39 | Shawano | 9,635 | +4.3% | Shawano County |
| 40 | Greenville | 13,273 | +4.2% | Outagamie County |
| 41 | Eau Claire | 72,331 | +4.1% | Eau Claire County +1 |
| 42 | Jackson | 8,169 | +3.9% | Washington County |
| 43 | Madison | 285,300 | +3.8% | Dane County |
| 44 | Edgerton | 6,138 | +3.2% | Rock County +1 |
| 45 | Pewaukee | 16,437 | +3.1% | Waukesha County |
| 46 | Stevens Point | 26,465 | +2.9% | Portage County |
| 47 | Sturgeon Bay | 9,940 | +2.8% | Door County |
| 48 | Muskego | 25,759 | +2.6% | Waukesha County |
| 49 | Port Washington | 12,750 | +2.5% | Ozaukee County |
| 50 | Kimberly | 7,529 | +2.5% | Outagamie County |
| 51 | Reedsburg | 10,314 | +2.5% | Sauk County |
| 52 | Pleasant Prairie | 21,802 | +2.5% | Kenosha County |
| 53 | Middleton | 22,566 | +2.4% | Dane County |
| 54 | New London | 7,524 | +2.4% | Waupaca County +1 |
| 55 | Mukwonago | 8,512 | +2.4% | Waukesha County +1 |
| 56 | Lake Hallie | 7,349 | +2.3% | Chippewa County |
| 57 | Chippewa Falls | 15,075 | +2.3% | Chippewa County |
| 58 | Ashwaubenon | 17,437 | +2.0% | Brown County |
| 59 | Hartford | 15,984 | +2.0% | Washington County +1 |
| 60 | Fox Crossing | 19,362 | +1.9% | Winnebago County |
| 61 | Dodgeville | 5,077 | +1.9% | Iowa County |
| 62 | Suamico | 13,109 | +1.9% | Brown County |
| 63 | McFarland | 9,224 | +1.8% | Dane County |
| 64 | Evansville | 5,819 | +1.8% | Rock County |
| 65 | Mount Pleasant | 28,184 | +1.5% | Racine County |
| 66 | Hudson | 15,031 | +1.4% | St. Croix County |
| 67 | Rothschild | 5,629 | +1.3% | Marathon County |
| 68 | West Bend | 32,149 | +1.3% | Washington County |
| 69 | Waukesha | 8,573 | +1.3% | Waukesha County |
| 70 | Franklin | 36,591 | +1.2% | Milwaukee County |
| 71 | Milton | 5,778 | +1.2% | Rock County |
| 72 | Delafield | 7,275 | +1.2% | Waukesha County |
| 73 | Janesville | 66,428 | +1.2% | Rock County |
| 74 | Merrill | 9,445 | +1.0% | Lincoln County |
| 75 | Wauwatosa | 48,794 | +1.0% | Milwaukee County |
| 76 | Menasha | 18,433 | +0.8% | Winnebago County +1 |
| 77 | Weston | 15,866 | +0.8% | Marathon County |
| 78 | Bristol | 5,239 | +0.8% | Kenosha County |
| 79 | Mequon | 25,329 | +0.8% | Ozaukee County |
| 80 | Kronenwetter | 8,435 | +0.8% | Marathon County |
| 81 | Hales Corners | 7,766 | +0.7% | Milwaukee County |
| 82 | North Fond du Lac | 5,419 | +0.7% | Fond du Lac County |
| 83 | Mount Horeb | 7,803 | +0.6% | Dane County |
| 84 | Berlin | 5,607 | +0.6% | Green Lake County +1 |
| 85 | Germantown | 21,032 | +0.6% | Washington County |
| 86 | Wausau | 40,262 | +0.5% | Marathon County |
| 87 | Oshkosh | 67,242 | +0.5% | Winnebago County |
| 88 | Waukesha | 71,461 | +0.5% | Waukesha County |
| 89 | Ashland | 7,940 | +0.4% | Ashland County |
| 90 | Vernon | 7,505 | +0.4% | Waukesha County |
| 91 | Neenah | 27,502 | +0.4% | Winnebago County |
| 92 | Antigo | 8,096 | +0.3% | Langlade County |
| 93 | Richfield | 11,783 | +0.3% | Washington County |
| 94 | Mayville | 5,205 | +0.3% | Dodge County |
| 95 | Marinette | 11,139 | +0.2% | Marinette County |
| 96 | Little Chute | 11,761 | +0.2% | Outagamie County |
| 97 | De Pere | 25,453 | +0.2% | Brown County |
| 98 | Marshfield | 18,973 | +0.1% | Wood County +1 |
| 99 | Brown Deer | 12,527 | +0.1% | Milwaukee County |
| 100 | Pewaukee | 8,230 | +0.1% | Waukesha County |
| 101 | Platteville | 11,833 | -0.0% | Grant County |
| 102 | Twin Lakes | 6,328 | -0.0% | Kenosha County |
| 103 | Tomah | 9,574 | -0.0% | Monroe County |
| 104 | Rhinelander | 8,286 | -0.1% | Oneida County |
| 105 | Manitowoc | 34,616 | -0.1% | Manitowoc County |
| 106 | Racine | 78,057 | -0.1% | Racine County |
| 107 | Stoughton | 13,134 | -0.2% | Dane County |
| 108 | Jefferson | 7,766 | -0.2% | Jefferson County |
| 109 | Beloit | 36,633 | -0.2% | Rock County |
| 110 | Appleton | 75,344 | -0.3% | Outagamie County +2 |
| 111 | Whitewater | 16,076 | -0.3% | Walworth County +1 |
| 112 | Rib Mountain | 7,275 | -0.4% | Marathon County |
| 113 | Caledonia | 25,240 | -0.4% | Racine County |
| 114 | New Berlin | 40,302 | -0.4% | Waukesha County |
| 115 | Kenosha | 99,578 | -0.4% | Kenosha County |
| 116 | Fond du Lac | 44,469 | -0.5% | Fond du Lac County |
| 117 | West Salem | 5,306 | -0.5% | La Crosse County |
| 118 | Monroe | 10,579 | -0.5% | Green County |
| 119 | Brookfield | 41,268 | -0.5% | Waukesha County |
| 120 | Two Rivers | 11,214 | -0.5% | Manitowoc County |
| 121 | Monona | 8,616 | -0.6% | Dane County |
| 122 | Superior | 26,620 | -0.7% | Douglas County |
| 123 | Sheboygan | 49,624 | -0.7% | Sheboygan County |
| 124 | Sparta | 9,963 | -0.8% | Monroe County |
| 125 | West Allis | 59,784 | -0.8% | Milwaukee County |
| 126 | Menomonie | 16,709 | -0.9% | Dunn County |
| 127 | Sturtevant | 6,855 | -0.9% | Racine County |
| 128 | Plymouth | 8,854 | -0.9% | Sheboygan County |
| 129 | Green Bay | 106,311 | -0.9% | Brown County |
| 130 | Wisconsin Rapids | 18,675 | -0.9% | Wood County |
| 131 | Burlington | 10,939 | -1.0% | Racine County |
| 132 | Prairie du Chien | 5,472 | -1.0% | Crawford County |
| 133 | Rice Lake | 8,971 | -1.0% | Barron County |
| 134 | Greenfield | 37,232 | -1.3% | Milwaukee County |
| 135 | Watertown | 22,617 | -1.4% | Jefferson County +1 |
| 136 | Elkhorn | 10,122 | -1.4% | Walworth County |
| 137 | Waupaca | 6,231 | -1.5% | Waupaca County |
| 138 | Allouez | 13,923 | -1.5% | Brown County |
| 139 | Fort Atkinson | 12,377 | -1.6% | Jefferson County |
| 140 | Beaver Dam | 16,443 | -1.6% | Dodge County |
| 141 | Ripon | 7,716 | -1.7% | Fond du Lac County |
| 142 | Columbus | 5,429 | -1.8% | Columbia County |
| 143 | Salem Lakes | 14,302 | -2.0% | Kenosha County |
| 144 | St. Francis | 8,951 | -2.2% | Milwaukee County |
| 145 | Elm Grove | 6,416 | -2.2% | Waukesha County |
| 146 | Shorewood | 13,521 | -2.3% | Milwaukee County |
| 147 | Milwaukee | 563,531 | -2.4% | Milwaukee County |
| 148 | Greendale | 14,455 | -2.5% | Milwaukee County |
| 149 | South Milwaukee | 20,233 | -2.6% | Milwaukee County |
| 150 | Cudahy | 17,704 | -2.6% | Milwaukee County |
| 151 | Whitefish Bay | 14,532 | -2.7% | Milwaukee County |
| 152 | Richland Center | 5,052 | -2.7% | Richland County |
| 153 | La Crosse | 51,049 | -3.1% | La Crosse County |
| 154 | Somers | 8,194 | -3.1% | Kenosha County |
| 155 | Waupun | 11,131 | -3.8% | Dodge County +1 |
| 156 | Fox Point | 6,591 | -4.8% | Milwaukee County |
| 157 | Portage | 9,975 | -5.8% | Columbia County |
Questions people ask
What is the fastest-growing city in Wisconsin?
Cottage Grove, up 21.5% from July 2020 to July 2024 among places of 5,000+, to 8,974 residents.
Which Wisconsin city added the most people?
Madison, which gained 10,416 residents from July 2020 to July 2024.
How many Wisconsin cities are shrinking?
57 of 157 places of 5,000+ had the same or fewer residents in July 2024 than in July 2020.
Why use places of 5,000 or more?
Small towns can swing by double-digit percentages from a few new homes, and Census estimates for them carry more uncertainty. The 5,000 floor keeps the ranking to places where a percentage means something.
Sources and data as of
Data as of: Census Vintage 2024 population estimates, 2024 Gazetteer land area and internal points, SAIPE 2023 median household income.
How every number is computed: methodology. Spotted a wrong figure? Report an error.