State rental market analysis · MN

Minnesota rental markets

150 tracked cities over 5,000 population, 150 ranked and summarized by their median Overall; 1 of 150 evaluable cities pass the modeled Buy & Hold screen. Every number traces to Census, Zillow and BLS. Compare state coverage and results →

Browse every Minnesota ZIP Code area → · the full server-rendered index for this state.

Part of the West North Central Census division (Midwest region).

47.8 median Overall
Middle range 42.1 to 55.6 (25th to 75th percentile of its cities)Median Cash Flow 50.3 · Growth 45.6 · Stability 54Ranked #19 of 37 coverage-eligible states by median Overall scoredistribution across 150 ranked cities, not a distribution point estimate. As of 2026-07-10

The honest read

Minnesota ranks #19 of 37 coverage-eligible states for rental investing, with a median Overall of 47.8/100 across its ranked cities, above the national median. 150 ranked cities roll up into this grade. Its strongest factor is affordability (price-to-income): 3.9×, 16th of 51.

The biggest drag is income growth: 4.5%, 40th of 51. A state grade is the median of its ranked cities, a screen for where to look, not underwriting. Open any city below for its full shown-math breakdown, or run a specific deal through the cap rate and cash-flow calculators.

Where it ranks, factor by factor

Every value is the median across the 150 ranked cities in this state. The national rank compares all 51 states on that one factor; the engine already flips inverted factors (affordability, low unemployment) so a better rank always means a better market. Each factor sits in one of the model’s three categories (Cash Flow, Growth, or Stability); this is a representative summary, and the full thirteen-factor breakdown is on each city’s page. Full methodology.

FactorCategoryState valueNational rank
Gross rent yieldCash Flow5.5%#33 of 51
Rent growthGrowth4.2%#23 of 51
Home value growthGrowth3.3%#38 of 51
Population growthGrowth0.6%#23 of 51
Job growthGrowth0.4%#34 of 51
Price-to-incomeCash Flow3.9×#16 of 51
UnemploymentStability3.7%#20 of 51
Rental demandStability32% renters · 5.2% vacancytwo-part measure
Income growthGrowth4.5%#40 of 51

Every city in Minnesota, ranked

Led by Blaine at 71/100. Click any column to re-sort; every city links to its full shown-math breakdown.

MN rankCityGradeCash FlowGrowthStabilityTypical home valueGross yieldNational rank
1Blaine71BCA$381,4956.5%#110
2Rosemount70BBB$430,5165.8%#141
3Albertville70AAD$381,88411.1%#152
4Elk River69BBB$399,2446.2%#164
5 medOtsego69BBB$427,7885.3%#177
6Andover68ACB$442,0817.7%#207
7Victoria68BBB$618,9384.8%#224
8Ramsey67BCB$388,6916.1%#245
9Monticello67BBB$331,5456.0%#266
10 medElko New Market66BBC$476,5606.1%#318
11Woodbury65BBB$462,1265.7%#361
12Big Lake64CAC$376,6794.7%#383
13Cottage Grove64BBB$398,6195.7%#400
14Savage64BCA$427,9365.6%#416
15Maple Grove63BCB$424,0476.4%#445
16Lakeville63BCB$485,3245.3%#450
17 medSpring Lake Park63BCB$321,3625.8%#500
18 medOak Grove62BCB$469,1085.8%#505
19Chaska62CBB$481,3704.8%#542
20Shakopee62CBB$404,6155.3%#575
21 medLino Lakes61BCB$455,6845.5%#589
22Oakdale61BBC$357,9846.3%#622
23 medEast Bethel61BCB$419,3375.6%#624
24Waconia61CBB$463,7465.1%#628
25St. Michael61CBC$434,7284.9%#645
26Inver Grove Heights61BCB$374,7285.8%#659
27Farmington60BCB$399,6715.6%#670
28 medSt. Francis60CBB$350,3034.7%#688
29 medSt. Paul Park60ACC$318,5809.9%#707
30South St. Paul59BCB$299,8546.2%#781
31Prior Lake59CCB$530,2064.6%#831
32Coon Rapids59BCB$330,9735.8%#837
33 medHugo58BBC$437,4995.5%#874
34 medZimmerman58CBC$336,7975.2%#879
35 medCambridge58CBC$330,5396.2%#890
36Austin58BBC$190,6646.5%#909
37Rogers57BCC$464,3145.7%#975
38 medNorth Branch57CCB$355,7544.9%#1044
39Anoka56CCB$333,1725.1%#1178
40Columbia Heights56BCC$298,9626.5%#1180
41 medCarver55CBC$498,3563.7%#1215
42Isanti55CBC$334,8115.1%#1244
43Waite Park55CCB$251,1275.6%#1248
44Rochester55CCC$342,1875.8%#1259
45 medBelle Plaine55CBC$351,0275.1%#1298
46Hopkins55CCB$332,2685.7%#1322
47Sartell54CCB$336,1455.5%#1345
48 medDayton54CBC$514,4253.9%#1384
49 medJordan54CBC$439,8874.3%#1400
50Bemidji54BCC$219,7536.6%#1405
51Stillwater54CCB$454,7516.3%#1417
52Chanhassen54CCB$561,9604.8%#1431
53Robbinsdale53BDB$315,1936.7%#1459
54 medNew Prague53CCC$354,2194.8%#1489
55Buffalo52CBC$379,4355.1%#1580
56St. Anthony52CCC$399,6506.9%#1589
57 medMontevideo52BDC$212,3937.2%#1673
58 medByron52CBC$402,5303.9%#1717
59 medLake Elmo51CBC$638,5444.8%#1755
60Hastings51CCB$382,8425.1%#1812
61 medBecker51DBB$382,2333.9%#1852
62Burnsville51CCB$368,8754.8%#1880
63Apple Valley50BDC$376,0856.2%#1895
64Forest Lake50DCB$429,0074.3%#1910
65Eagan50CDB$401,4935.1%#1935
66Albert Lea50ADC$182,8057.5%#1948
67Mahtomedi50BCC$487,8266.2%#1962
68 medMorris50BDC$214,6005.4%#1987
69 medWorthington49CDB$248,9855.4%#2056
70Kasson48DBC$332,8423.9%#2222
71Plymouth48CDB$509,5314.5%#2224
72Red Wing48CDB$284,3145.7%#2230
73Sauk Rapids48DCB$303,9054.3%#2257
74West St. Paul48CCC$320,5015.4%#2278
75St. Louis Park48CDC$380,1295.9%#2291
76Thief River Falls48ADC$185,9817.9%#2296
77Vadnais Heights48BDC$371,9977.0%#2333
78Champlin47BDB$372,8016.0%#2349
79St. Cloud47CCD$257,7765.8%#2372
80Virginia47ADC$131,0959.6%#2391
81 medGlencoe47CDC$258,6895.8%#2400
82 medPrinceton47DBC$377,5365.4%#2415
83Minnetrista47DCC$684,7004.2%#2422
84Brooklyn Park47CCC$347,9415.5%#2433
85 medNew Ulm47CDB$254,5375.7%#2437
86Fergus Falls47CCC$205,4155.3%#2457
87Mankato46DBC$305,1154.7%#2550
88Shoreview46CDB$412,3595.6%#2572
89 medSt. Joseph45CDC$334,5485.7%#2718
90 medMedina45DBC$841,1042.3%#2717
91North Mankato45CDB$313,7364.8%#2726
92Northfield45DCC$392,5625.3%#2744
93 medDelano45DBC$436,9213.1%#2758
94Faribault45CCC$305,3935.3%#2763
95 medHibbing45ADC$164,7317.7%#2767
96Willmar44CCC$243,3784.6%#2798
97 medHam Lake44DCB$502,9153.2%#2805
98Moorhead44CCC$288,8064.8%#2814
99 medStewartville44DCC$337,2554.8%#2823
100Mendota Heights44DDB$572,1034.3%#2876
101Bloomington44CDC$362,3405.6%#2884
102North St. Paul44CCC$327,0695.2%#2905
103 medSt. Peter44DDA$300,0044.6%#2926
104Duluth43CDC$298,0685.8%#2941
105Minnetonka43DDC$485,3274.5%#2956
106 medWyoming43DCC$394,9823.8%#2976
107 medMarshall43DDB$242,2094.4%#2985
108 medCloquet43CDB$266,0925.8%#2988
109Mound43BDC$381,4717.9%#3004
110Fridley43CCD$322,4405.3%#3028
111 medChisago City42DBC$443,2583.8%#3125
112 medDetroit Lakes42DCB$375,2554.3%#3128
113 medNorth Oaks42CDD$958,8585.1%#3132
114 medWaseca42CDC$250,6905.7%#3154
115Eden Prairie42DDB$502,3264.3%#3211
116 medAlexandria41DCC$297,5834.1%#3291
117Crystal41CDC$317,5535.7%#3300
118 medBaxter41DCD$369,2944.3%#3349
119 medRedwood Falls40BDC$173,3096.2%#3422
120Richfield40DDC$346,8274.8%#3435
121White Bear Lake40CFB$358,1265.9%#3453
122Brainerd40FBB$315,1743.7%#3464
123 medInternational Falls40BFB$156,8486.4%#3484
124 medHermantown39DDC$432,8484.6%#3519
125Owatonna39DDC$298,8854.6%#3526
126 medLake City39DCC$322,0214.4%#3546
127 medArden Hills39CDC$479,1324.6%#3571
128Golden Valley38CDB$437,6355.4%#3619
129Hutchinson38DDD$299,8944.7%#3628
130Minneapolis38CDD$328,5296.1%#3637
131 medFairmont37CDC$170,9595.2%#3764
132Edina37DCB$626,2583.9%#3768
133Winona36DDB$262,0854.7%#3810
134New Hope36DDB$349,7904.7%#3822
135St. Paul36CDD$294,2976.1%#3830
136Brooklyn Center36CDD$297,8045.5%#3865
137 medGrand Rapids36CDD$282,9186.1%#3875
138 medLitchfield36CDC$257,8866.3%#3885
139New Brighton34DDB$382,0534.3%#4047
140Maplewood34CDD$344,5655.3%#4061
141 medMounds View33DDD$343,0114.6%#4097
142Roseville33DDC$376,6374.7%#4143
143 medLittle Falls32FCD$281,1004.4%#4200
144 medShorewood31FDB$828,6412.7%#4268
145Little Canada30DDD$363,0054.5%#4277
146 medLa Crescent30DDD$361,5693.9%#4281
147 medEast Grand Forks28DDD$297,4604.2%#4417
148 medCrookston27CFD$190,2665.5%#4488
149Falcon Heights26DDC$413,8393.8%#4494
150 medOrono23FDC$1,154,2752.2%#4626

Data as of: Zillow ZHVI/ZORI through the latest monthly release · Census ACS 5-yr 2020–2024 · Census PEP July 2025 · BLS LAUS county 2025 annual (11-month average). Generated 2026-10-06. Methodology & limitations · underwrite any specific deal with the free calculators.

ZIP markets in Minnesota

880 Census ZIP Codes (ZCTAs) in Minnesota · 582 data-eligible for subscores. These are sub-city government areas ranked separately from the Minnesota city table. The overall Rental Investor ZIP Score leaderboard leads; the two component subscores (affordability, rental-market context) follow as independent percentiles. ZIP ranks are shown within the ZIP universe only, never mixed with, and not directly comparable to, city ranks. Vintage: the Key metric column is Census ACS 2020–2024 (5-year), the same release the city table above uses; the geographies differ, so the same measure can still disagree between the two.

Best overall ZIP Codes in Minnesota

Ranked by the overall Rental Investor ZIP Score. The # is each ZIP Code's canonical MN state rank; the smaller figure is its national rank. Separate from the Minnesota city table and not directly comparable to it.

MN rankZIP CodeOverallgrade · nationalKey metric
#155125WoodburyA 72#236 nat5.4%Survey yield
#255318ChaskaA 72#319 nat4.4%Survey yield
#355362MonticelloA 71#408 nat4.8%Survey yield
#455309Big LakeA 69#610 nat4.7%Survey yield
#555434BlaineA 69#660 nat6.9%Survey yield
#655379ShakopeeA 69#678 nat5.0%Survey yield
#755330Elk RiverA 68#771 nat4.3%Survey yield
#855016Cottage GroveA 68#812 nat5.7%Survey yield
#955008CambridgeA 68#893 nat5.5%Survey yield
#955303RamseyA 68#893 nat4.9%Survey yield
#955449BlaineA 68#893 nat4.7%Survey yield
#1256401BrainerdA 67#1,187 nat4.0%Survey yield

Top affordability ZIP Codes in Minnesota

State-scoped leaders on the affordability subscore only (national rank shown is within that subscore’s data-eligible universe). Substantially an inverse housing-cost signal: a component of the overall score, not a predicted return.

#ZIP CodeAffordabilityKey metric
155753Keewatin79#1,457 nat12.9%Survey yield
256262Milan76#1,803 nat11.9%Survey yield
356235Donnelly76#1,966 nat9.5%Survey yield
455713Buhl75#1,976 nat9.7%Survey yield
556676Shevlin73#2,382 nat6.4%Survey yield
655614Silver Bay72#2,525 nat7.5%Survey yield
755030Grasston72#2,582 nat10.7%Survey yield
856144Jasper71#2,688 nat9.3%Survey yield
956170Ruthton71#2,688 nat9.5%Survey yield
1055708Biwabik71#2,732 nat9.0%Survey yield
1156115Balaton71#2,780 nat6.7%Survey yield
1256292Seaforth71#2,793 nat10.4%Survey yield

Deepest rental-market ZIP Codes in Minnesota

State-scoped leaders on the rental-market-context subscore only (national rank shown is within that subscore’s data-eligible universe). Rental depth/tightness: a separate component, never combined here with affordability.

#ZIP CodeRental marketKey metric
155802Duluth84#32 nat1.6%Survey yield
255812Duluth79#299 nat4.3%Survey yield
356267Morris78#407 nat4.9%Survey yield
456304St. Cloud78#445 nat4.6%Survey yield
555408Minneapolis78#518 nat4.1%Survey yield
655120Mendota Heights76#779 nat3.8%Survey yield
755077Inver Grove Heights76#803 nat3.3%Survey yield
856387Waite Park76#803 nat5.8%Survey yield
955806Duluth75#916 nat6.8%Survey yield
1056425Baxter75#976 nat4.2%Survey yield
1155121Eagan74#1,042 nat6.9%Survey yield
1255343Minnetonka74#1,125 nat4.9%Survey yield
Open the full Minnesota ZIP explorer (all 880 areas, sortable) →