The 10 Best Small Towns In Minnesota For 2025


The best small towns in Minnesota are Wayzata and Deephaven for 2025 based on Saturday Night Science.

You’ve seen these lists before. Best places to live in Minnesota. Best sururbs in Minnesota. Best counties in Minnesota.

Etc., etc., etc.

But they all focus on major cities and towns in the North Star State, and no one pays attention to the little guy.

Well, that’s all about to change as we put together a list of the superb small towns in Minnesota based on numbers–not opinions or hearsay.

We’ll dive right into our methodology in the next section, but first, we thought you might want to know which places in Minnesota ranked the best based on Saturday Night Science.


Table Of Contents: Top Ten | Methodology | Summary | Table


The 15 Best Small Towns To Live In Minnesota For 2025

  1. Wayzata
  2. Deephaven
  3. Elko New Market
  4. St. Bonifacius
  5. Oronoco
  6. Circle Pines
  7. Independence
  8. Tonka Bay
  9. Proctor
  10. Goodview
  11. Dellwood
  12. Centerville
  13. Bayport
  14. Hanover
  15. Greenfield

Best Small Towns To Live In Minnesota Map

What’s the best small town in Minnesota? Wayzata is the best small town in Minnesota based on the most recent Census data. If you live in one of these small towns like Wayzata, chances are, you’re not surprised. After all, you know how great you have it.

But for the rest of you–keep reading, and we’ll get to just why these small towns made our list.

For more reading on the North Star State check out:

The 15 Best Small Towns In Minnesota For 2025

1. Wayzata

Wayzata, MN

Source: Wikipedia User 123dieinafire (talk) | CC BY 3.0
Overall SnackAbility

9.5
/10

Population: 4,363
Median Income: $125,344 (13th Best)
Median Home Value: $1,047,400 (1st Best)
Unemployment Rate: 1.4%

2. Deephaven

Overall SnackAbility

10
/10

Population: 3,835
Median Income: $175,441 (3rd Best)
Median Home Value: $854,000 (3rd Best)
Unemployment Rate: 1.5%

3. Elko New Market

Overall SnackAbility

10
/10

Population: 4,915
Median Income: $147,381 (6th Best)
Median Home Value: $407,400 (21st Best)
Unemployment Rate: 0.6%

4. St. Bonifacius

St. Bonifacius, MN

Source: Wikipedia User Eco84 at English Wikipedia | GFDL
Overall SnackAbility

6
/10

Population: 1,982
Median Income: $116,500 (20th Best)
Median Home Value: $342,400 (28th Best)
Unemployment Rate: 1.8%

5. Oronoco

Overall SnackAbility

6
/10

Population: 1,665
Median Income: $146,875 (8th Best)
Median Home Value: $468,700 (16th Best)
Unemployment Rate: 1.6%

6. Circle Pines

Circle Pines, MN

Source: Wikipedia User Cityof circlepines | CC BY-SA 3.0
Overall SnackAbility

6
/10

Population: 4,980
Median Income: $96,477 (43rd Best)
Median Home Value: $277,300 (51st Best)
Unemployment Rate: 3.1%

7. Independence

Overall SnackAbility

6
/10

Population: 3,695
Median Income: $194,205 (2nd Best)
Median Home Value: $757,800 (5th Best)
Unemployment Rate: 0.0%

8. Tonka Bay

Overall SnackAbility

6
/10

Population: 1,361
Median Income: $151,563 (4th Best)
Median Home Value: $869,900 (2nd Best)
Unemployment Rate: 9.1%

9. Proctor

Proctor, MN

Source: Public domain
Overall SnackAbility

8
/10

Population: 3,102
Median Income: $80,913 (72nd Best)
Median Home Value: $219,500 (82nd Best)
Unemployment Rate: 0.9%

10. Goodview

Overall SnackAbility

8.5
/10

Population: 4,104
Median Income: $75,375 (83rd Best)
Median Home Value: $215,200 (93rd Best)
Unemployment Rate: 3.6%

11. Dellwood

Overall SnackAbility

4
/10

Population: 1,145
Median Income: $208,125 (1st Best)
Median Home Value: $729,800 (6th Best)
Unemployment Rate: 1.1%

12. Centerville

Centerville, MN

Source: Public domain
Overall SnackAbility

6
/10

Population: 3,915
Median Income: $119,361 (16th Best)
Median Home Value: $364,700 (23rd Best)
Unemployment Rate: 1.7%

13. Bayport

Overall SnackAbility

7
/10

Population: 3,948
Median Income: $115,781 (23rd Best)
Median Home Value: $363,200 (24th Best)
Unemployment Rate: 2.4%

14. Hanover

Hanover, MN

Source: Public domain
Overall SnackAbility

4
/10

Population: 3,495
Median Income: $147,944 (5th Best)
Median Home Value: $421,700 (20th Best)
Unemployment Rate: 1.2%

15. Greenfield

Overall SnackAbility

5
/10

Population: 2,897
Median Income: $147,184 (7th Best)
Median Home Value: $524,300 (12th Best)
Unemployment Rate: 0.3%

Methodology: How We Determined The Coolest Towns In Minnesota

We threw a lot of criteria at this report to get the best, most complete results of the best small towns in Minnesota possible.

Using the most recent data from the Census’s 2019-2023 American Community Survey, the Bureau of Labor Statistics, and Saturday Night Science, this is the criteria we used:

  • Population Density (Higher is better)
  • Lowest Unemployment Rates
  • Housing costs (Higher is better. More demand.)
  • Adjusted Median Income (Higher is better)
  • Highly Educated Adults (Higher is better)
  • Insurance Rates (Higher is better)
  • Commute Times (Lower is better)

We looked at places with populations lower than 5,000 people and greater than 1,000, of which there were many – 211 to be exact.

We then ranked each place in each category with scores from 1 to 211, averaged them out, and the lowest scores went to our Best Small Towns in Minnesota. Top of that list — Wayzata.

This is our tenth time ranking the best small places to live in Minnesota.

Summary: Science Can Tackle Any Issue, Even Small Ones

We said it once, and we’ll say it again — this list: it’s just science. We did the research, crunched the numbers, and it turns out these 15 small towns in Minnesota are the best in which to live.

And who can argue with that?

The best small towns in Minnesota are Wayzata, Deephaven, Elko New Market, St. Bonifacius, Oronoco, Circle Pines, Independence, Tonka Bay, Proctor, and Goodview.

If you’re curious, here are the worst small towns in Minnesota:

  1. Little Rock
  2. Sandstone
  3. Appleton

For more Minnesota reading, check out:

Best Small Towns In Minnesota

Rank City Population Median Income Median Home Value Unemployment Rate
1 Wayzata, MN 4,363 $125,344 1.4%
2 Deephaven, MN 3,835 $175,441 1.5%
3 Elko New Market, MN 4,915 $147,381 0.6%
4 St. Bonifacius, MN 1,982 $116,500 1.8%
5 Oronoco, MN 1,665 $146,875 1.6%
6 Circle Pines, MN 4,980 $96,477 3.1%
7 Independence, MN 3,695 $194,205 0.0%
8 Tonka Bay, MN 1,361 $151,563 9.1%
9 Proctor, MN 3,102 $80,913 0.9%
10 Goodview, MN 4,104 $75,375 3.6%
11 Dellwood, MN 1,145 $208,125 1.1%
12 Centerville, MN 3,915 $119,361 1.7%
13 Bayport, MN 3,948 $115,781 2.4%
14 Hanover, MN 3,495 $147,944 1.2%
15 Greenfield, MN 2,897 $147,184 0.3%
16 Eagle Lake, MN 3,268 $97,161 4.0%
17 Long Lake, MN 1,710 $95,972 1.8%
18 Lonsdale, MN 4,789 $91,719 1.6%
19 Grant, MN 3,959 $145,357 1.3%
20 Esko, MN 2,063 $116,406 0.9%
21 Mayer, MN 2,501 $120,551 2.9%
22 St. Charles, MN 4,021 $96,544 2.1%
23 Excelsior, MN 2,359 $108,611 0.0%
24 Lakeland, MN 1,510 $101,339 4.6%
25 Mantorville, MN 1,003 $117,750 2.4%
26 Lauderdale, MN 2,386 $76,558 8.6%
27 Barnesville, MN 2,757 $83,333 0.9%
28 Pine Island, MN 3,693 $91,612 1.7%
29 Chatfield, MN 2,693 $91,912 2.1%
30 Scandia, MN 3,966 $100,179 1.0%
31 Baudette, MN 1,117 $71,042 0.7%
32 Oak Park Heights, MN 4,782 $84,639 3.2%
33 Rockville, MN 2,521 $101,447 0.6%
34 Lake St. Croix Beach, MN 1,106 $100,134 0.0%
35 Maple Plain, MN 1,889 $93,000 2.1%
36 East Gull Lake, MN 1,173 $128,548 2.9%
37 Albany, MN 2,800 $75,417 0.0%
38 Lake Shore, MN 1,117 $96,923 1.1%
39 Nisswa, MN 1,744 $100,167 0.5%
40 Cottonwood, MN 1,120 $90,750 3.6%
41 Rice, MN 1,998 $103,482 1.8%
42 Watertown, MN 4,747 $93,008 0.0%
43 Madison Lake, MN 1,178 $84,833 3.9%
44 Zumbrota, MN 3,843 $96,818 1.6%
45 Afton, MN 2,944 $129,956 3.1%
46 Nowthen, MN 4,539 $134,491 2.7%
47 Lindstrom, MN 4,933 $99,844 3.3%
48 Hawley, MN 2,086 $92,017 1.7%
49 Janesville, MN 2,449 $72,120 4.2%
50 St. Augusta, MN 3,576 $116,384 3.7%
51 Dilworth, MN 4,664 $89,577 1.0%
52 Lester Prairie, MN 1,848 $87,188 0.3%
53 Howard Lake, MN 1,864 $99,464 0.8%
54 Cologne, MN 2,146 $117,344 4.7%
55 Lewiston, MN 1,680 $96,912 2.0%
56 Grand Marais, MN 1,700 $73,846 0.6%
57 Eyota, MN 2,090 $83,684 2.1%
58 Rockford, MN 4,521 $82,228 1.8%
59 Sleepy Eye, MN 3,438 $64,811 2.7%
60 Blooming Prairie, MN 1,977 $63,929 1.2%
61 Luverne, MN 4,907 $66,145 2.5%
62 Richmond, MN 1,336 $67,381 1.9%
63 Columbus, MN 4,211 $117,917 1.3%
64 Spicer, MN 1,222 $76,406 1.9%
65 Spring Park, MN 1,869 $46,860 6.8%
66 Avon, MN 1,493 $90,987 2.5%
67 Martin Lake, MN 1,203 $120,705 1.1%
68 New London, MN 1,156 $66,830 0.2%
69 Cold Spring, MN 4,201 $72,022 3.8%
70 Cannon Falls, MN 4,216 $80,515 0.6%
71 Scanlon, MN 1,087 $75,833 8.9%
72 Dundas, MN 1,882 $111,250 11.0%
73 Lakefield, MN 1,652 $62,656 0.5%
74 Fulda, MN 1,348 $68,056 1.3%
75 Lake Crystal, MN 2,530 $77,979 3.0%
76 Paynesville, MN 2,476 $72,105 2.3%
77 Medford, MN 1,194 $98,375 6.0%
78 Edgerton, MN 1,207 $66,739 1.1%
79 Montgomery, MN 3,366 $74,018 3.5%
80 Becker, MN 4,958 $90,188 0.6%
81 Glyndon, MN 1,286 $93,571 4.2%
82 Cohasset, MN 2,700 $87,833 8.9%
83 Crosslake, MN 2,648 $85,000 2.7%
84 Elgin, MN 1,147 $87,000 4.7%
85 Rushford, MN 1,790 $73,321 3.7%
86 Mountain Iron, MN 2,865 $81,607 3.7%
87 Madison, MN 1,507 $56,435 1.1%
88 Clearwater, MN 1,904 $89,219 2.9%
89 Osseo, MN 2,601 $66,875 6.7%
90 Montrose, MN 3,840 $98,832 3.3%
91 Minneota, MN 1,531 $72,396 2.6%
92 Slayton, MN 2,089 $65,724 2.4%
93 Wanamingo, MN 1,185 $85,000 1.7%
94 Lexington, MN 2,616 $72,955 4.7%
95 New Richland, MN 1,068 $62,841 2.0%
96 Starbuck, MN 1,307 $60,217 0.6%
97 Dodge Center, MN 2,864 $77,552 3.0%
98 Adrian, MN 1,288 $74,100 1.7%
99 Waverly, MN 1,947 $113,269 1.2%
100 Breezy Point, MN 2,647 $85,913 3.4%
About Chris Kolmar

Chris Kolmar has been in the real estate business for almost ten years now. He originally worked for Movoto Real Estate as the director of marketing before founding HomeSnacks.

He believes the key to finding the right place to live comes down to looking at the data, reading about things to do, and, most importantly, checking it out yourself before you move.

If you've been looking for a place to live in the past several years, you've probably stumbled upon his writing already.

You can find out more about him on LinkedIn or his website.