MIMichigan rankings

Towns where housing hasn't kept up with growth in Michigan

Ranked by how many new residents each town gained for every new home it permitted between the 2010 and 2020 censuses. 182 towns with 2,500+ residents.

U.S. Census ACS 2020–2024 5-year

#TownNew residents per new homeResidents gainedHomes permitted
1 Map of Lincoln Park Lincoln Park39,257 people 72.5 per home 2,101 29
2 Coldwater Coldwater13,671 people 65.4 per home 2,877 44
3 Hamtramck Hamtramck27,743 people 62.6 per home 6,010 96
4 Inkster Inkster25,428 people 59.9 per home 719 12
5 Dearborn Heights Dearborn Heights61,771 people 52.6 per home 5,518 105
6 Dearborn Dearborn107,423 people 48.5 per home 11,823 244
7 LenoxMacomb County · 12,687 people 40.2 per home 1,649 41
8 Map of Eastpointe Eastpointe33,982 people 36.8 per home 1,876 51
9 Map of Gibraltar Gibraltar4,873 people 31.0 per home 341 11
10 Map of Dundee DundeeMonroe County · 8,527 people 26.2 per home 1,386 53
11 Farmington Farmington11,504 people 25.5 per home 1,225 48
12 Southfield Southfield76,236 people 23.9 per home 4,879 204
13 Coopersville Coopersville4,848 people 21.3 per home 553 26
14 Map of Grosse Pointe Farms Grosse Pointe Farms9,904 people 18.6 per home 669 36
15 Map of Grandville Grandville16,356 people 13.6 per home 705 52
16 Walled Lake Walled Lake7,299 people 13.2 per home 251 19
17 Farmington Hills Farmington Hills83,515 people 13.0 per home 4,246 326
18 Holland Holland34,423 people 12.8 per home 1,327 104
19 LeroyIngham County · 3,836 people 12.4 per home 261 21
20 Map of Wixom Wixom17,295 people 11.8 per home 3,695 314
21 Map of North Muskegon North Muskegon4,098 people 11.4 per home 307 27
22 Map of New Haven New Haven6,475 people 10.3 per home 1,455 142
23 Schoolcraft SchoolcraftKalamazoo County · 9,237 people 9.3 per home 969 104
24 Warren Warren137,928 people 9.3 per home 5,331 575
25 Salem SalemWashtenaw County · 6,932 people 9.2 per home 1,391 152
26 Bloomfield Hills Bloomfield Hills4,415 people 8.1 per home 591 73
27 Pontiac Pontiac62,104 people 8.0 per home 2,091 263
28 AlpineKent County · 14,040 people 7.5 per home 743 99
29 EgelstonMuskegon County · 11,276 people 7.3 per home 1,219 167
30 Map of Grosse Pointe Woods Grosse Pointe Woods16,094 people 7.0 per home 352 50
31 Map of Groveland GrovelandOakland County · 6,069 people 7.0 per home 436 62
32 BlackmanJackson County · 25,605 people 6.7 per home 1,591 237
33 Kentwood Kentwood54,296 people 6.6 per home 5,597 846
34 Kalamazoo KalamazooKalamazoo County · 22,649 people 6.4 per home 859 134
35 Map of Beverly Hills Beverly Hills10,524 people 6.2 per home 317 51
36 Bloomfield BloomfieldOakland County · 44,097 people 6.1 per home 3,183 523
37 GainesKent County · 29,469 people 6.0 per home 3,666 609
38 AntwerpVan Buren County · 13,588 people 5.7 per home 1,243 217
39 LakeBerrien County · 3,334 people 5.7 per home 344 60
40 Ann Arbor Ann ArborWashtenaw County · 4,606 people 5.5 per home 312 57
41 Niles Niles11,803 people 5.5 per home 388 71
42 Map of Wayland Wayland4,457 people 5.4 per home 356 66
43 Hudsonville Hudsonville7,769 people 5.3 per home 513 96
44 TyroneKent County · 5,132 people 5.2 per home 290 56
45 Romulus Romulus24,831 people 5.2 per home 1,189 230
46 Yankee SpringsBarry County · 5,406 people 5.0 per home 1,257 253
47 Van Buren Van BurenWayne County · 29,954 people 4.9 per home 1,554 317
48 Holly HollyOakland County · 12,220 people 4.9 per home 644 132
49 Map of Frenchtown FrenchtownMonroe County · 21,665 people 4.8 per home 1,181 247
50 Map of Milford MilfordOakland County · 17,129 people 4.8 per home 1,354 284
51 Map of Springfield SpringfieldOakland County · 14,784 people 4.8 per home 763 160
52 LeightonAllegan County · 7,149 people 4.8 per home 2,067 433
53 RichfieldGenesee County · 8,971 people 4.7 per home 261 56
54 Troy Troy87,898 people 4.6 per home 6,314 1,367
55 Map of Richland RichlandKalamazoo County · 8,864 people 4.4 per home 1,113 251
56 HeathAllegan County · 3,966 people 4.4 per home 620 140
57 Map of Roseville Roseville47,123 people 4.4 per home 411 93
58 Novi Novi66,717 people 4.4 per home 11,019 2,508
59 Sparta SpartaKent County · 9,494 people 4.4 per home 285 65
60 WilliamstownIngham County · 5,295 people 4.3 per home 308 72
61 Redford RedfordWayne County · 48,338 people 4.3 per home 1,142 269
62 OshtemoKalamazoo County · 23,852 people 4.2 per home 2,042 489
63 Greenville Greenville8,995 people 4.1 per home 335 81
64 Battle Creek Battle Creek52,374 people 4.1 per home 374 92
65 Caledonia CaledoniaKent County · 16,485 people 4.1 per home 3,479 857
66 ByronKent County · 27,691 people 4.0 per home 6,610 1,657
67 Chelsea Chelsea5,426 people 4.0 per home 523 131
68 SuperiorWashtenaw County · 14,923 people 3.9 per home 1,774 453
69 Ypsilanti YpsilantiWashtenaw County · 55,066 people 3.9 per home 2,308 591
70 Courtland CourtlandKent County · 9,102 people 3.9 per home 1,327 345
71 Atlas AtlasGenesee County · 8,291 people 3.8 per home 359 94
72 Port Sheldon Port SheldonOttawa County · 5,254 people 3.8 per home 966 253
73 Map of Flat Rock Flat Rock10,340 people 3.8 per home 663 175
74 Map of Zeeland ZeelandOttawa County · 12,137 people 3.8 per home 2,037 540
75 ManliusAllegan County · 3,359 people 3.7 per home 295 79
76 Rochester Hills Rochester Hills77,089 people 3.7 per home 5,305 1,425
77 RoyaltonBerrien County · 5,140 people 3.7 per home 375 101
78 Grosse Ile Grosse IleWayne County · 10,344 people 3.7 per home 417 113
79 JamestownOttawa County · 10,039 people 3.7 per home 2,596 712
80 TexasKalamazoo County · 18,226 people 3.6 per home 2,994 834
81 Northville NorthvilleWayne County · 31,557 people 3.5 per home 3,261 923
82 Georgetown GeorgetownOttawa County · 54,965 people 3.4 per home 7,106 2,089
83 HuronWayne County · 16,695 people 3.4 per home 1,065 313
84 Green Oak Green OakLivingston County · 19,777 people 3.4 per home 2,063 609
85 Map of Wyoming Wyoming77,353 people 3.4 per home 4,376 1,293
86 Map of Lyon LyonOakland County · 24,933 people 3.3 per home 8,726 2,634
87 VergennesKent County · 4,853 people 3.3 per home 552 167
88 Grand Blanc Grand BlancGenesee County · 39,943 people 3.2 per home 2,338 722
89 TallmadgeOttawa County · 9,027 people 3.2 per home 1,227 379
90 Northfield NorthfieldWashtenaw County · 8,595 people 3.2 per home 305 95
91 Blendon BlendonOttawa County · 7,357 people 3.2 per home 1,309 416
92 Spring Lake Spring LakeOttawa County · 15,517 people 3.1 per home 996 318
93 Garfield GarfieldGrand Traverse County · 19,913 people 3.1 per home 3,243 1,040
94 Howell Howell10,021 people 3.1 per home 579 189
95 Map of Norton Shores Norton Shores25,041 people 3.1 per home 1,036 340
96 SalemAllegan County · 5,178 people 3.0 per home 710 235
97 Westland Westland83,633 people 3.0 per home 1,326 441
98 Pittsfield PittsfieldWashtenaw County · 39,438 people 3.0 per home 4,484 1,489
99 Gun PlainAllegan County · 6,151 people 3.0 per home 253 84
100 Map of Walker Walker25,386 people 3.0 per home 1,595 532
101 Sterling Heights Sterling Heights133,573 people 3.0 per home 4,647 1,554
102 Vicksburg Vicksburg3,934 people 3.0 per home 800 268
103 Map of Wayland WaylandAllegan County · 3,591 people 3.0 per home 485 162
104 Map of Dundee Dundee5,744 people 3.0 per home 1,366 463
105 Oakland OaklandOakland County · 20,339 people 2.9 per home 3,288 1,119
106 Map of Otsego OtsegoAllegan County · 5,962 people 2.9 per home 309 107
107 DorrAllegan County · 7,934 people 2.9 per home 483 169
108 Meridian MeridianIngham County · 44,217 people 2.8 per home 4,228 1,495
109 Spring ArborJackson County · 8,498 people 2.8 per home 263 95
110 BathClinton County · 13,414 people 2.8 per home 1,694 616
111 WatertownClinton County · 5,689 people 2.7 per home 727 270
112 Canton CantonWayne County · 99,041 people 2.7 per home 8,486 3,172
113 AureliusIngham County · 4,370 people 2.7 per home 829 311
114 Auburn Hills Auburn Hills25,105 people 2.6 per home 2,948 1,117
115 BerlinMonroe County · 9,995 people 2.6 per home 591 224
116 MacombMacomb County · 92,629 people 2.6 per home 12,083 4,691
117 Plainfield PlainfieldKent County · 34,040 people 2.6 per home 2,583 1,009
118 York YorkWashtenaw County · 9,149 people 2.6 per home 400 156
119 Map of Tittabawassee TittabawasseeSaginaw County · 10,755 people 2.5 per home 880 348
120 OntwaCass County · 6,870 people 2.5 per home 355 141
121 Grand Haven Grand HavenOttawa County · 18,866 people 2.4 per home 2,826 1,170
122 Map of Grand Rapids Grand Rapids198,535 people 2.4 per home 10,877 4,535
123 Niles NilesBerrien County · 14,328 people 2.4 per home 253 106
124 Taylor Taylor62,081 people 2.4 per home 278 117
125 Map of Portage Portage49,259 people 2.4 per home 2,599 1,106
126 Bear Creek Bear CreekEmmet County · 6,544 people 2.4 per home 341 145
127 Map of Oxford OxfordOakland County · 22,593 people 2.3 per home 1,893 814
128 Utica Utica5,180 people 2.3 per home 488 213
129 Brownstown BrownstownWayne County · 32,889 people 2.3 per home 2,567 1,130
130 CrockeryOttawa County · 4,676 people 2.3 per home 612 271
131 AlgomaKent County · 12,264 people 2.3 per home 2,123 943
132 SolonKent County · 6,543 people 2.2 per home 522 234
133 BruceMacomb County · 9,747 people 2.2 per home 624 283
134 Map of Milford Milford6,487 people 2.2 per home 345 159
135 West Bloomfield West BloomfieldOakland County · 65,816 people 2.2 per home 1,198 556
136 Fenton FentonGenesee County · 17,067 people 2.2 per home 1,291 601
137 SummitJackson County · 22,817 people 2.1 per home 412 194
138 FruitlandMuskegon County · 5,869 people 2.1 per home 250 118
139 Holland HollandOttawa County · 39,637 people 2.1 per home 2,640 1,255
140 Independence IndependenceOakland County · 36,982 people 2.1 per home 2,005 968
141 Almena AlmenaVan Buren County · 5,346 people 2.1 per home 316 154
142 Map of Davison DavisonGenesee County · 20,434 people 2.0 per home 859 422
143 Map of Adrian AdrianLenawee County · 6,341 people 2.0 per home 366 180
144 Allegan AlleganAllegan County · 4,793 people 2.0 per home 283 141
145 Orion OrionOakland County · 38,546 people 1.9 per home 2,812 1,446
146 DelhiIngham County · 28,024 people 1.9 per home 1,833 945
147 Map of Commerce CommerceOakland County · 43,840 people 1.9 per home 2,872 1,494
148 WashingtonMacomb County · 28,569 people 1.9 per home 3,026 1,572
149 Almont AlmontLapeer County · 7,009 people 1.9 per home 378 198
150 Map of Saugatuck SaugatuckAllegan County · 3,548 people 1.9 per home 499 262
151 KimballSt. Clair County · 9,624 people 1.9 per home 251 133
152 CannonKent County · 14,450 people 1.9 per home 1,043 555
153 Map of Birmingham Birmingham21,763 people 1.9 per home 1,710 924
154 Map of DeWitt DeWitt4,777 people 1.8 per home 269 146
155 Map of Rockford Rockford6,218 people 1.8 per home 423 232
156 LaketownAllegan County · 6,115 people 1.8 per home 423 233
157 Map of Clinton ClintonMacomb County · 100,447 people 1.8 per home 3,717 2,053
158 South Lyon South Lyon11,950 people 1.8 per home 419 240
159 RaisinLenawee County · 7,981 people 1.7 per home 341 197
160 OakfieldKent County · 6,122 people 1.7 per home 325 188
161 Fenton Fenton11,906 people 1.7 per home 294 177
162 RobinsonOttawa County · 6,388 people 1.7 per home 298 179
163 White Lake White LakeOakland County · 31,046 people 1.6 per home 931 578
164 ComstockKalamazoo County · 15,256 people 1.6 per home 377 236
165 Plymouth PlymouthWayne County · 27,412 people 1.6 per home 414 261
166 ShelbyMacomb County · 79,641 people 1.6 per home 5,604 3,555
167 ParkOttawa County · 18,901 people 1.6 per home 823 524
168 WilliamsBay County · 5,050 people 1.6 per home 286 183
169 Grass Lake Grass LakeJackson County · 6,177 people 1.5 per home 385 254
170 Grand Haven Grand Haven10,996 people 1.4 per home 599 426
171 Saginaw SaginawSaginaw County · 41,281 people 1.3 per home 839 634
172 ChesterfieldMacomb County · 46,152 people 1.3 per home 1,995 1,524
173 Map of DeWitt DeWittClinton County · 15,313 people 1.3 per home 752 572
174 DeltaEaton County · 33,104 people 1.3 per home 711 557
175 OliveOttawa County · 5,145 people 1.3 per home 272 212
176 St. Clair St. ClairSt. Clair County · 7,126 people 1.2 per home 268 230
177 Rochester Rochester12,934 people 1.1 per home 324 298
178 Cascade CascadeKent County · 19,864 people 0.9 per home 2,533 2,817
179 CooperKalamazoo County · 10,469 people 0.8 per home 307 364
180 Midland Midland42,724 people 0.7 per home 684 955
181 Royal Oak Royal Oak57,950 people 0.7 per home 975 1,440
182 Map of Bedford BedfordMonroe County · 31,914 people 0.6 per home 728 1,205

How this ranking works

We take each town’s population change between the 2010 and 2020 censuses and divide it by the new homes its building permits authorized over 2010–2019. The result is how many new residents arrived for every new home. A high number means people came faster than homes were built, so existing homes filled up: larger households, fewer vacancies and tighter supply. The highest ratio ranks #1. Across Michigan it’s 1.2 per home.

Only towns that gained at least 250 residents and permitted at least 10 homes are ranked, because a ratio built on a handful of either is noise. College towns, where 20% or more of residents are enrolled in college, are left out: a growing college adds dorm students as residents, but dorms never show up as permitted homes.

Only towns with at least 2,500 residents are ranked; Census estimates for smaller places are too uncertain. Population and income: U.S. Census Bureau American Community Survey 5-year estimates. New homes: U.S. Census Bureau Building Permits Survey. Residents: 2010 and 2020 decennial censuses. Town photos: Wikimedia Commons, credited on each town’s page.

Same ranking in other states