CashFlowRE
Sign in Sign up

Best Places to Invest in Minnesota Real Estate

321 Minnesota markets ranked from our sold history and per-listing investment modeling. Tap a city for its cap rate, cash flow and price detail — then sign up to see the actual cash-flowing listings.

CityMedian priceCap rateCash flow/mo Appreciation YoYSold (12mo)
Minneapolis $362,000 3.2% $-847 +1.3% 4,261
Rochester $348,000 3.8% $-756 +1.1% 1,723
Lakeville $509,990 3.4% $-1,267 +0.0% 1,103
Duluth $292,500 4.2% $-514 +2.1% 1,087
Maple Grove $432,000 3.7% $-938 +0.5% 1,075
Plymouth $507,500 3.2% $-1,213 +0.5% 1,059
Woodbury $475,000 3.5% $-1,125 -0.5% 1,001
Bloomington $375,000 3.6% $-799 +3.1% 905
Blaine $380,000 3.8% $-767 -0.5% 858
St. Cloud $260,000 4.3% $-411 -0.7% 801
Brooklyn Park $350,000 3.1% $-924 -1.1% 787
Eden Prairie $499,900 3.0% $-1,269 +1.4% 764
Edina $700,000 1.7% $-2,399 +2.2% 761
Minnetonka $500,000 2.6% $-1,398 +1.3% 755
Coon Rapids $335,000 3.9% $-663 +1.6% 716
St. Louis Park $400,000 3.1% $-925 +1.7% 687
Cottage Grove $409,990 3.4% $-1,006 +2.0% 669
Shakopee $430,500 3.5% $-1,071 +1.0% 660
Apple Valley $377,000 4.0% $-640 -0.5% 635
Eagan $410,000 3.5% $-900 +2.6% 594
Moorhead $270,000 4.0% $-541 +2.1% 549
Rosemount $438,000 3.6% $-1,033 -2.5% 533
St. Michael $439,990 3.2% $-1,182 +0.5% 463
Ramsey $384,000 3.4% $-909 -1.1% 461
Otsego $464,900 3.9% $-906 +2.2% 445
Farmington $390,000 4.1% $-703 +2.6% 420
Mankato $293,000 4.1% $-577 +3.8% 401
Richfield $355,000 3.7% $-736 -0.5% 400
Inver Grove Heights $400,000 3.6% $-732 +1.0% 397
Roseville $380,000 3.1% $-864 -1.3% 391
Chaska $469,950 2.9% $-1,577 +0.0% 386
Prior Lake $472,500 2.8% $-1,568 +1.3% 386
Andover $445,000 3.5% $-1,099 +0.0% 385
Elk River $385,000 3.1% $-1,185 +1.1% 380
Rogers $440,000 3.7% $-991 +0.0% 379
Owatonna $280,000 3.5% $-701 -0.6% 375
Shoreview $410,000 3.5% $-869 +1.0% 375
Chanhassen $570,000 3.1% $-1,661 +2.8% 372
Austin $200,000 4.5% $-312 +3.9% 352
White Bear Lake $362,900 3.5% $-819 +4.9% 323
Hugo $430,000 3.6% $-889 +0.3% 316
Golden Valley $462,500 2.8% $-1,139 +1.9% 312
Hastings $344,450 3.2% $-836 +1.1% 304
Forest Lake $413,750 3.4% $-1,004 +0.3% 304
Champlin $385,000 4.1% $-647 +1.0% 294
Alexandria $326,250 2.9% $-1,001 +1.7% 294
Lino Lakes $460,000 3.0% $-1,305 +2.0% 289
Buffalo $352,700 3.1% $-965 +1.1% 286
Crystal $325,000 4.2% $-545 -0.5% 284
Winona $235,500 4.4% $-394 +5.9% 280
Cambridge $325,000 3.5% $-796 -2.2% 271
Stillwater $437,500 3.7% $-890 +3.2% 270
Brooklyn Center $305,000 5.2% $-282 -1.7% 269
Columbia Heights $308,000 3.7% $-648 +1.9% 267
Victoria $615,000 2.6% $-1,969 +2.1% 263
Fridley $334,500 3.3% $-790 -1.1% 262
Albert Lea $179,950 4.8% $-221 -1.3% 260
Big Lake $351,500 4.0% $-602 +1.6% 260
Waconia $475,000 3.1% $-1,283 +3.0% 259
North Branch $355,000 2.6% $-1,110 -13.8% 253
Red Wing $269,500 4.1% $-474 -1.9% 251
New Hope $361,800 3.7% $-739 -1.3% 249
Dayton $586,230 2.6% $-1,846 +1.2% 248
New Brighton $400,000 3.1% $-993 +2.1% 243
Faribault $265,750 4.2% $-502 +1.0% 242
South St. Paul $301,500 4.2% $-515 +3.8% 240
Monticello $327,000 3.6% $-818 +2.5% 238
Sartell $327,000 3.2% $-920 +3.2% 232
West St. Paul $344,500 3.6% $-752 +1.6% 230
Willmar $239,250 3.5% $-526 +3.1% 216
Robbinsdale $335,000 4.2% $-587 +0.0% 214
Burnsville $397,950 3.8% $-820 -1.1% 214
Ham Lake $535,000 2.3% $-2,057 +3.0% 212
Corcoran $588,260 2.3% $-1,944 +1.3% 208
Savage $427,450 3.0% $-1,379 -1.3% 208
Lake Elmo $665,000 2.8% $-2,093 +3.1% 206
Northfield $353,000 3.3% $-890 +0.6% 204
Hutchinson $270,000 3.3% $-651 +3.0% 202
Bemidji $238,950 4.5% $-376 -2.9% 200
Fergus Falls $235,000 3.5% $-561 +2.7% 191
Brainerd $240,000 4.0% $-461 -3.7% 191
Anoka $340,000 3.4% $-818 +5.4% 189
Minnetrista $700,000 1.5% $-3,223 +8.7% 188
Hibbing $159,000 6.0% $-39 +14.1% 185
North Mankato $301,000 3.4% $-840 +0.6% 181
Vadnais Heights $372,000 3.8% $-703 -0.5% 181
Sauk Rapids $300,000 2.3% $-1,009 +4.1% 175
Isanti $340,000 2.8% $-1,010 -4.8% 167
Delano $426,720 3.2% $-1,117 -2.1% 166
East Bethel $419,900 3.0% $-1,217 -3.4% 160
White Bear $450,000 3.1% $-1,147 +1.3% 159
New Ulm $244,950 4.4% $-369 +6.6% 156
Little Falls $240,000 4.2% $-414 +3.5% 152
Hopkins $372,450 3.0% $-896 +7.3% 150
Mound $415,000 2.8% $-856 +7.7% 149
Medina $999,000 1.0% $-4,672 +1.2% 147
Cloquet $260,000 4.8% $-285 +3.2% 145
Baxter $355,000 2.7% $-1,076 +4.7% 145
Detroit Lakes $312,500 2.4% $-1,341 +4.6% 142
Orono $1,158,375 0.3% $-7,426 +0.5% 142
Marshall $230,000 4.3% $-411 +5.2% 140
Breezy Point $305,000 1.7% $-1,810 +2.7% 135
Fairmont $175,000 3.6% $-419 -8.0% 135
St. Francis $345,000 3.0% $-973 +0.8% 134
Shorewood $855,000 1.1% $-4,978 +4.2% 132
Mendota Heights $550,933 1.7% $-2,375 +5.6% 131
Byron $360,000 2.8% $-1,213 +2.5% 131
Becker $381,250 3.0% $-1,101 -2.4% 128
Hermantown $483,750 2.3% $-1,869 +3.2% 120
Kasson $343,000 2.9% $-1,075 +2.9% 120
Oak Grove $472,500 2.5% $-1,656 -2.6% 120
Little Canada $352,500 3.4% $-754 +4.2% 119
Mahtomedi $482,000 3.8% $-1,075 -0.9% 119
Zimmerman $347,000 3.6% $-819 +3.4% 119
First Assessment $319,900 1.5% $-1,930 +14.5% 117
Jordan $440,000 3.1% $-1,201 +0.0% 117
Wyoming $433,188 2.3% $-1,502 +0.0% 116
Virginia $132,750 7.6% $131 -5.8% 112
Belle Plaine $345,000 2.7% $-1,045 -1.2% 112
Crosslake $477,000 2.3% $-2,046 -11.3% 112
Elko New Market $461,555 2.6% $-1,480 +8.9% 111
Mounds View $352,000 3.3% $-859 +3.9% 111
Carver $520,000 3.9% $-1,057 +0.7% 110
St. Anthony $370,000 3.0% $-1,016 +3.6% 109
Waseca $233,000 3.8% $-432 +8.8% 107
New Prague $370,000 3.2% $-955 -4.5% 103
Grand Rapids $256,500 4.1% $-451 +2.0% 103
East Grand Forks $287,900 3.3% $-754 +2.7% 103
St. Joseph $301,250 3.2% $-768 -1.2% 100
Baldwin $410,000 2.7% $-1,283 -2.7% 99
Lake City $301,200 0.2% $-1,884 +7.8% 98
Albertville $351,000 4.8% $-388 -6.1% 98
North Oaks $929,654 0.3% $-5,376 -2.8% 93
Montgomery $294,000 3.7% $-689 -5.2% 91
Lindstrom $377,500 3.1% $-944 +1.6% 90
Wayzata $1,143,500 0.1% $-9,972 -14.7% 88
Hanover $464,950 2.9% $-1,291 +0.7% 88
Rockford $406,000 3.0% $-1,105 +7.0% 86
St. Peter $299,900 3.5% $-774 +17.0% 85
Thief River Falls $155,000 5.3% $-139 -2.3% 85
Worthington $295,000 2.4% $-919 +3.4% 83
Arden Hills $462,000 3.2% $-1,044 -1.5% 82
Princeton $290,000 3.3% $-725 -0.8% 81
Lonsdale $377,000 4.4% $-605 -6.4% 81
Litchfield $223,100 3.6% $-555 +4.8% 81
Waite Park $264,750 3.2% $-641 +2.9% 80
Deer Lake $405,000 1.9% $-1,585 -4.5% 80
Pine Island $335,000 2.5% $-1,108 +0.6% 79
Silver Creek $299,500 2.0% $-1,788 -15.0% 78
Watertown $390,250 3.6% $-853 +6.9% 78
Montrose $304,500 3.9% $-609 -0.9% 76
Spring Lake Park $335,000 3.1% $-820 +1.3% 74
Greenfield $489,900 1.0% $-2,201 +11.0% 73
Greenwood $387,500 -0.0% $-4,607 -3.7% 73
Paynesville $256,750 2.3% $-959 -5.2% 72
Milaca $233,500 2.6% $-780 -7.9% 72
Circle Pines $305,000 3.7% $-671 -11.4% 71
Pine City $260,000 1.9% $-1,052 -12.1% 71
St. Augusta $340,000 2.4% $-1,186 -4.8% 71
New London $299,000 1.7% $-1,431 +3.6% 69
Crookston $184,000 5.1% $-189 +1.9% 68
Stewartville $307,500 3.5% $-591 -1.7% 68
Aitkin $332,500 3.9% $-501 +8.6% 68
La Crescent $338,950 2.0% $-1,225 -3.4% 68
Clear Lake $348,900 2.3% $-1,220 -14.6% 67
Chisago City $415,000 2.1% $-1,521 +1.5% 67
Chisholm $126,000 8.9% $281 +15.5% 66
Staples $200,200 4.3% $-314 -4.5% 66
Livonia $470,000 2.4% $-1,826 +3.4% 65
International Falls $109,000 7.2% $94 +1.6% 63
Zumbrota $338,500 2.0% $-1,209 +6.1% 63
Wadena $193,000 4.2% $-358 -1.3% 63
Annandale $343,950 3.4% $-913 +1.4% 62
Chisago Lake $549,900 2.0% $-1,970 +9.0% 62
St. Paul Park $314,900 3.8% $-648 +7.3% 61
Maplewood $317,500 3.0% $-910 +2.5% 61
Waverly $335,000 3.8% $-728 -5.6% 61
Two Harbors $260,000 3.4% $-680 -16.7% 61
Windom $174,500 3.4% $-436 +4.2% 60
Osakis $193,250 2.2% $-889 -7.7% 60
Cold Spring $316,250 3.5% $-757 +5.1% 60
Garrison $150,000 2.5% $-1,085 -6.1% 59
Sauk Centre $255,000 3.6% $-587 +1.8% 59
Cannon Falls $327,500 2.8% $-1,144 +1.4% 58
La Grand $410,250 2.3% $-1,322 +4.5% 58
Montevideo $171,500 3.7% $-407 -4.1% 58
Pequot Lakes $330,000 1.0% $-1,840 +14.4% 57
Northern $343,000 2.8% $-1,167 -1.8% 56
Ida $285,625 1.5% $-2,124 +2.6% 56
Wells $210,750 3.3% $-576 -3.0% 54
Maple Lake $317,500 2.7% $-1,065 +2.5% 54
Lake Shore $565,000 0.1% $-3,414 -12.9% 54
Credit River $850,000 1.0% $-4,998 +1.8% 54
Biwabik $169,000 1.6% $-987 +5.3% 53
St. James $161,300 3.4% $-448 +9.3% 52
Spring Lake $740,135 1.0% $-4,200 +2.1% 52
Carlos $400,000 2.9% $-1,132 -1.1% 52
Breckenridge $202,450 3.0% $-554 +4.9% 52
Isle $246,500 1.9% $-936 -18.4% 52
Dassel $297,500 2.8% $-946 -4.7% 52
Redwood Falls $185,000 5.9% $-83 +4.8% 52
Park Rapids $207,450 3.9% $-451 +10.0% 52
Harris $310,000 2.0% $-1,538 +1.9% 52
Glencoe $272,500 3.4% $-749 -4.0% 51
Morris $193,000 6.7% $70 -0.4% 51
Bradford $380,000 2.6% $-1,317 -14.9% 51
Ely $215,000 3.8% $-388 +6.1% 51
Avon $306,000 1.7% $-1,226 +4.7% 51
Glenwood $250,000 4.1% $-601 -6.3% 51
Long Prairie $210,000 3.9% $-442 +9.5% 51
Norwood Young America $299,200 3.4% $-695 -12.0% 50
Deephaven $1,234,750 0.4% $-8,352 +11.5% 50
Nisswa $521,000 0.7% $-2,581 -11.3% 50
Orrock $478,219 2.8% $-1,472 +8.9% 50
Nevis $275,000 1.4% $-1,683 -14.0% 49
Columbus $477,004 2.2% $-1,610 +6.5% 49
Falcon Heights $400,000 3.0% $-1,134 -2.8% 49
Luverne $220,000 3.0% $-718 -6.1% 49
Centerville $412,500 3.9% $-811 +0.7% 48
Oronoco $510,000 1.1% $-2,654 +19.4% 48
Pine River $179,000 3.4% $-425 -6.2% 48
Dilworth $289,950 3.9% $-665 +0.7% 48
Turtle Lake $356,500 2.3% $-1,433 +7.0% 48
Chatfield $265,000 1.6% $-1,475 +0.6% 47
Empire $495,000 3.6% $-1,196 -2.2% 47
Blue Earth $160,000 5.2% $-115 -3.9% 47
Perham $275,000 5.1% $-265 -8.6% 47
Clearwater $319,950 4.1% $-602 +11.2% 46
Sylvan $268,950 2.4% $-1,367 +6.3% 46
Wabasha $275,250 2.8% $-818 +4.2% 45
Crosby $214,900 2.6% $-682 +2.6% 45
St. Charles $334,000 2.0% $-1,455 -1.8% 45
Scandia $650,000 1.4% $-2,963 +25.8% 45
Oak Park Heights $422,450 4.0% $-825 -5.9% 44
Mora $242,500 4.8% $-323 -3.8% 44
Independence $792,500 0.3% $-5,375 -7.2% 44
Braham $213,875 3.7% $-582 -4.5% 44
West Lakeland $823,000 1.3% $-3,903 +2.4% 44
Rice $300,000 3.5% $-737 +40.1% 43
Eagle Lake $330,825 2.3% $-1,292 -2.4% 42
Linwood $442,000 1.9% $-1,730 +5.1% 42
Silver Bay $154,000 4.5% $-312 +5.2% 42
Barnesville $230,000 7.3% $182 +3.2% 42
Pipestone $147,500 3.2% $-529 -4.1% 41
Woodrow $399,900 0.7% $-2,056 -9.9% 41
Eveleth $133,000 7.0% $82 -9.1% 41
Rice Lake $310,000 3.8% $-886 +0.2% 41
Dodge Center $277,500 4.1% $-463 +19.0% 41
Marion $454,000 2.7% $-1,442 +3.4% 41
Pokegama $330,000 1.4% $-1,388 -11.5% 40
Corinna $504,250 1.4% $-2,271 -19.5% 40
Grant Valley $304,950 3.7% $-723 -12.8% 40
Plainview $273,500 3.0% $-760 -3.4% 40
Rush City $282,500 6.4% $27 +17.5% 40
Northeast Itasca $259,000 2.5% $-1,157 +11.7% 39
Battle Lake $390,990 1.6% $-1,404 -7.5% 39
Slayton $156,750 4.9% $-193 -2.0% 39
Southside $457,500 1.2% $-2,676 +9.1% 39
Mission $419,000 0.1% $-3,388 +22.2% 39
Hoyt Lakes $153,000 5.8% $-56 -5.1% 39
Winsted $279,000 3.3% $-762 -6.7% 38
Afton $750,500 1.0% $-3,692 -7.4% 38
Grant $805,750 1.3% $-3,849 +15.9% 38
Sandstone $181,450 3.6% $-611 +34.9% 38
Stacy $415,000 2.4% $-1,599 -2.4% 38
Palmer $415,000 1.8% $-1,538 +30.8% 38
Mayer $377,625 5.2% $-346 -4.9% 38
Motley $244,500 3.0% $-720 -4.3% 38
Janesville $298,000 3.1% $-726 +15.2% 37
Pine Lake $329,900 1.5% $-1,756 -4.6% 37
Nowthen $575,000 2.0% $-2,175 +3.3% 37
Lake View $500,000 1.4% $-2,257 +21.4% 37
Waterville $245,000 2.6% $-915 -8.5% 37
Long Lake $445,000 2.1% $-1,417 +4.2% 37
Fish Lake $393,750 2.5% $-1,315 +5.3% 36
Newport $467,995 2.8% $-1,396 +13.8% 36
Shingobee $396,500 1.0% $-3,147 -15.3% 36
Cokato $299,900 3.2% $-585 -5.7% 35
Roseau $209,900 3.4% $-504 -11.1% 35
May $650,000 1.6% $-2,604 -7.3% 35
Caledonia $233,000 3.5% $-510 +2.2% 35
Blue Hill $450,000 3.0% $-1,346 +8.5% 35
Cascade $670,000 2.0% $-2,221 +3.6% 35
Lake No. 2 $343,500 1.3% $-1,634 +14.1% 34
Gaylord $259,450 4.3% $-319 +6.6% 34
Watab $320,500 2.0% $-1,649 +1.5% 34
Excelsior $860,500 0.3% $-6,575 -14.3% 34
Esko $395,000 2.7% $-1,612 +3.2% 33
Elysian $400,400 2.0% $-1,391 +13.6% 33
Proctor $235,000 4.0% $-430 +20.1% 33
Sleepy Eye $164,000 4.2% $-340 +3.0% 33
Lynden $340,000 3.0% $-1,174 +6.5% 33
Baytown $1,197,867 0.5% $-6,244 +8.0% 33
Kathio $133,000 3.5% $-709 -3.0% 33
Kenyon $264,900 3.7% $-585 +15.2% 33
Babbitt $135,000 5.8% $-65 -13.0% 33
Hawley $279,000 2.2% $-1,215 -7.5% 32
Bay Lake $295,000 0.5% $-1,983 -17.0% 32
East Gull Lake $747,500 -0.3% $-5,473 +51.6% 32
Dunn $425,000 1.0% $-2,974 +14.1% 32
East Cook $187,450 1.1% $-2,218 -3.9% 32
Preston $190,000 3.0% $-501 +11.2% 31
Howard Lake $329,000 4.1% $-616 +2.3% 31
Emily $375,000 1.1% $-2,189 +20.8% 31
Granite Falls $147,000 5.1% $-165 -20.2% 31
St. Bonifacius $380,000 2.5% $-1,251 -4.4% 31
Goodview $315,000 4.4% $-415 +0.0% 31
Henrietta $315,000 2.1% $-1,495 +9.7% 31
Arlington $247,500 3.9% $-525 +8.8% 31
Lauderdale $319,900 3.6% $-588 -3.2% 31
Lake Crystal $206,000 3.2% $-551 -7.3% 31
Irondale $300,000 1.9% $-1,322 +14.2% 31
McGregor $295,000 4.4% $-297 -24.3% 31
Miltona $350,000 2.1% $-1,349 -9.8% 31
Baudette $145,800 5.0% $-162 -21.5% 30
Benson $165,000 5.0% $-189 +5.2% 30
Bayport $477,500 1.8% $-2,174 +11.3% 30
Blooming Prairie $220,000 3.9% $-431 -5.0% 30
Richmond $293,750 2.0% $-1,309 +3.7% 30
Windemere $245,050 2.5% $-1,422 +17.5% 30
Jackson $188,000 5.3% $-155 +18.5% 30

Ready to act on these markets? Create a free account to screen Minnesota listings by cash flow, or see the national market data.