Checked
St. Charles, MN
City in Winona County, Minnesota. ZIP codes: 55972.
Population
4,037
Land area
3.8sq mi
People per sq mi
1,060
ZIP codes
1
St. Charles and its ZIP codes
St. Charles at a glance
- St. Charles is about 15 times as dense as Minnesota as a whole.
- It is the 178th most populous of 914 cities and towns in Minnesota.
- Households here earn a median of $96,200 a year, 8% more than the Minnesota figure of $89,062.
- A typical owner-occupied home is valued at $256,600 (22% below Minnesota) and median rent is $1,001 a month.
Local data for St. Charles, MN
Counts from official public data
Housing and community stats
St. Charles, MN, American Community Survey 2020-2024
Median household income
$96,200
Poverty rate
3.2%
Median home value
$256,600
Median rent
$1,001/mo
Homeownership
80.8%
Bachelor's or higher
33.3%
Median age
39.5
Average commute
23.8 min
Largest reported origins and ancestries: German Americans (1,570), Norwegian Americans (608), Irish Americans (402).
Economy and federal money
Jobs, pay, income and spending are for Winona County. PPP loans are for St. Charles.
Unemployment rate
3.9%
Sep 2026, +1.0 pts in a year
Average annual pay
$54,330
23,933 jobs, 2025
Income per person
$60,968
BEA, 2024
Federal spending
$325M
FY 2026, $6,548 per person
PPP loans
$6.3M
217 loans, 902 jobs reported
How people get to work
St. Charles, MN, workers 16 and older. American Community Survey 5-year estimates
- Drove alone75.4%
- Carpooled5.2%
- Public transit0.0%
- Walked2.1%
- Bicycle0.0%
- Taxi, ride-hailing, motorcycle or other0.0%
- Worked from home17.3%
Average one-way commute: 23.8 minutes for people who do not work from home.
Environment and hazard risk
St. Charles, MN, from FEMA, NOAA and EPA
Natural hazard risk
Relatively Low
Top: landslide
Storm events since 1996
701
Countywide, mostly hail
Flood insurance policies
113
0.5% of homes, county
July high / Jan low
83° / 8°F
35.4 inches of rain a year
Hazards, floods and storm historyCheck a flood zone3 historic places
Health statistics
Share of adults in St. Charles, MN, CDC PLACES estimates
Obesity
34.1%
U.S. 33.3% +0.8 pts
Diabetes
9.4%
U.S. 12.1% -2.7 pts
Smoking
13.4%
U.S. 12.8% +0.6 pts
Uninsured (18-64)
8.4%
U.S. 11.1% -2.7 pts
ZIP codes in St. Charles
1 in or overlapping St. Charles. Population shown
Cities near St. Charles
| Name | Distance | Land area (sq mi) |
|---|---|---|
| DoverCity | 3.5 mi | 1 |
| UticaCity | 5.8 mi | 1 |
| EyotaCity | 8.3 mi | 1.7 |
| ElbaCity | 8.7 mi | 1.9 |
| AlturaCity | 8.9 mi | 3 |
| LewistonCity | 9.8 mi | 1.3 |
| ChatfieldCity | 10 mi | 2.6 |
| MarionCensus-designated place | 14 mi | 1.9 |
| ElginCity | 15 mi | 0.9 |
| PlainviewCity | 15 mi | 2.1 |
| RollingstoneCity | 15 mi | 0.4 |
| StocktonCity | 15 mi | 1.7 |
| FountainCity | 16 mi | 1 |
| Rushford VillageCity | 17 mi | 33.5 |
| PetersonCity | 17 mi | 0.5 |
| WhalanCity | 18 mi | 0.4 |
Frequently asked questions
- What county is St. Charles, MN in?
- St. Charles is in Winona County, Minnesota.
- What ZIP codes are in St. Charles, MN?
- ZIP codes in or overlapping St. Charles include 55972.
- What is the population of St. Charles, MN?
- About 4,037 people live in St. Charles, based on American Community Survey 5-year estimates.
- What cities are near St. Charles?
- Nearby places include Dover (3.5 mi), Utica (5.8 mi), Eyota (8.3 mi), Elba (8.7 mi), Altura (8.9 mi).
Source: U.S. Census Bureau (TIGER/Line boundaries, American Community Survey) · Data as of 12/31/2023