MAMassachusetts rankings

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

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

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

#TownNew residents per new homeResidents gainedHomes permitted
1 Malden Malden65,906 people 83.1 per home 6,813 82
2 Lawrence Lawrence88,736 people 51.7 per home 12,766 247
3 Revere Revere60,012 people 35.5 per home 10,431 294
4 New Bedford New Bedford100,998 people 26.7 per home 6,007 225
5 Worcester Worcester207,055 people 25.2 per home 25,473 1,011
6 Lynn Lynn101,709 people 22.6 per home 10,924 483
7 Brockton Brockton105,386 people 17.8 per home 11,833 665
8 Brookline BrooklineNorfolk County · 63,266 people 15.3 per home 4,459 291
9 Milton MiltonNorfolk County · 28,587 people 15.1 per home 1,627 108
10 Peabody Peabody54,695 people 13.6 per home 3,230 237
11 Marlborough Marlborough41,647 people 13.0 per home 3,294 253
12 Salem Salem44,795 people 12.7 per home 3,140 247
13 Webster WebsterWorcester County · 17,748 people 11.1 per home 1,009 91
14 Lowell Lowell118,368 people 10.6 per home 9,035 855
15 Haverhill Haverhill67,698 people 9.9 per home 6,908 698
16 Beverly Beverly42,665 people 9.6 per home 3,168 329
17 Fitchburg Fitchburg41,798 people 9.6 per home 1,628 169
18 Fall River Fall River94,082 people 9.5 per home 5,143 543
19 Clinton ClintonWorcester County · 15,563 people 8.8 per home 1,822 208
20 Holbrook HolbrookNorfolk County · 11,380 people 8.7 per home 614 71
21 Map of Westborough WestboroughWorcester County · 21,944 people 8.6 per home 3,295 385
22 Melrose Melrose29,650 people 8.4 per home 2,834 337
23 Quincy Quincy102,114 people 8.0 per home 9,365 1,169
24 Braintree Town Braintree Town38,899 people 7.6 per home 3,399 446
25 Southbridge Town Southbridge Town17,928 people 7.5 per home 1,021 136
26 Danvers DanversEssex County · 28,098 people 7.4 per home 1,594 215
27 Norwood NorwoodNorfolk County · 31,542 people 6.8 per home 3,009 440
28 Harvard HarvardWorcester County · 6,927 people 6.8 per home 331 49
29 Palmer Town Palmer Town12,381 people 6.7 per home 308 46
30 Springfield Springfield154,749 people 6.5 per home 2,869 440
31 Waltham Waltham64,902 people 6.3 per home 4,586 726
32 Leominster Leominster43,909 people 6.2 per home 3,023 488
33 Woburn41,939 people 6.1 per home 2,756 454
34 Northborough NorthboroughWorcester County · 15,750 people 5.9 per home 1,586 269
35 Belmont BelmontMiddlesex County · 27,175 people 5.7 per home 2,566 453
36 Avon AvonNorfolk County · 4,774 people 5.5 per home 421 76
37 Ashland AshlandMiddlesex County · 18,873 people 5.5 per home 2,239 407
38 Athol AtholWorcester County · 12,011 people 5.5 per home 361 66
39 Marblehead MarbleheadEssex County · 20,413 people 5.5 per home 633 116
40 Plainville PlainvilleNorfolk County · 9,943 people 5.4 per home 1,681 309
41 Milford MilfordWorcester County · 30,431 people 5.4 per home 2,380 439
42 West Bridgewater West BridgewaterPlymouth County · 7,708 people 5.2 per home 791 151
43 Raynham RaynhamBristol County · 15,505 people 5.1 per home 1,759 346
44 TisburyDukes County · 4,893 people 5.0 per home 866 172
45 Wellfleet WellfleetBarnstable County · 4,404 people 5.0 per home 816 165
46 Everett Everett50,045 people 4.8 per home 7,408 1,540
47 Dracut DracutMiddlesex County · 32,574 people 4.7 per home 3,160 680
48 West Tisbury West TisburyDukes County · 3,080 people 4.6 per home 815 176
49 Hudson HudsonMiddlesex County · 20,077 people 4.5 per home 1,029 230
50 Sturbridge SturbridgeWorcester County · 9,960 people 4.5 per home 599 134
51 North Andover North AndoverEssex County · 31,490 people 4.3 per home 2,563 599
52 Taunton Taunton60,433 people 4.3 per home 3,534 829
53 Hanover HanoverPlymouth County · 14,845 people 4.2 per home 954 230
54 Gardner Gardner21,148 people 4.1 per home 1,059 256
55 Winchester WinchesterMiddlesex County · 23,406 people 4.1 per home 1,596 389
56 Attleboro Attleboro46,762 people 4.1 per home 2,868 705
57 Saugus SaugusEssex County · 28,773 people 4.1 per home 1,991 490
58 Newton Newton89,044 people 4.0 per home 3,777 939
59 Somerville Somerville81,036 people 4.0 per home 5,291 1,317
60 Abington AbingtonPlymouth County · 17,053 people 4.0 per home 1,077 268
61 Chelmsford ChelmsfordMiddlesex County · 36,446 people 4.0 per home 2,590 647
62 Norwell NorwellPlymouth County · 11,361 people 4.0 per home 845 211
63 Grafton GraftonWorcester County · 19,902 people 4.0 per home 1,899 481
64 Winthrop Town Winthrop Town18,759 people 3.9 per home 1,819 463
65 Stoneham StonehamMiddlesex County · 23,355 people 3.9 per home 1,807 462
66 Oak Bluffs Oak BluffsDukes County · 5,407 people 3.9 per home 814 209
67 Southborough SouthboroughWorcester County · 10,493 people 3.9 per home 683 177
68 Map of Chelsea Chelsea39,908 people 3.8 per home 5,610 1,468
69 Acton ActonMiddlesex County · 24,155 people 3.8 per home 2,097 550
70 Lexington LexingtonMiddlesex County · 34,295 people 3.8 per home 3,060 816
71 South HadleyHampshire County · 17,754 people 3.7 per home 636 170
72 Andover AndoverEssex County · 36,652 people 3.7 per home 3,368 908
73 Natick NatickMiddlesex County · 36,873 people 3.7 per home 4,000 1,082
74 Eastham EasthamBarnstable County · 5,811 people 3.7 per home 796 216
75 Bolton BoltonWorcester County · 5,737 people 3.7 per home 768 208
76 Tewksbury TewksburyMiddlesex County · 31,273 people 3.6 per home 2,381 660
77 Wayland WaylandMiddlesex County · 13,914 people 3.5 per home 949 268
78 Arlington ArlingtonMiddlesex County · 46,350 people 3.5 per home 3,464 992
79 Provincetown ProvincetownBarnstable County · 3,703 people 3.5 per home 722 207
80 Holden HoldenWorcester County · 20,064 people 3.4 per home 2,559 750
81 Needham NeedhamNorfolk County · 32,459 people 3.4 per home 3,205 950
82 Lynnfield LynnfieldEssex County · 13,064 people 3.3 per home 1,404 421
83 Yarmouth YarmouthBarnstable County · 25,224 people 3.3 per home 1,230 371
84 Wrentham WrenthamNorfolk County · 12,297 people 3.3 per home 1,223 372
85 Sherborn SherbornMiddlesex County · 4,427 people 3.3 per home 282 86
86 Marion MarionPlymouth County · 5,310 people 3.3 per home 440 135
87 Nantucket NantucketNantucket County · 14,483 people 3.2 per home 4,083 1,270
88 Carlisle CarlisleMiddlesex County · 5,239 people 3.2 per home 385 120
89 Stoughton StoughtonNorfolk County · 29,225 people 3.2 per home 2,319 726
90 Groton GrotonMiddlesex County · 11,390 people 3.2 per home 669 210
91 Map of Brewster BrewsterBarnstable County · 10,420 people 3.2 per home 498 157
92 East Longmeadow East LongmeadowHampden County · 16,425 people 3.2 per home 710 225
93 Dudley DudleyWorcester County · 11,929 people 3.2 per home 531 168
94 Manchester-by-the-Sea Manchester-by-the-SeaEssex County · 5,403 people 3.2 per home 259 82
95 Topsfield TopsfieldEssex County · 6,564 people 3.1 per home 484 154
96 Holliston HollistonMiddlesex County · 15,094 people 3.1 per home 1,449 471
97 Barnstable Town Barnstable Town49,568 people 3.1 per home 3,723 1,215
98 WestportBristol County · 16,484 people 3.1 per home 807 264
99 Ayer AyerMiddlesex County · 8,645 people 3.1 per home 1,052 345
100 Stow StowMiddlesex County · 7,165 people 3.0 per home 584 193
101 Hopkinton HopkintonMiddlesex County · 19,358 people 3.0 per home 3,833 1,285
102 Boylston BoylstonWorcester County · 4,948 people 2.9 per home 494 170
103 Auburn AuburnWorcester County · 16,970 people 2.9 per home 701 242
104 Map of Foxborough FoxboroughNorfolk County · 18,615 people 2.9 per home 1,753 611
105 Harwich HarwichBarnstable County · 13,598 people 2.9 per home 1,197 417
106 Dighton DightonBristol County · 8,193 people 2.9 per home 1,015 354
107 Rochester RochesterPlymouth County · 5,837 people 2.8 per home 485 173
108 Wakefield WakefieldMiddlesex County · 27,793 people 2.8 per home 2,158 778
109 Wareham WarehamPlymouth County · 23,302 people 2.8 per home 1,481 539
110 CantonNorfolk County · 24,748 people 2.7 per home 2,809 1,033
111 Swansea SwanseaBristol County · 17,359 people 2.7 per home 1,279 471
112 Rehoboth RehobothBristol County · 13,022 people 2.7 per home 894 330
113 Westford WestfordMiddlesex County · 24,690 people 2.7 per home 2,692 999
114 Easton EastonBristol County · 25,316 people 2.7 per home 1,946 727
115 Lincoln LincolnMiddlesex County · 6,948 people 2.7 per home 652 244
116 Rutland RutlandWorcester County · 9,353 people 2.7 per home 1,076 404
117 WestminsterWorcester County · 8,374 people 2.6 per home 936 357
118 East Bridgewater East BridgewaterPlymouth County · 14,456 people 2.6 per home 646 252
119 Mendon MendonWorcester County · 6,325 people 2.6 per home 389 152
120 Wilmington WilmingtonMiddlesex County · 23,336 people 2.6 per home 1,024 402
121 Sharon SharonNorfolk County · 18,574 people 2.6 per home 963 377
122 Westwood WestwoodNorfolk County · 16,318 people 2.5 per home 1,648 649
123 Northampton Northampton30,962 people 2.5 per home 1,022 404
124 Duxbury DuxburyPlymouth County · 16,185 people 2.5 per home 1,031 409
125 Bedford BedfordMiddlesex County · 14,727 people 2.5 per home 1,063 427
126 Walpole WalpoleNorfolk County · 26,388 people 2.5 per home 2,313 931
127 Scituate ScituatePlymouth County · 19,365 people 2.5 per home 930 375
128 Tyngsborough TyngsboroughMiddlesex County · 12,550 people 2.5 per home 1,088 443
129 Newburyport Newburyport18,652 people 2.5 per home 873 356
130 Weston WestonMiddlesex County · 11,579 people 2.4 per home 590 242
131 Framingham Framingham72,399 people 2.4 per home 4,044 1,671
132 MattapoisettPlymouth County · 6,634 people 2.4 per home 463 191
133 Millis MillisNorfolk County · 8,888 people 2.4 per home 569 238
134 Littleton LittletonMiddlesex County · 10,280 people 2.4 per home 1,217 511
135 Edgartown EdgartownDukes County · 5,278 people 2.3 per home 1,101 470
136 Ipswich IpswichEssex County · 13,930 people 2.3 per home 610 262
137 Pembroke PembrokePlymouth County · 18,382 people 2.3 per home 524 229
138 Lunenburg LunenburgWorcester County · 11,902 people 2.3 per home 1,696 750
139 Middleton MiddletonEssex County · 9,816 people 2.3 per home 792 351
140 WhitmanPlymouth County · 15,295 people 2.2 per home 632 284
141 Spencer SpencerWorcester County · 12,008 people 2.2 per home 304 138
142 Seekonk SeekonkBristol County · 15,694 people 2.2 per home 1,809 832
143 Medfield MedfieldNorfolk County · 13,068 people 2.2 per home 775 361
144 Orleans OrleansBarnstable County · 6,415 people 2.2 per home 417 194
145 Lakeville LakevillePlymouth County · 11,944 people 2.1 per home 921 430
146 Berkley BerkleyBristol County · 6,829 people 2.1 per home 353 165
147 West Springfield Town West Springfield Town28,772 people 2.1 per home 444 209
148 Wellesley WellesleyNorfolk County · 30,347 people 2.1 per home 1,568 745
149 Cohasset CohassetNorfolk County · 8,427 people 2.1 per home 839 400
150 Gloucester Gloucester30,075 people 2.1 per home 940 450
151 Bourne BourneBarnstable County · 20,323 people 2.1 per home 698 338
152 Dedham DedhamNorfolk County · 25,237 people 2.1 per home 635 309
153 Swampscott SwampscottEssex County · 15,277 people 2.1 per home 1,324 644
154 Boston Boston666,442 people 2.1 per home 58,053 28,297
155 KingstonPlymouth County · 14,027 people 2.1 per home 1,079 526
156 Upton UptonWorcester County · 8,189 people 2.1 per home 458 223
157 Billerica BillericaMiddlesex County · 42,003 people 2.0 per home 1,876 920
158 Rockland RocklandPlymouth County · 17,701 people 2.0 per home 314 155
159 Rowley RowleyEssex County · 6,251 people 2.0 per home 305 150
160 Marshfield MarshfieldPlymouth County · 25,879 people 2.0 per home 693 343
161 Sudbury SudburyMiddlesex County · 19,306 people 2.0 per home 1,275 630
162 Lancaster LancasterWorcester County · 8,606 people 2.0 per home 386 194
163 Weymouth Town Weymouth Town58,505 people 2.0 per home 3,694 1,866
164 Southampton SouthamptonHampshire County · 6,230 people 2.0 per home 432 218
165 Georgetown GeorgetownEssex County · 8,474 people 2.0 per home 287 146
166 Hingham HinghamPlymouth County · 24,283 people 2.0 per home 2,127 1,088
167 Northbridge NorthbridgeWorcester County · 16,458 people 1.9 per home 628 332
168 Uxbridge UxbridgeWorcester County · 14,473 people 1.9 per home 705 373
169 Belchertown BelchertownHampshire County · 15,393 people 1.9 per home 701 373
170 DoverNorfolk County · 5,930 people 1.9 per home 334 178
171 Medford Medford59,354 people 1.9 per home 3,486 1,860
172 Bellingham BellinghamNorfolk County · 17,410 people 1.9 per home 613 332
173 Mansfield MansfieldBristol County · 23,931 people 1.8 per home 676 368
174 Map of Douglas DouglasWorcester County · 9,207 people 1.8 per home 512 278
175 Map of Shrewsbury ShrewsburyWorcester County · 38,876 people 1.8 per home 2,717 1,504
176 Franklin Town Franklin Town33,154 people 1.7 per home 1,626 939
177 Hanson HansonPlymouth County · 10,660 people 1.7 per home 430 249
178 FreetownBristol County · 9,285 people 1.7 per home 336 195
179 Plymouth PlymouthPlymouth County · 63,953 people 1.7 per home 4,749 2,799
180 West Newbury West NewburyEssex County · 4,591 people 1.7 per home 265 158
181 Millbury MillburyWorcester County · 13,961 people 1.7 per home 570 344
182 Salisbury SalisburyEssex County · 9,281 people 1.7 per home 953 576
183 Merrimac MerrimacEssex County · 6,748 people 1.7 per home 385 233
184 Acushnet AcushnetBristol County · 10,624 people 1.6 per home 256 158
185 North ReadingMiddlesex County · 15,765 people 1.6 per home 662 412
186 WilbrahamHampden County · 14,572 people 1.6 per home 394 245
187 Medway MedwayNorfolk County · 13,436 people 1.6 per home 363 226
188 Burlington BurlingtonMiddlesex County · 26,274 people 1.6 per home 1,879 1,201
189 Sutton SuttonWorcester County · 9,452 people 1.6 per home 394 254
190 Mashpee MashpeeBarnstable County · 15,384 people 1.5 per home 1,054 707
191 Maynard MaynardMiddlesex County · 10,712 people 1.3 per home 640 495
192 Groveland GrovelandEssex County · 6,777 people 1.2 per home 293 236
193 Reading ReadingMiddlesex County · 25,612 people 1.2 per home 771 638
194 Chatham ChathamBarnstable County · 6,681 people 1.2 per home 469 407
195 DennisBarnstable County · 14,868 people 1.1 per home 467 410
196 Charlton CharltonWorcester County · 13,435 people 1.1 per home 334 302
197 Falmouth FalmouthBarnstable County · 33,039 people 1.0 per home 986 954
198 Chicopee Chicopee55,295 people 1.0 per home 262 256
199 Norfolk NorfolkNorfolk County · 11,673 people 1.0 per home 435 430
200 Middleborough MiddleboroughPlymouth County · 24,505 people 1.0 per home 1,129 1,133
201 Boxborough BoxboroughMiddlesex County · 5,496 people 1.0 per home 510 537
202 Agawam Town Agawam Town28,539 people 0.9 per home 254 276
203 Berlin BerlinWorcester County · 3,378 people 0.8 per home 292 369
204 ConcordMiddlesex County · 18,223 people 0.7 per home 823 1,210

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 Massachusetts it’s 3.4 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