MEMaine rankings

Most affordable towns in Maine

Ranked by how many years of a typical ME household income ($74,733) it takes to buy each town's median home. Lower is easier to buy in. 144 towns with 2,500+ residents.

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

#TownYears of incomeHome valueMedian income
1 MillinocketPenobscot County · 4,115 people 1.4 yrs $103,800 $51,007
2 MexicoOxford County · 2,782 people 1.5 yrs $110,800 $55,727
3 Calais3,097 people 1.5 yrs $111,100 $64,096
4 RumfordOxford County · 5,942 people 1.7 yrs $127,700 $38,403
5 Map of Caribou Caribou7,382 people 1.8 yrs $134,100 $53,709
6 CorinthPenobscot County · 2,990 people 1.8 yrs $135,800 $64,229
7 HoultonAroostook County · 6,056 people 1.8 yrs $137,000 $61,058
8 LincolnPenobscot County · 4,890 people 1.9 yrs $141,500 $56,089
9 Map of Presque Isle Presque Isle8,736 people 2.0 yrs $147,200 $55,768
10 Livermore Falls Livermore FallsAndroscoggin County · 3,102 people 2.0 yrs $147,500 $45,843
11 Norridgewock NorridgewockSomerset County · 3,288 people 2.0 yrs $151,900 $61,579
12 MadawaskaAroostook County · 3,853 people 2.1 yrs $156,300 $56,818
13 Fort KentAroostook County · 4,150 people 2.2 yrs $160,700 $56,270
14 Fort Fairfield Fort FairfieldAroostook County · 3,309 people 2.2 yrs $161,000 $70,852
15 Map of Dover-Foxcroft Dover-FoxcroftPiscataquis County · 4,506 people 2.2 yrs $162,600 $63,344
16 PittsfieldSomerset County · 3,930 people 2.2 yrs $164,100 $57,381
17 FairfieldSomerset County · 6,519 people 2.2 yrs $164,300 $64,101
18 SkowheganSomerset County · 8,653 people 2.2 yrs $164,400 $49,485
19 Farmington FarmingtonFranklin County · 8,157 people 2.2 yrs $166,600 $54,276
20 Jay JayFranklin County · 4,657 people 2.3 yrs $168,600 $70,238
21 Dexter DexterPenobscot County · 3,822 people 2.3 yrs $170,600 $51,845
22 MilfordPenobscot County · 3,095 people 2.4 yrs $176,400 $85,111
23 BentonKennebec County · 2,770 people 2.4 yrs $176,700 $61,437
24 SabattusAndroscoggin County · 5,116 people 2.4 yrs $180,000 $59,387
25 ChelseaKennebec County · 2,823 people 2.4 yrs $182,300 $85,471
26 Waterville17,077 people 2.5 yrs $184,600 $53,580
27 Clinton ClintonKennebec County · 3,385 people 2.5 yrs $187,000 $71,458
28 MadisonSomerset County · 4,782 people 2.5 yrs $187,600 $61,747
29 Oxford OxfordOxford County · 4,333 people 2.6 yrs $194,200 $58,571
30 Augusta Augusta19,077 people 2.7 yrs $201,000 $47,979
31 WiltonFranklin County · 3,862 people 2.7 yrs $202,000 $63,396
32 Old Town Old Town7,470 people 2.8 yrs $208,100 $51,585
33 NorwayOxford County · 5,228 people 2.9 yrs $215,800 $54,342
34 Map of Bangor Bangor31,938 people 2.9 yrs $219,600 $59,942
35 Gardiner6,088 people 3.0 yrs $221,600 $71,782
36 Map of Searsport SearsportWaldo County · 2,655 people 3.0 yrs $224,400 $64,303
37 WinslowKennebec County · 8,023 people 3.0 yrs $225,300 $70,917
38 Windsor WindsorKennebec County · 2,690 people 3.1 yrs $228,800 $63,178
39 Warren WarrenKnox County · 4,932 people 3.1 yrs $232,700 $74,616
40 Newport NewportPenobscot County · 3,143 people 3.1 yrs $234,800 $60,365
41 Map of Lewiston Lewiston38,324 people 3.1 yrs $235,100 $55,393
42 Map of Oakland OaklandKennebec County · 6,309 people 3.2 yrs $236,000 $77,813
43 PittstonKennebec County · 3,093 people 3.2 yrs $238,700 $86,614
44 ChinaKennebec County · 4,526 people 3.2 yrs $240,000 $96,309
45 Paris ParisOxford County · 5,317 people 3.2 yrs $240,400 $75,137
46 Ellsworth Ellsworth8,657 people 3.2 yrs $242,300 $77,375
47 RichmondSagadahoc County · 3,566 people 3.2 yrs $242,700 $65,854
48 Map of Litchfield LitchfieldKennebec County · 3,680 people 3.3 yrs $243,900 $84,904
49 Map of Vassalboro VassalboroKennebec County · 4,592 people 3.3 yrs $244,300 $72,300
50 Map of Brewer Brewer9,652 people 3.3 yrs $245,300 $66,613
51 Map of Rockland Rockland7,035 people 3.3 yrs $245,800 $56,533
52 Harrison HarrisonCumberland County · 2,513 people 3.3 yrs $249,300 $56,938
53 FarmingdaleKennebec County · 3,017 people 3.3 yrs $249,700 $71,635
54 BucksportHancock County · 5,016 people 3.4 yrs $252,300 $64,720
55 WoolwichSagadahoc County · 3,158 people 3.4 yrs $254,500 $102,175
56 CarmelPenobscot County · 2,941 people 3.4 yrs $256,800 $82,188
57 Map of Lisbon LisbonAndroscoggin County · 9,750 people 3.5 yrs $258,300 $77,819
58 Map of Union UnionKnox County · 2,663 people 3.6 yrs $267,600 $80,724
59 LevantPenobscot County · 3,069 people 3.6 yrs $268,500 $86,071
60 FryeburgOxford County · 3,489 people 3.6 yrs $268,600 $56,076
61 Limerick LimerickYork County · 3,400 people 3.6 yrs $269,400 $101,172
62 Map of Greene GreeneAndroscoggin County · 4,417 people 3.6 yrs $270,000 $98,093
63 Mechanic FallsAndroscoggin County · 3,134 people 3.6 yrs $270,900 $69,914
64 ThomastonKnox County · 2,769 people 3.6 yrs $271,700 $56,435
65 Map of Orono OronoPenobscot County · 11,902 people 3.6 yrs $272,600 $61,528
66 MonmouthKennebec County · 4,162 people 3.7 yrs $274,100 $74,648
67 WaldoboroLincoln County · 5,253 people 3.7 yrs $274,900 $69,107
68 HancockHancock County · 2,518 people 3.7 yrs $276,800 $72,285
69 GlenburnPenobscot County · 4,737 people 3.7 yrs $276,900 $97,474
70 Sanford Sanford22,247 people 3.7 yrs $280,200 $72,524
71 Auburn Auburn24,602 people 3.8 yrs $282,000 $66,647
72 WinterportWaldo County · 3,850 people 3.8 yrs $283,000 $98,333
73 PolandAndroscoggin County · 5,954 people 3.8 yrs $283,600 $85,557
74 TurnerAndroscoggin County · 5,891 people 3.8 yrs $284,900 $100,036
75 HoldenPenobscot County · 3,352 people 3.9 yrs $289,400 $92,200
76 BowdoinSagadahoc County · 3,188 people 3.9 yrs $292,800 $91,239
77 Map of Winthrop WinthropKennebec County · 6,191 people 3.9 yrs $294,800 $86,470
78 Minot MinotAndroscoggin County · 2,794 people 3.9 yrs $294,900 $95,655
79 Hallowell2,592 people 4.0 yrs $295,300 $68,398
80 LimingtonYork County · 4,017 people 4.0 yrs $295,600 $84,675
81 WaterboroYork County · 8,055 people 4.0 yrs $297,000 $89,392
82 HampdenPenobscot County · 7,896 people 4.0 yrs $301,300 $111,959
83 West Gardiner West GardinerKennebec County · 3,696 people 4.1 yrs $305,100 $96,172
84 OrringtonPenobscot County · 3,853 people 4.1 yrs $309,000 $94,556
85 Bath Bath8,815 people 4.2 yrs $310,900 $69,390
86 Map of Jefferson JeffersonLincoln County · 2,647 people 4.2 yrs $311,600 $85,078
87 BelgradeKennebec County · 3,351 people 4.2 yrs $312,200 $88,338
88 BridgtonCumberland County · 5,642 people 4.2 yrs $316,600 $77,500
89 Map of Durham DurhamAndroscoggin County · 4,262 people 4.3 yrs $322,200 $99,181
90 Lebanon LebanonYork County · 6,629 people 4.3 yrs $324,800 $97,750
91 WiscassetLincoln County · 3,874 people 4.4 yrs $325,200 $71,118
92 Readfield ReadfieldKennebec County · 2,651 people 4.4 yrs $326,400 $86,504
93 HermonPenobscot County · 6,727 people 4.5 yrs $333,600 $96,629
94 Acton ActonYork County · 2,721 people 4.5 yrs $334,300 $78,750
95 Map of Standish StandishCumberland County · 10,662 people 4.5 yrs $336,000 $104,593
96 Map of Sidney SidneyKennebec County · 4,790 people 4.5 yrs $336,200 $83,488
97 HollisYork County · 4,872 people 4.5 yrs $338,900 $95,950
98 Map of Naples NaplesCumberland County · 3,985 people 4.6 yrs $340,100 $78,188
99 Belfast6,986 people 4.6 yrs $340,900 $67,679
100 Map of Boothbay BoothbayLincoln County · 3,102 people 4.6 yrs $342,100 $60,320
101 Alfred AlfredYork County · 3,125 people 4.6 yrs $342,300 $82,321
102 BethelOxford County · 2,617 people 4.6 yrs $344,900 $58,929
103 Casco CascoCumberland County · 3,696 people 4.8 yrs $355,500 $69,313
104 ShapleighYork County · 2,976 people 4.8 yrs $356,000 $88,140
105 Map of St. George St. GeorgeKnox County · 2,606 people 4.8 yrs $356,300 $89,155
106 Buxton BuxtonYork County · 8,512 people 4.8 yrs $356,800 $100,144
107 Map of New Gloucester New GloucesterCumberland County · 5,766 people 4.8 yrs $357,100 $108,797
108 Lyman LymanYork County · 4,612 people 4.8 yrs $360,400 $87,284
109 TopshamSagadahoc County · 9,706 people 4.8 yrs $360,800 $91,028
110 Gray GrayCumberland County · 8,429 people 4.9 yrs $363,700 $95,236
111 Map of Old Orchard Beach Old Orchard BeachYork County · 9,244 people 4.9 yrs $366,600 $60,050
112 Berwick BerwickYork County · 8,175 people 4.9 yrs $369,100 $94,771
113 Brunswick BrunswickCumberland County · 22,336 people 5.0 yrs $376,300 $74,952
114 Westbrook Westbrook20,775 people 5.1 yrs $383,300 $85,038
115 Windham WindhamCumberland County · 19,188 people 5.2 yrs $388,900 $107,934
116 Raymond RaymondCumberland County · 4,610 people 5.3 yrs $395,800 $88,194
117 Biddeford Biddeford22,498 people 5.3 yrs $396,600 $72,333
118 Blue Hill Blue HillHancock County · 2,813 people 5.3 yrs $399,500 $80,377
119 BowdoinhamSagadahoc County · 3,142 people 5.4 yrs $405,500 $108,479
120 BristolLincoln County · 2,917 people 5.4 yrs $406,400 $100,750
121 Saco Saco20,819 people 5.5 yrs $413,100 $92,241
122 Arundel ArundelYork County · 4,418 people 5.6 yrs $421,300 $101,597
123 South Berwick South BerwickYork County · 7,670 people 5.7 yrs $428,300 $99,572
124 North Berwick North BerwickYork County · 5,129 people 5.7 yrs $428,500 $101,875
125 South Portland South Portland26,930 people 5.9 yrs $441,200 $86,838
126 Gorham GorhamCumberland County · 18,300 people 6.2 yrs $460,900 $112,312
127 Kittery KitteryYork County · 10,473 people 6.3 yrs $468,500 $93,728
128 Rockport RockportKnox County · 3,675 people 6.3 yrs $469,000 $86,979
129 Wells WellsYork County · 11,713 people 6.5 yrs $485,300 $88,024
130 Kennebunk KennebunkYork County · 11,820 people 6.5 yrs $487,700 $107,804
131 Portland Portland68,854 people 6.6 yrs $489,600 $79,540
132 North Yarmouth North YarmouthCumberland County · 4,240 people 6.6 yrs $496,500 $129,267
133 Eliot EliotYork County · 7,146 people 6.7 yrs $498,900 $101,522
134 Map of Freeport FreeportCumberland County · 8,802 people 6.8 yrs $508,400 $107,326
135 CamdenKnox County · 5,242 people 7.0 yrs $520,600 $82,344
136 Bar Harbor Bar HarborHancock County · 5,244 people 7.2 yrs $538,400 $77,180
137 Map of Scarborough ScarboroughCumberland County · 23,215 people 7.4 yrs $551,900 $133,558
138 HarpswellCumberland County · 5,046 people 8.2 yrs $609,700 $96,250
139 Map of Cumberland CumberlandCumberland County · 8,647 people 8.3 yrs $616,800 $173,894
140 YorkYork County · 13,986 people 8.5 yrs $636,400 $121,250
141 Yarmouth YarmouthCumberland County · 9,053 people 8.6 yrs $639,700 $110,216
142 Cape Elizabeth Cape ElizabethCumberland County · 9,606 people 9.8 yrs $731,600 $145,821
143 Kennebunkport KennebunkportYork County · 3,684 people 9.9 yrs $740,500 $102,747
144 Falmouth FalmouthCumberland County · 12,755 people 10.3 yrs $767,500 $150,919

How this ranking works

We divide each town’s median home value by the ME median household income ($74,733). The result is how many years of a typical paycheck it takes to buy a typical home there. Lower is more affordable. Across Maine as a whole it’s 4.0 years.

Why not each town’s own income? That would rank wealthy towns with half-million-dollar homes as “affordable” only because their residents earn so much. One shared income answers the question people actually ask: where could a typical family afford to live?

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. Town photos: Wikimedia Commons, credited on each town’s page.

Same ranking in other states