Best counties to live in Minnesota

·Stacker

Laura Beach // Shutterstock
Laura Beach // Shutterstock

More counties in the United States experienced population growth in the last year, according to the latest Census data, even as pandemic-related moving trends begin to normalize.

Counties in the South continued to experience growth, particularly in Florida, where 96% of its 67 counties gained new residents. Polk County, Florida, a suburb of Orlando, added the most, with 26,000 people moving there in 2023.

Meanwhile, counties in the Midwest and Northeast continued to lose population, but at slower rates than the year before. Some of the biggest losses were in counties home to large cities, including Cook County, Illinois (home of Chicago) and the boroughs of Brooklyn and Queens in New York.

Many counties are experiencing growth due to their job opportunities, education, or relatively affordable housing costs. Others are favored for their historic or well-designed downtowns or access to cultural opportunities.

Stacker compiled a list of the best counties to live in Minnesota using rankings from Niche. Niche ranks counties by various factors including public schools, educational attainment, cost of living, and housing.

Keep reading to see if your county made the list.

You may also like: Most commonly seen birds in Minnesota

#30. Redwood County, Minnesota

Jacob Boomsma // Shutterstock

1 / 30

#30. Redwood County, Minnesota

- Overall Rank: 1,002
- Population: 15,428
- Median household income: $65,617
- Median home value: $138,700 (80% own)
- Median rent: $759 (20% rent)
- Top public schools: Red Rock Central Secondary School (grade B), Wabasso Secondary School (grade B), Redwood Valley Middle School (grade B minus)
- Top private schools: St. John Lutheran School (grade unavailable), St. Anne School (grade unavailable), St. Michael's School (grade unavailable)
- Top places: Redwood Falls (grade B), Kintire Township (grade A minus), Lamberton (grade B+)

#29. Douglas County, Minnesota

Canva

2 / 30

#29. Douglas County, Minnesota

- Overall Rank: 1,000
- Population: 39,081
- Median household income: $72,472
- Median home value: $277,800 (76% own)
- Median rent: $847 (24% rent)
- Top public schools: Garfield Elementary School (grade A minus), Osakis Elementary School (grade A minus), Brandon-Evansville Middle School (grade A minus)
- Top private schools: New Testament Christian School (grade C+), St. Mary's Catholic School (grade unavailable), Zion Lutheran School (grade unavailable)
- Top places: Alexandria (grade B+), La Grand Township (grade B), Carlos Township (grade B)

#28. Hubbard County, Minnesota

Debbie Center // Shutterstock

3 / 30

#28. Hubbard County, Minnesota

- Overall Rank: 986
- Population: 21,479
- Median household income: $67,197
- Median home value: $245,500 (82% own)
- Median rent: $827 (18% rent)
- Top public schools: Nevis Elementary School (grade B+), Century Elementary School (grade B), Nevis Secondary School (grade B)
- Top private schools:
- Top places: Todd Township (grade B minus), Henrietta Township (grade B minus), Park Rapids (grade C+)

#27. Dodge County, Minnesota

Bob Pool // Shutterstock

4 / 30

#27. Dodge County, Minnesota

- Overall Rank: 971
- Population: 20,893
- Median household income: $92,890
- Median home value: $245,800 (87% own)
- Median rent: $901 (13% rent)
- Top public schools: Kasson-Mantorville Elementary School (grade B+), Kasson-Mantorville Middle School (grade B), Triton High School (grade B)
- Top private schools: Maranatha Adventist School (grade unavailable), Grace Lutheran School (grade unavailable)
- Top places: Kasson (grade B+), Mantorville Township (grade B), Dodge Center (grade B)

#26. Brown County, Minnesota

Joe Ferrer // Shutterstock

5 / 30

#26. Brown County, Minnesota

- Overall Rank: 957
- Population: 25,880
- Median household income: $67,038
- Median home value: $165,200 (79% own)
- Median rent: $825 (21% rent)
- Top public schools: Springfield Elementary School (grade A), New Ulm High School (grade B+), Sleepy Eye Secondary School (grade B+)
- Top private schools: New Ulm Area Catholic Schools (grade B), St. Mary's Catholic School (grade B minus), St. Paul's Lutheran School (grade unavailable)
- Top places: New Ulm (grade B+), Sleepy Eye (grade B+), Springfield (grade B+)

You may also like: Best public middle schools in Minnesota

#25. Mower County, Minnesota

Virrage Images // Shutterstock

6 / 30

#25. Mower County, Minnesota

- Overall Rank: 953
- Population: 40,082
- Median household income: $66,972
- Median home value: $158,000 (75% own)
- Median rent: $818 (25% rent)
- Top public schools: Grand Meadow Elementary School (grade B+), Grand Meadow Senior High School (grade B), Southland Elementary School (grade B)
- Top private schools: Pacelli High School (grade A minus), Pacelli Elementary School (grade unavailable), Sacred Heart School (grade unavailable)
- Top places: Austin (grade B), Udolpho Township (grade B+), Adams Township (grade B+)

#24. Kandiyohi County, Minnesota

Canva

7 / 30

#24. Kandiyohi County, Minnesota

- Overall Rank: 840
- Population: 43,686
- Median household income: $73,285
- Median home value: $214,600 (74% own)
- Median rent: $800 (26% rent)
- Top public schools: New London-Spicer Middle School (grade B+), Willmar Senior High School (grade B), Prairie Woods Elementary School (grade B)
- Top private schools: Community Christian School (grade B+), Central Minnesota Christian School (grade C+)
- Top places: New London (grade B+), New London Township (grade B), Irving Township (grade B)

#23. Polk County, Minnesota

Jacob Boomsma // Shutterstock

8 / 30

#23. Polk County, Minnesota

- Overall Rank: 829
- Population: 31,128
- Median household income: $69,540
- Median home value: $204,600 (72% own)
- Median rent: $822 (28% rent)
- Top public schools: Win-E-Mac Elementary School (grade A minus), Fertile-Beltrami Elementary School (grade B+), Win-E-Mac High School (grade B)
- Top private schools: Sacred Heart School (grade B+), Riverside Christian School (grade unavailable), Cathedral Elementary School (grade unavailable)
- Top places: East Grand Forks (grade B+), Crookston (grade B), McIntosh (grade A)

#22. Rice County, Minnesota

Titima Ying To // Shutterstock

9 / 30

#22. Rice County, Minnesota

- Overall Rank: 799
- Population: 67,152
- Median household income: $78,214
- Median home value: $279,700 (76% own)
- Median rent: $1,021 (24% rent)
- Top public schools: Spring Creek Elementary (grade A), Bridgewater Elementary School (grade A), Northfield Middle School (grade A minus)
- Top private schools: Shattuck-St. Mary's School (grade A+), Bethlehem Academy (grade B+), Divine Mercy Catholic School (grade unavailable)
- Top places: Northfield (grade A+), Dundas (grade A minus), Bridgewater Township (grade B+)

#21. Steele County, Minnesota

Canva

10 / 30

#21. Steele County, Minnesota

- Overall Rank: 725
- Population: 37,396
- Median household income: $79,722
- Median home value: $217,100 (77% own)
- Median rent: $914 (23% rent)
- Top public schools: Blooming Prairie Elementary School (grade B+), Owatonna Senior High School (grade B+), Lincoln Elementary School (grade B+)
- Top private schools: Owatonna Christian School (grade B+), St. Mary's School (grade unavailable), Owatonna Montessori Children's House (grade unavailable)
- Top places: Owatonna (grade B+), Blooming Prairie (grade B+), Medford Township (grade B)

You may also like: Most common dog breeds available for adoption in Minnesota

#20. Winona County, Minnesota

Canva

11 / 30

#20. Winona County, Minnesota

- Overall Rank: 691
- Population: 49,792
- Median household income: $66,162
- Median home value: $203,500 (69% own)
- Median rent: $803 (31% rent)
- Top public schools: Ridgeway Community School (grade A minus), Bluffview Montessori School (grade B+), St. Charles Elementary School (grade B)
- Top private schools: Cotter Schools (grade B+), Hope Lutheran High School (grade B), Winona Area Catholic Schools (grade unavailable)
- Top places: St. Charles (grade A), Winona (grade B+), Wilson Township (grade B)

#19. St. Louis County, Minnesota

Canva

12 / 30

#19. St. Louis County, Minnesota

- Overall Rank: 660
- Population: 200,122
- Median household income: $66,491
- Median home value: $192,900 (72% own)
- Median rent: $927 (28% rent)
- Top public schools: Lester Park Elementary School (grade A minus), Congdon Elementary School (grade A minus), Harbor City International School (grade A minus)
- Top private schools: Marshall School (grade A), Lakeview Christian Academy (grade B minus), Stella Maris Academy - Holy Rosary Campus (grade unavailable)
- Top places: Duluth (grade A minus), Hermantown (grade B+), Ely (grade B+)

#18. Stearns County, Minnesota

Canva

13 / 30

#18. Stearns County, Minnesota

- Overall Rank: 659
- Population: 158,622
- Median household income: $73,105
- Median home value: $241,100 (67% own)
- Median rent: $975 (33% rent)
- Top public schools: Oak Ridge Elementary School (grade A), Sartell Middle School (grade A), Pine Meadow Elementary School (grade A)
- Top private schools: Saint John's Preparatory School (grade A+), Cathedral Middle and High School (grade B+), St. Joseph Catholic School (grade unavailable)
- Top places: Le Sauk Township (grade A minus), Sartell (grade A minus), St. Joseph (grade A minus)

#17. Beltrami County, Minnesota

Canva

14 / 30

#17. Beltrami County, Minnesota

- Overall Rank: 655
- Population: 46,274
- Median household income: $62,173
- Median home value: $203,900 (68% own)
- Median rent: $935 (32% rent)
- Top public schools: Lincoln Elementary School (grade A minus), Bemidji Senior High School (grade A minus), Treknorth High School (grade A minus)
- Top private schools: St. Philip's School (grade unavailable), St. Mary's Mission School (grade unavailable), Heartland Christian Academy (grade unavailable)
- Top places: Northern Township (grade A+), Bemidji Township (grade A minus), Eckles Township (grade B+)

#16. Anoka County, Minnesota

Canva

15 / 30

#16. Anoka County, Minnesota

- Overall Rank: 632
- Population: 363,985
- Median household income: $95,782
- Median home value: $302,300 (80% own)
- Median rent: $1,356 (20% rent)
- Top public schools: Elementary Lighthouse (grade A), Sunrise Elementary School (grade A), Andover Elementary School (grade A)
- Top private schools: Al-Amal School (grade A+), Totino-Grace High School (grade A), Woodcrest Baptist Academy (grade B minus)
- Top places: Blaine (grade A minus), Lino Lakes (grade A minus), Circle Pines (grade A minus)

You may also like: Highest-rated Class of 2025 men's basketball recruits from Minnesota

#15. Rock County, Minnesota

Canva

16 / 30

#15. Rock County, Minnesota

- Overall Rank: 604
- Population: 9,659
- Median household income: $75,060
- Median home value: $189,100 (77% own)
- Median rent: $788 (23% rent)
- Top public schools: Hills-Beaver Creek Elementary School (grade A minus), Luverne Elementary School (grade B+), Luverne Middle School (grade B+)
- Top private schools: South Western Youth Services (grade unavailable), Hills Christian School (grade unavailable)
- Top places: Luverne (grade A minus), Hardwick (grade B+), Beaver Creek Township (grade B+)

#14. Stevens County, Minnesota

Canva

17 / 30

#14. Stevens County, Minnesota

- Overall Rank: 599
- Population: 9,682
- Median household income: $69,737
- Median home value: $170,700 (68% own)
- Median rent: $821 (32% rent)
- Top public schools: Hancock Elementary School (grade B+), Morris Area Elementary School (grade B), Hancock Secondary School (grade B)
- Top private schools: St. Mary's School (grade unavailable)
- Top places: Morris (grade B+), Swan Lake Township (grade A minus), Hancock (grade B+)

#13. Wright County, Minnesota

Jacob Boomsma // Shutterstock

18 / 30

#13. Wright County, Minnesota

- Overall Rank: 541
- Population: 142,543
- Median household income: $102,980
- Median home value: $310,900 (83% own)
- Median rent: $1,149 (17% rent)
- Top public schools: St. Michael Elementary School (grade A), Fieldstone Elementary School (grade A), Big Woods Elementary School (grade A)
- Top private schools: Holy Spirit Academy (grade B), St. Michael Catholic School (grade unavailable), St. Francis Xavier Elementary School (grade unavailable)
- Top places: St. Michael (grade A), Delano (grade A), Otsego (grade A minus)

#12. Lyon County, Minnesota

PBouman // Shutterstock

19 / 30

#12. Lyon County, Minnesota

- Overall Rank: 491
- Population: 25,352
- Median household income: $68,919
- Median home value: $177,600 (70% own)
- Median rent: $718 (30% rent)
- Top public schools: Minneota Elementary School (grade A minus), Marshall High School (grade A minus), Minneota Secondary School (grade B+)
- Top private schools: Holy Redeemer School (grade unavailable), Marshall Area Christian School (grade unavailable), St. Mary's Catholic School (grade unavailable)
- Top places: Marshall (grade A minus), Lake Marshall Township (grade A minus), Fairview Township (grade B+)

#11. Clay County, Minnesota

Jacob Boomsma // Shutterstock

20 / 30

#11. Clay County, Minnesota

- Overall Rank: 400
- Population: 65,307
- Median household income: $75,006
- Median home value: $241,400 (66% own)
- Median rent: $972 (34% rent)
- Top public schools: Hawley Elementary School (grade B+), Barnesville Elementary School (grade B+), Moorhead High School (grade B)
- Top private schools: Park Christian School (grade B+), St. Joseph's School (grade unavailable), Cobber Kids - Concordia College (grade unavailable)
- Top places: Moorhead (grade A minus), Dilworth (grade B+), Moorhead Township (grade A minus)

You may also like: Cities with the fastest-growing home prices in Minnesota

#10. Blue Earth County, Minnesota

Canva

21 / 30

#10. Blue Earth County, Minnesota

- Overall Rank: 381
- Population: 69,022
- Median household income: $70,906
- Median home value: $239,200 (61% own)
- Median rent: $1,007 (39% rent)
- Top public schools: Franklin Elementary School (grade A), Mankato West Senior High School (grade A), Jefferson Elementary School (grade A minus)
- Top private schools: Loyola Catholic School (grade A minus), Grace Christian School (grade A minus), Immanuel Lutheran School (grade B minus)
- Top places: Mankato (grade A minus), Mankato Township (grade A minus), Eagle Lake (grade B+)

#9. Nicollet County, Minnesota

Canva

22 / 30

#9. Nicollet County, Minnesota

- Overall Rank: 369
- Population: 34,380
- Median household income: $79,113
- Median home value: $240,700 (74% own)
- Median rent: $901 (26% rent)
- Top public schools: Bridges Community Elementary School (grade A), Dakota Meadows Middle School (grade B+), Hoover Elementary School (grade B+)
- Top private schools: Minnesota Valley Lutheran High School (grade B+), John Ireland School (grade unavailable), Immanuel Lutheran School (grade unavailable)
- Top places: North Mankato (grade A), St. Peter (grade B+), Belgrade Township (grade B)

#8. Cook County, Minnesota

Canva

23 / 30

#8. Cook County, Minnesota

- Overall Rank: 179
- Population: 5,611
- Median household income: $71,937
- Median home value: $289,500 (78% own)
- Median rent: $874 (22% rent)
- Top public schools: Cook County Senior High School (grade B+), Sawtooth Mountain Elementary School (grade B), Great Expectations School (grade B minus)
- Top private schools:
- Top places: Grand Marais (grade A), Lutsen Township (grade A minus), Lutsen (grade A minus)

#7. Scott County, Minnesota

Sam Wagner // Shutterstock

24 / 30

#7. Scott County, Minnesota

- Overall Rank: 156
- Population: 151,347
- Median household income: $118,268
- Median home value: $376,000 (83% own)
- Median rent: $1,419 (17% rent)
- Top public schools: Hidden Oaks Middle School (grade A), Jeffers Pond Elementary School (grade A minus), Westwood Elementary School (grade A minus)
- Top private schools: Prior Lake Christian Academy (grade B minus), St. John the Baptist Catholic School and Preschool (grade A), Shakopee Area Catholic School (grade unavailable)
- Top places: Savage (grade A), Prior Lake (grade A), Shakopee (grade A minus)

#6. Carver County, Minnesota

Canva

25 / 30

#6. Carver County, Minnesota

- Overall Rank: 101
- Population: 107,216
- Median household income: $116,308
- Median home value: $400,500 (82% own)
- Median rent: $1,384 (18% rent)
- Top public schools: Cologne Academy (grade A), Minnetonka Middle School West (grade A), Laketown Elementary School (grade A)
- Top private schools: Holy Family Catholic High School (grade A), Southwest Christian High School (grade A), Mayer Lutheran (grade B)
- Top places: Chanhassen (grade A+), Victoria (grade A+), Carver (grade A)

You may also like: Richest billionaires in Minnesota

#5. Dakota County, Minnesota

Canva

26 / 30

#5. Dakota County, Minnesota

- Overall Rank: 86
- Population: 439,179
- Median household income: $101,360
- Median home value: $341,200 (76% own)
- Median rent: $1,410 (24% rent)
- Top public schools: Eastview Senior High School (grade A+), Eagan Senior High School (grade A), Cherry View Elementary School (grade A)
- Top private schools: Saint Thomas Academy (grade A), Visitation School (grade A), Trinity School at River Ridge (grade A)
- Top places: Mendota Heights (grade A+), Eagan (grade A+), Lakeville (grade A)

#4. Washington County, Minnesota

Jeff Lueders // Shutterstock

27 / 30

#4. Washington County, Minnesota

- Overall Rank: 76
- Population: 268,651
- Median household income: $110,828
- Median home value: $379,300 (81% own)
- Median rent: $1,577 (19% rent)
- Top public schools: Math & Science Academy (grade A+), St. Croix Preparatory Academy Lower School (grade A+), St. Croix Preparatory Academy Middle School (grade A)
- Top private schools: New Life Academy (grade A), Hope Christian Academy (grade B), St. Peter Catholic School (grade A+)
- Top places: Woodbury (grade A+), Lake Elmo (grade A), Dellwood (grade A)

#3. Ramsey County, Minnesota

Canva

28 / 30

#3. Ramsey County, Minnesota

- Overall Rank: 63
- Population: 547,202
- Median household income: $78,108
- Median home value: $289,300 (61% own)
- Median rent: $1,214 (39% rent)
- Top public schools: Nova Classical Academy Upper School (grade A+), Nova Classical Academy Lower School (grade A), Mounds View High School (grade A)
- Top private schools: St. Paul Academy and Summit School (grade A+), Mounds Park Academy (grade A+), Cretin-Derham Hall (grade A+)
- Top places: Falcon Heights (grade A+), Lauderdale (grade A+), Macalester-Groveland (grade A+)

#2. Olmsted County, Minnesota

Canva

29 / 30

#2. Olmsted County, Minnesota

- Overall Rank: 43
- Population: 162,307
- Median household income: $90,420
- Median home value: $285,600 (71% own)
- Median rent: $1,193 (29% rent)
- Top public schools: Folwell Elementary School (grade A minus), Byron Intermediate School (grade A minus), Washington Elementary School (grade A minus)
- Top private schools: Lourdes High School (grade A), Schaeffer Academy (grade A minus), Rochester Central Lutheran School (grade A+)
- Top places: Cascade Township (grade A), Rochester (grade A), Byron (grade A)

#1. Hennepin County, Minnesota

Checubus // Shutterstock

30 / 30

#1. Hennepin County, Minnesota

- Overall Rank: 17
- Population: 1,270,787
- Median household income: $92,595
- Median home value: $358,000 (63% own)
- Median rent: $1,373 (37% rent)
- Top public schools: Wayzata High School (grade A+), Eden Prairie Senior High School (grade A+), Minnetonka Senior High School (grade A+)
- Top private schools: The International School of Minnesota (grade A+), The Blake School (grade A+), Breck School (grade A+)
- Top places: Eden Prairie (grade A+), Medina (grade A+), Edina (grade A+)

This story features data reporting and writing by Elena Cox and is part of a series utilizing data automation across 50 states.

You may also like: Average Minnesota mortgage debt increased to $211,874 in 2024