Ranked from official statistics; every city opens its own guide.
Click any dot to open that city: jobs, pay, rent, commute, county economy and climate. Dot size follows population; colours follow the state flag.
By AtiveSite · Published 07/11/2026 · Updated 08/11/2026 · Every figure is linked to its source below.
Among the 80 largest places in Minnesota, Andover has the highest homeownership (94.1%), followed by Ham Lake and Otsego. Click any column to sort; click a city for its guide.
Across the 80 places in Minnesota that we cover, the median is 71.5% and the average 70.9%; the figure runs from 94.1% (Andover) to 36.5% (Hopkins). That is a spread of 2.6 times between the two ends. The state figure is 72.2%; 36 of the 80 places are above it and 44 at or below.
The first five are Andover, Ham Lake, Otsego, Lino Lakes, St. Michael. A high or low position is not good or bad on its own: read it together with the other measures on the city pages. Use the Compare tab on each city page to see how two places differ across income, rent, commute and education, and check the county page for the local job market.
| # ⇅ | City ⇅ | County ⇅ | Homeowners (share of households) ⇅ | Population ⇅ | Median household income ⇅ | Median rent ⇅ |
|---|---|---|---|---|---|---|
| 1 | Andover | Anoka County | 94.1% | 33,035 | $137,593 | $2,037 |
| 2 | Ham Lake | Anoka County | 93.7% | 16,702 | $120,135 | $1,173 |
| 3 | Otsego | Wright County | 92.7% | 22,245 | $119,927 | $1,765 |
| 4 | Lino Lakes | Anoka County | 92.1% | 22,113 | $127,181 | $1,874 |
| 5 | St. Michael | Wright County | 90.1% | 20,010 | $131,274 | $1,483 |
| 6 | Hugo | Washington County | 89.5% | 16,340 | $116,228 | $1,891 |
| 7 | Cottage Grove | Washington County | 88.2% | 40,992 | $120,791 | $1,783 |
| 8 | Champlin | Hennepin County | 88.1% | 23,294 | $116,102 | $1,689 |
| 9 | Lakeville | Dakota County | 87.8% | 74,354 | $139,041 | $1,806 |
| 10 | Rosemount | Dakota County | 87.4% | 27,562 | $129,625 | $1,640 |
| 11 | Farmington | Dakota County | 86.5% | 23,902 | $123,673 | $1,241 |
| 12 | Prior Lake | Scott County | 86.2% | 28,016 | $134,255 | $1,654 |
| 13 | Savage | Scott County | 85.8% | 32,889 | $125,513 | $1,766 |
| 14 | Blaine | Anoka County | 85.3% | 72,488 | $106,801 | $1,705 |
| 15 | Ramsey | Anoka County | 85.0% | 28,421 | $116,415 | $1,826 |
| 16 | Chanhassen | Carver County | 84.1% | 26,006 | $143,651 | $1,831 |
| 17 | Maple Grove | Hennepin County | 82.3% | 71,173 | $132,731 | $1,868 |
| 18 | Shoreview | Ramsey County | 80.2% | 26,714 | $108,370 | $1,661 |
| 19 | Elk River | Sherburne County | 79.2% | 26,793 | $108,741 | $1,283 |
| 20 | Woodbury | Washington County | 77.6% | 78,305 | $125,310 | $1,908 |
| 21 | Oakdale | Washington County | 77.5% | 28,585 | $93,772 | $1,481 |
| 22 | Inver Grove Heights | Dakota County | 76.9% | 35,906 | $101,316 | $1,465 |
| 23 | Crystal | Hennepin County | 76.9% | 22,476 | $92,513 | $1,467 |
| 24 | Stillwater | Washington County | 76.7% | 19,355 | $105,853 | $1,622 |
| 25 | Hastings | Dakota County | 76.4% | 22,117 | $93,998 | $1,183 |
| 26 | Eden Prairie | Hennepin County | 76.1% | 63,051 | $130,489 | $1,833 |
| 27 | Owatonna | Steele County | 75.6% | 26,498 | $80,750 | $1,067 |
| 28 | Plymouth | Hennepin County | 75.1% | 79,220 | $136,534 | $1,766 |
| 29 | New Ulm | Brown County | 75.1% | 14,056 | $64,449 | $962 |
| 30 | Coon Rapids | Anoka County | 74.8% | 63,468 | $88,251 | $1,494 |
| 31 | Shakopee | Scott County | 74.8% | 46,012 | $107,223 | $1,531 |
| 32 | Buffalo | Wright County | 74.3% | 16,499 | $88,820 | $1,182 |
| 33 | Albert Lea | Freeborn County | 74.1% | 18,330 | $64,603 | $857 |
| 34 | Apple Valley | Dakota County | 73.4% | 55,679 | $97,673 | $1,738 |
| 35 | Forest Lake | Washington County | 72.9% | 20,729 | $92,944 | $1,421 |
| 36 | Edina | Hennepin County | 72.4% | 53,262 | $128,767 | $1,844 |
| 37 | Red Wing | Goodhue County | 72.2% | 16,758 | $67,192 | $969 |
| 38 | Maplewood | Ramsey County | 71.8% | 40,695 | $91,394 | $1,406 |
| 39 | Minnetonka | Hennepin County | 71.6% | 53,064 | $119,517 | $1,779 |
| 40 | Austin | Mower County | 71.5% | 26,358 | $68,057 | $953 |
| 41 | Hibbing | Saint Louis County | 71.1% | 16,057 | $55,789 | $833 |
| 42 | Robbinsdale | Hennepin County | 71.0% | 14,234 | $88,252 | $1,758 |
| 43 | Golden Valley | Hennepin County | 70.7% | 21,725 | $108,772 | $1,785 |
| 44 | Brooklyn Park | Hennepin County | 70.2% | 83,876 | $89,891 | $1,325 |
| 45 | North Mankato | Nicollet County | 69.7% | 14,211 | $80,791 | $973 |
| 46 | South St. Paul | Dakota County | 69.7% | 20,611 | $87,994 | $1,199 |
| 47 | Northfield | Rice County | 69.3% | 20,742 | $84,895 | $1,103 |
| 48 | Hutchinson | McLeod County | 68.6% | 14,680 | $72,836 | $940 |
| 49 | White Bear Lake | Ramsey County | 67.8% | 23,908 | $83,554 | $1,601 |
| 50 | Eagan | Dakota County | 67.7% | 68,000 | $108,690 | $1,679 |
| 51 | Chaska | Carver County | 67.5% | 28,706 | $110,956 | $1,553 |
| 52 | Roseville | Ramsey County | 66.5% | 35,802 | $86,930 | $1,374 |
| 53 | Faribault | Rice County | 66.1% | 24,631 | $61,449 | $1,074 |
| 54 | Columbia Heights | Anoka County | 66.0% | 22,155 | $73,691 | $1,295 |
| 55 | Bloomington | Hennepin County | 65.8% | 88,665 | $93,211 | $1,561 |
| 56 | Rochester | Olmsted County | 65.1% | 122,330 | $89,389 | $1,399 |
| 57 | Monticello | Wright County | 64.7% | 14,858 | $79,534 | $1,405 |
| 58 | Burnsville | Dakota County | 64.7% | 64,463 | $87,024 | $1,513 |
| 59 | Fergus Falls | Otter Tail County | 64.1% | 14,181 | $56,162 | $911 |
| 60 | Brooklyn Center | Hennepin County | 63.5% | 32,479 | $72,535 | $1,376 |
| 61 | Fridley | Anoka County | 63.0% | 30,241 | $77,680 | $1,326 |
| 62 | Sartell | Stearns County | 61.8% | 19,758 | $84,131 | $1,275 |
| 63 | Richfield | Hennepin County | 61.6% | 36,642 | $85,132 | $1,393 |
| 64 | New Brighton | Ramsey County | 61.2% | 22,710 | $88,521 | $1,397 |
| 65 | Duluth | Saint Louis County | 59.4% | 87,093 | $68,807 | $1,087 |
| 66 | Willmar | Kandiyohi County | 59.4% | 21,378 | $62,280 | $910 |
| 67 | Moorhead | Clay County | 58.1% | 45,036 | $72,761 | $1,033 |
| 68 | Winona | Winona County | 58.0% | 26,009 | $56,337 | $882 |
| 69 | St. Louis Park | Hennepin County | 57.8% | 49,594 | $101,648 | $1,644 |
| 70 | Alexandria | Douglas County | 57.4% | 14,735 | $61,374 | $934 |
| 71 | West St. Paul | Dakota County | 57.2% | 21,382 | $68,464 | $1,282 |
| 72 | Anoka | Anoka County | 56.9% | 17,970 | $75,948 | $1,269 |
| 73 | Brainerd | Crow Wing County | 56.5% | 14,468 | $56,111 | $827 |
| 74 | St. Paul | Ramsey County | 52.9% | 307,284 | $73,394 | $1,281 |
| 75 | New Hope | Hennepin County | 52.6% | 21,181 | $77,662 | $1,335 |
| 76 | Mankato | Blue Earth County | 50.0% | 45,473 | $66,873 | $1,132 |
| 77 | St. Cloud | Stearns County | 48.6% | 70,629 | $61,374 | $1,003 |
| 78 | Minneapolis | Hennepin County | 47.7% | 427,246 | $80,846 | $1,371 |
| 79 | Bemidji | Beltrami County | 43.1% | 15,569 | $55,405 | $1,067 |
| 80 | Hopkins | Hennepin County | 36.5% | 18,819 | $75,234 | $1,468 |
Largest Cities · Cities With the Cheapest Rent · Cities With the Highest Household Income · Cities Where Rent Takes the Smallest Share of Income · Cities With the Lowest Unemployment · Cities in the Highest-Paying Counties · Most College-Educated Cities · Cities With the Most Remote Work · Cities With the Shortest Commutes
Unincorporated places are census-designated places: they have no city government but are counted as communities. Figures describe the city itself.
Andover, with 94.1% (among the 80 largest places; ACS 2020–2024).
The 80 largest places in Minnesota by population.