Climate · St. Paul

St. Paul, MN climate

St. Paul has cold, snowy winters and pleasant summers. A typical July afternoon reaches 83°, a January night drops to 7°, and about 40 inches of snow falls in a normal winter.

NOAA 1991-2020 climate normals Updated once a decade
July high
83°
280th hottest of 2,691 Minnesota towns
January low
7°
95th mildest of 2,691 Minnesota towns
Rain + melted snow
33 in
472nd wettest of 2,691 Minnesota towns
Snow a winter
40 in
418th least snowy of 2,448 Minnesota towns
A normal year

What a year in St. Paul feels like

Winter

26° / 10°
Typical high / low · 8 days with an inch or more of snow

Spring

55° / 36°
Typical high / low · Last frost around Apr 25

Summer

80° / 61°
Typical high / low · 8 days reach 90° in a normal year

Fall

57° / 39°
Typical high / low · First frost around Oct 12
Best months to be outsideMayJunJulAugSepHighs of 62–84° and lows of 40° or more
Month by month

St. Paul weather by month

Average highs, lows, rain and snow for every month, from NOAA’s 1991–2020 normals.

MonthHighLowRain + meltSnowWet daysSnow on ground30-yr range
January23°7°0.8" 8.3"720 3° – 28°
February28°11°0.8" 12.3"616 7° – 31°
March41°23°1.6" 4.0"99 23° – 47°
April56°36°2.9" 2.1"102 35° – 54°
May69°48°4.2" 0130 54° – 66°
June78°58°4.6" 0130 65° – 72°
July83°63°4.3" 0110 66° – 78°
August80°61°4.6" 0110 65° – 75°
September72°52°3.4" 0110 55° – 66°
October58°39°2.8" 0.5"100 42° – 54°
November41°26°1.6" 3.0"73 24° – 45°
December28°14°1.1" 10.2"812 7° – 30°
Year55°36°32.6"40.4"11662

“Wet days” have at least 0.01" of rain or melted snow. “Snow on ground” counts days with 1" or more. The 30-year range is the coldest and warmest that month’s average temperature got between 1991 and 2020.

Rain & snow

Rain and snow in St. Paul

St. Paul gets 33 inches of rain and melted snow a year. August is the wettest month and January the driest. Rain or snow falls on about 116 days a year. Snow covers the ground about 62 days of the year.

33 in
Rain + melted snow a year
Less rain than 71% of U.S. towns
40 in
Snow in a normal winter
More snow than 70% of U.S. towns
62 days
With 1"+ of snow on the ground
More than 73% of U.S. towns

Rain + melted snow by month

Inches of water
4.6"

Snowfall by month

Inches of snow
12"
Frost & the growing season

About 169 frost-free days a year

In half of years the last 32° night comes by April 25 and the first one by October 12. That leaves about 169 frost-free days for gardens, shorter than 62% of U.S. towns.

147
nights at or below 32° in a normal year
26
nights below 0° in a normal year
8
days that reach 90° in a normal year

Freezing nights by month

Average nights at or below 32°

90° days by month

Average days at 90° or more
Heating & cooling

Heating and cooling a home in St. Paul

Engineers use “degree days” to estimate how hard a furnace or air conditioner works. In St. Paul, 92% of that work is heating and 8% is cooling, so the furnace matters far more than the air conditioner.

92%heating
7,704 heating degree daysMore heating than 82% of U.S. towns
667 cooling degree daysLess cooling than 63% of U.S. towns

Degree days measure how far each day’s average temperature falls below or rises above 65°, added up over a year. Source: NOAA station normals.

Around St. Paul

St. Paul and its neighbors

St. Paul borders 9 towns with climate data. January nights across them vary by 0.7°. South St. Paul has both the coldest January nights (7°) and the hottest July afternoons (83°). St. Paul’s January low is 7° and its July high 83°.

North St. Paul: January low 7°, July high 82°Little Canada: January low 7°, July high 82°Vadnais Heights: January low 7°, July high 82°White Bear Lake: January low 6°, July high 82°Woodbury: January low 7°, July high 82°Richfield: January low 7°, July high 83°St. Anthony: January low 7°, July high 82°Golden Valley: January low 7°, July high 82°St. Louis Park: January low 7°, July high 82°Brooklyn Center: January low 6°, July high 82°Robbinsdale: January low 7°, July high 82°Fridley: January low 6°, July high 82°Edina: January low 7°, July high 83°Lauderdale: January low 7°, July high 82°Inver Grove Heights: January low 7°, July high 82°Newport: January low 7°, July high 82°Sunfish Lake: January low 7°, July high 82°Eagan: January low 7°, July high 82°Bloomington: January low 7°, July high 83°Shoreview: January low 7°, July high 82°Maplewood: January low 7°, July high 82°Minneapolis: January low 7°, July high 82°Lilydale: January low 7°, July high 83°Falcon Heights: January low 7°, July high 82°South St. Paul: January low 7°, July high 83°West St. Paul: January low 7°, July high 82°Mendota Heights: January low 7°, July high 83°Roseville: January low 7°, July high 82°Mendota: January low 7°, July high 83°St. Paul: January low 7°, July high 83° St. PaulMaplewoodMinneapolisLilydaleFalcon HeightsSouth St. PaulWest St. PaulMendota HeightsRosevilleMendota
ColderMilder6° to 7°
South St. Paul6.6° −0.3°
Minneapolis6.7° −0.2°
Maplewood6.8° −0.1°
Roseville6.8° −0.1°
St. Paul6.9°
Lilydale7.0° +0.1°
Falcon Heights7.0° +0.1°
Mendota Heights7.0° +0.1°
Mendota7.0° +0.1°
West St. Paul7.3° +0.4°

Temperatures and rain come from NOAA’s 5 km grid, so each town gets its own value.

Compared with other towns

How St. Paul compares

Summer heat83° July high
Cooler than 70% of U.S. towns280th hottest of 2,691 Minnesota towns
Winter cold7° January low
Colder than 86% of U.S. towns95th mildest of 2,691 Minnesota towns
Precipitation33" a year
Drier than 71% of U.S. towns472nd wettest of 2,691 Minnesota towns
Snow40" a winter
Snowier than 70% of U.S. towns418th least snowy of 2,448 Minnesota towns
Growing season169 frost-free days
Shorter than 62% of U.S. towns138th longest of 2,672 Minnesota towns

Compared with every U.S. town and city on TownTapestry, each counted once.

Then and now

Warmer than it used to be

+1.5°1991–2020 average vs. the 20th century (1901–2000)

The last 30 years in St. Paul averaged 1.5° warmer than the 1900s. The biggest change is in January (+3.5°). The shift is larger than in 67% of U.S. towns.

❄️ Winter+3.2° now 18°, was 15°
🌷 Spring+1.1° now 45°, was 44°
☀️ Summer+0.4° now 71°, was 70°
🍂 Fall+1.1° now 48°, was 47°

Change by month1991–2020 average minus 1901–2000 average, at St. Paul’s spot on NOAA’s grid

Year to year

How much a month can swing

A normal is an average, and real years wander around it. January swings the most: between 1991 and 2020 its average temperature ranged from 3° to 28°. June is the most reliable, staying within 8°.

Coldest to warmest month in 30 yearsNormal
Questions

Common questions about St. Paul’s climate

What is the coldest month in St. Paul?

January, with a typical high of 23° and a low of 7°.

What is the hottest month in St. Paul?

July, with a typical high of 83° and a low of 63°. About 8 days a year reach 90°.

How much snow does St. Paul get?

About 40 inches in a normal winter, most of it in February.

When is the first frost in St. Paul?

In half of years the first 32° night comes by October 12, and the last spring frost by April 25.

What is the rainiest month in St. Paul?

August, with 4.6 inches of rain and melted snow. The year totals 33 inches.

Temperatures and rainfall come from NOAA’s gridded climate normals for St. Paul itself (about a 3-mile square). Snow, frost dates and day counts come from NOAA’s weather station at U Of Mn St Paul, MN (5 mi, snow) and St Paul 3sw, MN (3 mi, frost, heat and degree days). Normals are 30-year averages, not a forecast. Source: NOAA NCEI U.S. Climate Normals, 1991–2020 and 1901–2000.

The porch light’s on

Where to, neighbor?

You’re in St. Paul, MNView boundary

Nearby

All towns & citiesExplore the map
Loading boundary…

St. Paul is your selected town. The feed includes posts assigned to this town, not a distance radius or ZIP code.

Neighborhoods narrow the feed further, while townwide announcements, events, and issues remain visible.

Boundary source: https://tigerweb.geo.census.gov/arcgis/rest/services/TIGERweb/Places_CouSub_ConCity_SubMCD/MapServer/18 · 2025-01-01