The Town Files

Princeton, Minnesota

Township in Mille Lacs County · population 2,228 (2020 Census)

Map: where Princeton is in MinnesotaPrinceton
Median home
$300,900
Household income
$88,056
Jan low / Jul high
4° / 81°
Snow a year
49 in
Tornadoes ≤10 mi since 1950
9
Median age
39.1

Princeton is a township of 2,228 people in Mille Lacs County, Minnesota. The median home is worth $300,900, close to the typical Minnesota town ($301,800). It ranks better for first-time buyers than 91% of Minnesota towns, better transit than 86% of Minnesota towns, more walkable than 79% of Minnesota towns.

How Princeton ranks

Percentile among Minnesota towns with at least 500 people on The Town Files lifestyle rankings. 50 is typical for the state; 90 means better than 90% of Minnesota towns.

Princeton lifestyle rankings vs other Minnesota townsRetirement18th pctFamilies23rd pctQuiet30th pctWalkability79th pctFirst-time buyers91st pctYoung professionals20th pctVibrancy73rd pctHip & trendy51st pctCollege town42nd pctUpscale14th pctVacation homesbottomSeaside characterbottomCyclingbottomTransit86th pctDriving34th pcttypical
The Town Files lifestyle rankings, built from federal demographic, school, crime and housing data (2025).

Homes and cost of living

The median home in Princeton is worth $300,900, close to the typical Minnesota town ($301,800). Homes cost about 3.4 times the median household income of $88,056, which is more affordable than 50% of Minnesota towns. 90.2% of households own their home.

Princeton vs Mille Lacs County vs typical Minnesota townPrincetonMille Lacs CountyTypical Minnesota townHome value$300,900$258,300$301,800Household income$88,056$72,729$87,375
Census ACS 5-year estimates, 2020–2024. "Typical town" = median of Minnesota towns with 500+ people.
HousingPrincetonTypical Minnesota town
Median home value$300,900$301,800
Median rent—$991
Median household income$88,056$87,375
Home value ÷ income3.4×3.4×
Homeownership90.2%88.6%
Median year built19791979
Seasonal / vacation homes0.0%—

Who lives in Princeton

PeoplePrincetonTypical Minnesota town
Median age39.142.7
Age 65 and over19.1%20.0%
Under 1823.0%—
Bachelor's degree or higher22.4%26.2%
Below the poverty line11.5%6.9%
Veterans9.1%—
Born outside the U.S.0.9%—
Work from home11.1%11.1%
Average commute39.6 min24.5 min
Homes with broadband89.8%90.2%

Weather in Princeton

July highs average 80.9°F and January lows 3.8°F. About 30.7 inches of rain and melted snow fall a year, with 49.3 inches of snow (typical Minnesota town: 47.0 in). Expect about 7 days a year at 90°F or hotter and 170 nights at or below freezing.

Princeton monthly temperatures and precipitation0°10°20°30°40°50°60°70°80°90°32° freezing22°4°Jan27°8°Feb40°21°Mar56°33°Apr69°45°May77°55°Jun81°59°Jul79°57°Aug72°49°Sep57°36°Oct40°24°Nov27°11°DecPrecipitation (in) · snow (in) in blue0.88.60.910.31.78.62.83.83.90.14.24.04.12.92.70.71.66.31.110.8
NOAA 1991–2020 climate normals: average daily high and low by month; precipitation and snowfall in inches. Temperatures from the Santiago 3 E station (10.1 mi away); snowfall estimated from the 4 nearest snow stations, weighted by distance.

Tornadoes, storms and disasters

9 tornadoes have passed within 10 miles of Princeton since 1950, compared with 14 for the typical Minnesota town. 1 rated (E)F2 or stronger. The strongest, an F2, struck on June 13, 1981 about 5.1 miles from the town center. The most recent was on August 26, 2019.

Tornadoes within 10 miles of Princeton by decade01950s01960s21970s21980s11990s02000s42010s02020s
NOAA Storm Events Database, tornado tracks (start to end point) passing within 10 miles of the town center, 1950–2026.

Hail of 1 inch or larger has been reported within 10 miles 45 times; the largest was 4.00 inches on August 27, 1990.

Severe weather in Mille Lacs County since 1996

Storm events in Mille Lacs County since 1996 by typeHail96Heat6Flood4Tornado7Heavy Snow12Flash Flood9Funnel Cloud4Winter Storm74
NOAA Storm Events Database, Mille Lacs County, 1996–2026 (all event types recorded since 1996).

Mille Lacs County has been included in 10 federal disaster or emergency declarations since 1953, most often for flood, drought, hurricane.

DeclaredIncidentDeclaration
July 19, 2023FloodDR-4722: Severe Storms And Flooding
April 7, 2020BiologicalDR-4531: Covid-19 Pandemic
March 13, 2020BiologicalEM-3453: Covid-19
July 28, 2011Severe StormDR-4009: Severe Storms, Flooding, And Tornadoes
September 13, 2005HurricaneEM-3242: Hurricane Katrina Evacuation

Jobs and pay in Mille Lacs County

Mille Lacs County had 9,372 jobs in 2024, paying an average of $47,582 a year. Unemployment was 5.1% in 2023; in Princeton itself the ACS puts it at 3%.

Largest industries in Mille Lacs CountyRetail1,141 jobs · $29,038Hotels & restaurants781 jobs · $19,764Manufacturing723 jobs · $52,445Construction464 jobs · $66,709Professional & technical serv…271 jobs · $84,554Other services242 jobs · $28,590
BLS Quarterly Census of Employment and Wages, 2024, private-sector jobs and average annual pay.
Unemployment rate in Mille Lacs County, 2000–20230%4%8%12%2000200420082012201620202023Mille Lacs 5.1%
Annual average unemployment rate (BLS Local Area Unemployment Statistics via USDA ERS).

Towns near Princeton

Princeton questions

Is Princeton, Minnesota a good place to retire?

On The Town Files lifestyle rankings, Princeton scores better for retirees than 18% of Minnesota towns and quieter than 30%. 19.1% of residents are 65 or older (median age 39.1).

How much does a house cost in Princeton?

The median owner-occupied home in Princeton is valued at $300,900 (Census ACS 2020–2024), against a median household income of $88,056, so homes cost about 3.4 times income. Median rent is — a month.

What is the weather like in Princeton?

July highs average 80.9°F and January lows 3.8°F (NOAA 1991–2020 normals). It gets about 30.7 inches of precipitation a year and 49.3 inches of snow.

Does Princeton get tornadoes?

9 tornadoes have passed within 10 miles of Princeton since 1950 (NOAA Storm Events); the strongest was a F2 on June 13, 1981. The typical Minnesota town has had 14.

How this page is made. Every number comes from public data, matched to Princeton's Census boundary (GEOID 2709552540). Comparisons use the median of Minnesota towns with at least 500 people. Weather comes from the nearest NOAA normals station; storm counts use NOAA tornado tracks within 10 miles of the town center. Data snapshot 2026-11-13.