Best small towns to live in Minnesota
The 25 Minnesota small towns with the best mix of affordability, safety, schools and jobs, picked from 152 real small towns of 1,000 to 15,000 people — not suburbs.
- 1Dawson, MN Score 83/100
1,513 people · typical home $138k · household income $69k · 30 violent crimes per 100k · schools in the top 25% of MN · 2.0% unemployment · 1 mi to a hospital
- 2Elbow Lake, MN Score 79/100
1,301 people · typical home $127k · household income $60k · 65 violent crimes per 100k · schools in the top 16% of MN · 4.0% unemployment · 0 mi to a hospital
- 3Springfield, MN Score 76/100
2,125 people · typical home $122k · household income $59k · 18 violent crimes per 100k · schools in the top 9% of MN · 5.0% unemployment · 13 mi to a hospital
- 4Harmony, MN Score 73/100
1,024 people · typical home $170k · household income $68k · 19 violent crimes per 100k · schools in the top 34% of MN · 3.0% unemployment · 14 mi to a hospital
- 5Ada, MN Score 73/100
1,833 people · typical home $138k · household income $64k · 43 violent crimes per 100k · schools in the top 14% of MN · 7.0% unemployment · 4 mi to a hospital
- 6Slayton, MN Score 72/100
2,141 people · typical home $162k · household income $62k · 88 violent crimes per 100k · schools in the top 18% of MN · 2.0% unemployment · 2 mi to a hospital
- 7Ortonville, MN Score 72/100
2,028 people · typical home $166k · household income $56k · 39 violent crimes per 100k · schools in the top 18% of MN · 2.0% unemployment · 4 mi to a hospital
- 8Red Lake Falls, MN Score 72/100
1,348 people · typical home $139k · household income $64k · 51 violent crimes per 100k · schools in the top 35% of MN · 2.0% unemployment · 16 mi to a hospital
- 9Madison, MN Score 71/100
1,550 people · typical home $97k · household income $61k · 30 violent crimes per 100k · schools in the top 64% of MN · 2.0% unemployment · 1 mi to a hospital
- 10Spring Grove, MN Score 70/100
1,177 people · typical home $156k · household income $60k · 38 violent crimes per 100k · schools in the top 5% of MN · 6.0% unemployment · 15 mi to a hospital
- 11Luverne, MN Score 70/100
4,925 people · typical home $208k · household income $64k · 62 violent crimes per 100k · schools in the top 13% of MN · 3.0% unemployment · 1 mi to a hospital
- 12Madelia, MN Score 68/100
2,327 people · typical home $165k · household income $77k · 48 violent crimes per 100k · schools in the top 52% of MN · 4.0% unemployment · 0 mi to a hospital
- 13Cokato, MN Score 67/100
2,782 people · typical home $223k · household income $70k · 45 violent crimes per 100k · schools in the top 18% of MN · 3.0% unemployment · 16 mi to a hospital
- 14Lakefield, MN Score 66/100
1,507 people · typical home $134k · household income $72k · 60 violent crimes per 100k · schools in the top 60% of MN · 1.0% unemployment · 9 mi to a hospital
- 15Starbuck, MN Score 66/100
1,235 people · typical home $168k · household income $73k · 60 violent crimes per 100k · schools in the top 39% of MN · 2.0% unemployment · 10 mi to a hospital
- 16Tracy, MN Score 66/100
2,057 people · typical home $113k · household income $68k · 169 violent crimes per 100k · schools in the top 41% of MN · 1.0% unemployment · 2 mi to a hospital
- 17Morris, MN Score 66/100
5,128 people · typical home $210k · household income $68k · 62 violent crimes per 100k · schools in the top 25% of MN · 1.0% unemployment · 1 mi to a hospital
- 18Preston, MN Score 66/100
1,362 people · typical home $186k · household income $64k · 41 violent crimes per 100k · schools in the top 34% of MN · 3.0% unemployment · 21 mi to a hospital
- 19Cottonwood, MN Score 65/100
1,061 people · typical home $176k · household income $98k · 169 violent crimes per 100k · schools in the top 18% of MN · 2.0% unemployment · 13 mi to a hospital
- 20Olivia, MN Score 65/100
2,205 people · typical home $159k · household income $63k · 75 violent crimes per 100k · schools in the top 43% of MN · 3.0% unemployment · 1 mi to a hospital
- 21Wheaton, MN Score 64/100
1,389 people · typical home $88k · household income $46k · 62 violent crimes per 100k · schools in the top 34% of MN · 4.0% unemployment · 17 mi to a hospital
- 22Hector, MN Score 64/100
1,130 people · typical home $132k · household income $63k · 41 violent crimes per 100k · schools in the top 56% of MN · 3.0% unemployment · 14 mi to a hospital
- 23Rushford, MN Score 63/100
1,826 people · typical home $215k · household income $77k · 10 violent crimes per 100k · schools in the top 45% of MN · 4.0% unemployment · 14 mi to a hospital
- 24Tyler, MN Score 62/100
1,090 people · typical home $151k · household income $66k · 46 violent crimes per 100k · schools in the top 47% of MN · 4.0% unemployment · 1 mi to a hospital
- 25Wells, MN Score 62/100
2,296 people · typical home $104k · household income $60k · 117 violent crimes per 100k · schools in the top 41% of MN · 3.0% unemployment · 20 mi to a hospital
How we ranked them
Every small town in Minnesota with 1,000–15,000 people that stands on its own (not part of a big metro core, by USDA rural-urban codes) and has solid Census data. Each town is scored against the others in Minnesota on: affordability (household income vs. home prices), safety (violent crime, FBI), schools (reading proficiency vs. other Minnesota districts), jobs (unemployment, half weight) and everyday access (distance to a hospital and a grocery store, quarter weight each). Missing numbers count as average.
The "best" town is different for everyone — weather, size, politics, things to do and more all matter too.
Get a ranking built for you
Take the free 5-minute quiz and we'll rank every place in Minnesota — and the country — on what you care about.