Saint Petersburg, Russia Climate & Monthly Averages
The climate of Saint Petersburg
Seasons are the whole story in Saint Petersburg. The gap between an average July and an average January is 24°C - warm summers and cold, often snowy winters - which in practice means 71°F (22°C) afternoons at one end of the calendar and 26°F (-3°C) at the other.
Climate quick facts
- Hottest month: July - highs near 71°F (22°C)
- Coldest month: January - highs near 26°F (-3°C)
- Decade extremes (2015-2024): 94°F (34°C) high · -25°F (-31°C) low
- Wettest month: August (14 rainy days) · Sunniest: June (14.6 h sun/day)
- Climate type: humid continental
- Annual swing: 24°C between the average warmest and coolest month · day to night: 6°C
- Snow: about 39 days a year
- Months with freezing average lows: 6
- Average humidity: 80%
Temperatures through the year
July is the warm end of the year, averaging 71°F (22°C) by day and 59°F (15°C) overnight. January is the coolest month, with highs of 26°F (-3°C) and lows near 18°F (-8°C). August is the wettest month at 4.3 inches (110 mm) over 14 days; March is the driest.
Rain, sun and snow
Days and nights are about 6°C apart on average - narrower than all but 8% of the 3496 cities in our dataset. Between the average July and the average January lie 24°C, a wider spread than roughly 77% of the cities we track. Sunshine averages 7.2 hours a day over the year - duller than all but 3% of the 3496 cities in our dataset, peaking in June at 14.6 hours. Snow falls on roughly 39 days a year, mostly October through April. The gridded 2015-2024 daily record for this location tops out at 94°F (34°C) and bottoms at -25°F (-31°C) - decade extremes, not all-time station records.
How Saint Petersburg compares
- Saint Petersburg averages 43°F (6°C) across the year - cooler than all but 3% of the 3496 cities we track.
Ranked against every city in our dataset, each measured on the same ten-year window.
Monthly climate table
| Month | High | Low | Rain days | Precipitation | Sunshine | Daylight | Wet-day chance | Humidity |
|---|---|---|---|---|---|---|---|---|
| January | 26° | 18° | 14 | 1.9 in | 1.3 h/day | 6.7 h | 44% | 87% |
| February | 29° | 20° | 12 | 1.8 in | 2.9 h/day | 9.0 h | 43% | 86% |
| March | 36° | 24° | 10 | 1.6 in | 6.6 h/day | 11.6 h | 32% | 81% |
| April | 46° | 32° | 12 | 2.1 in | 9.4 h/day | 14.5 h | 39% | 76% |
| May | 59° | 44° | 10 | 1.8 in | 12.8 h/day | 17.1 h | 33% | 68% |
| June | 69° | 55° | 10 | 2.2 in | 14.6 h/day | 18.8 h | 35% | 68% |
| July | 71° | 59° | 16 | 3.7 in | 12.8 h/day | 18.1 h | 53% | 75% |
| August | 69° | 57° | 14 | 4.3 in | 11.1 h/day | 15.6 h | 46% | 78% |
| September | 60° | 50° | 12 | 2.5 in | 8.1 h/day | 12.7 h | 41% | 81% |
| October | 47° | 39° | 14 | 2.8 in | 4.8 h/day | 10.0 h | 45% | 85% |
| November | 37° | 31° | 13 | 2.2 in | 1.6 h/day | 7.4 h | 43% | 88% |
| December | 31° | 24° | 15 | 2.2 in | 0.9 h/day | 5.9 h | 49% | 88% |
Saint Petersburg month by month
Average high and low for each month, with the bar showing where it sits in Saint Petersburg's year (left is the coldest night, right is the warmest afternoon).
January
- Rain
- 14 days
- Sunshine
- 1.3 h
- Daylight
- 6.7 h
- Snow
- 10 days
February
- Rain
- 12 days
- Sunshine
- 2.9 h
- Daylight
- 9.0 h
- Snow
- 8 days
March
- Rain
- 10 days
- Sunshine
- 6.6 h
- Daylight
- 11.6 h
- Snow
- 4 days
April
- Rain
- 12 days
- Sunshine
- 9.4 h
- Daylight
- 14.5 h
- Snow
- 3 days
May
- Rain
- 10 days
- Sunshine
- 12.8 h
- Daylight
- 17.1 h
June
- Rain
- 10 days
- Sunshine
- 14.6 h
- Daylight
- 18.8 h
July
- Rain
- 16 days
- Sunshine
- 12.8 h
- Daylight
- 18.1 h
August
- Rain
- 14 days
- Sunshine
- 11.1 h
- Daylight
- 15.6 h
September
- Rain
- 12 days
- Sunshine
- 8.1 h
- Daylight
- 12.7 h
October
- Rain
- 14 days
- Sunshine
- 4.8 h
- Daylight
- 10.0 h
November
- Rain
- 13 days
- Sunshine
- 1.6 h
- Daylight
- 7.4 h
- Snow
- 5 days
December
- Rain
- 15 days
- Sunshine
- 0.9 h
- Daylight
- 5.9 h
- Snow
- 8 days
Warmer places to go, by month: January · February · March · April · May · June · July · August · September · October · November · December
Seasons in Saint Petersburg
Spring (March through May)
Spring in Saint Petersburg stays firmly cold, with daytime highs averaging 47°F (8°C) and nights around 33°F (1°C); rain falls on around 32 of the 90 days, plus about 8 snowy days.
Summer (June through August)
Summer in Saint Petersburg is pleasantly warm, with daytime highs averaging 70°F (21°C) and nights around 57°F (14°C); rain falls on around 41 of the 90 days. Daylight is generous - around 12.8 hours of sun a day.
Fall (September through November)
Through fall, Saint Petersburg is brisk and cold: 48°F (9°C) by day, 40°F (4°C) after dark, and rain falls on around 39 of the 90 days, plus about 5 snowy days.
Winter (December through February)
Winter brings deep cold here - highs near 29°F (-2°C), nights near 21°F (-6°C), and rain falls on around 41 of the 90 days, plus about 27 snowy days. Sun is scarce, averaging 1.7 hours a day. Wind sharpens cold like this considerably; pair the forecast winds with the wind speed converter to judge exposed conditions.
Climate questions, answered
What should I pack for Saint Petersburg?
Does it freeze in Saint Petersburg?
How does Saint Petersburg compare to other cities?
How cold does Saint Petersburg get in winter?
How many rainy days does Saint Petersburg get in a year?
Best time to visit Saint Petersburg
May to June and August to September is the sweet spot for Saint Petersburg - these are the warmest and brightest weeks of the year. Expect 64°F (18°C) in the afternoon and around 12 days of rain in a typical month of it. For the same question asked the other way round, see where else is warm in May.
Pack for Saint Petersburg with a heavy insulated coat, hat and gloves for winter and proper waterproofs rather than an umbrella - wet days are the norm here. Even in July, lows of 59°F (15°C) make an extra layer worth the space.
Saint Petersburg temperature records (2015-2024)
Derived from ERA5 reanalysis data, 2015–2024. Official station records may differ. Need the precipitation in other units? The mm-to-inches rainfall converter handles it.