Shanghai climate
Shanghai is warmest in July, with average highs of 31 °C, and coldest in January, when nights average 1.4 °C. June is the wettest month (270 mm) and December the driest (45 mm). Figures are 1991–2020 climate normals.
Across a full year Shanghai averages 1,317 mm of rain, 124 days above 25 °C and 25 days below freezing.
China · population 24,874,500 · 1991–2020 normals
Temperature below 0 °C to above 30 °C Rain band height is that month’s share of the wettest month
- Warmest month July 31 °C
- Coldest month January 1.4 °C
- Driest month December 45 mm
- Wettest month June 270 mm
- Least cloud December 50 % cloud
- Hottest on record August 39 °C
- Coldest on record January -8.5 °C
- Warmest sea August 28 °C
What to expectShanghai through the year
Shanghai has a clear annual cycle: average daily highs run from 8.3 °C in January to 31 °C in July, a swing of 23 °C in mean temperature across the year.
Counted across a normal year, 124 days a year reach 25 °C, 50 of them reach 30 °C, 25 nights drop below freezing. The warmest reading in the 1991–2020 record is 39 °C, in August.
Rain is strongly seasonal. June averages 270 mm against 45 mm in December — 6.0 times as much. Planning around the dry months matters more here than planning around temperature.
The sea off Shanghai is warmest in August at 28 °C and coldest in February at 6.8 °C. Sea temperature lags the air by a month or two, which is why late summer swims warmer than early summer at the same air temperature.
Month by month
| Month | Avg high | Rainfall | Cloud |
|---|---|---|---|
| January | 8.3 °C | 65 mm | 60 % |
| February | 10.0 °C | 63 mm | 62 % |
| March | 13.8 °C | 96 mm | 66 % |
| April | 19.2 °C | 105 mm | 67 % |
| May | 24.0 °C | 128 mm | 68 % |
| June | 26.9 °C | 270 mm | 79 % |
| July | 30.9 °C | 162 mm | 69 % |
| August | 30.7 °C | 158 mm | 60 % |
| September | 26.8 °C | 106 mm | 57 % |
| October | 22.3 °C | 61 mm | 52 % |
| November | 17.0 °C | 58 mm | 53 % |
| December | 10.9 °C | 45 mm | 50 % |
Temperature month by month
| Month | Avg high | Avg low | Mean | Record high | Record low | Days above 25 °C | Days above 30 °C | Days below 0 °C |
|---|---|---|---|---|---|---|---|---|
| January | 8.3 °C | 1.4 °C | 4.8 °C | 21.5 °C | -8.5 °C | 0 | 0 | 11 |
| February | 10.0 °C | 2.8 °C | 6.2 °C | 24.5 °C | -5.2 °C | 0 | 0 | 7 |
| March | 13.8 °C | 6.5 °C | 9.8 °C | 27.2 °C | -3.6 °C | 0 | 0 | 1 |
| April | 19.2 °C | 11.6 °C | 14.9 °C | 31.7 °C | 0.3 °C | 2 | 0 | 0 |
| May | 24.0 °C | 16.8 °C | 20.0 °C | 33.4 °C | 7.1 °C | 11 | 1 | 0 |
| June | 26.9 °C | 21.2 °C | 23.7 °C | 35.9 °C | 14.8 °C | 22 | 5 | 0 |
| July | 30.9 °C | 25.5 °C | 27.8 °C | 38.9 °C | 17.8 °C | 30 | 21 | 0 |
| August | 30.7 °C | 25.5 °C | 27.7 °C | 39.3 °C | 17.8 °C | 30 | 19 | 0 |
| September | 26.8 °C | 21.4 °C | 23.9 °C | 36.0 °C | 12.5 °C | 23 | 4 | 0 |
| October | 22.3 °C | 15.9 °C | 18.8 °C | 30.9 °C | 7.2 °C | 5 | 0 | 0 |
| November | 17.0 °C | 10.4 °C | 13.4 °C | 28.1 °C | -3.3 °C | 0 | 0 | 0 |
| December | 10.9 °C | 3.7 °C | 7.1 °C | 21.2 °C | -7.5 °C | 0 | 0 | 6 |
Rain, sun and wind month by month
| Month | Rainfall | Wet days | Daylight | Cloud cover | Humidity | Wind | Sea temp |
|---|---|---|---|---|---|---|---|
| January | 65 mm | 8 | 10 h/day | 60 % | 75 % | 18 km/h | 7.7 °C |
| February | 63 mm | 9 | 11 h/day | 62 % | 76 % | 19 km/h | 6.8 °C |
| March | 96 mm | 11 | 12 h/day | 66 % | 76 % | 20 km/h | 9.5 °C |
| April | 105 mm | 10 | 13 h/day | 67 % | 76 % | 20 km/h | 13.9 °C |
| May | 128 mm | 10 | 14 h/day | 68 % | 78 % | 19 km/h | 18.8 °C |
| June | 270 mm | 15 | 14 h/day | 79 % | 84 % | 18 km/h | 22.4 °C |
| July | 162 mm | 14 | 14 h/day | 69 % | 83 % | 18 km/h | 26.4 °C |
| August | 158 mm | 15 | 13 h/day | 60 % | 82 % | 19 km/h | 27.8 °C |
| September | 106 mm | 11 | 12 h/day | 57 % | 80 % | 18 km/h | 25.6 °C |
| October | 61 mm | 6 | 11 h/day | 52 % | 76 % | 18 km/h | 21.4 °C |
| November | 58 mm | 7 | 11 h/day | 53 % | 75 % | 18 km/h | 16.9 °C |
| December | 45 mm | 6 | 10 h/day | 50 % | 74 % | 18 km/h | 11.9 °C |
How Shanghai compares
The same four figures for nearby destinations, so the numbers above have something to be read against. Summer high is the warmest month's average high; winter low is the coldest month's average low.
| Destination | Summer high | Winter low | Rain per year | Days above 25 °C |
|---|---|---|---|---|
| Shanghai | 31 °C | 1.4 °C | 1,317 mm | 124 |
| Qibao · China | 31 °C | 1.1 °C | 1,342 mm | 129 |
| Baoshan · China | 31 °C | 1.5 °C | 1,286 mm | 119 |
| Songjiang · China | 32 °C | 0.8 °C | 1,371 mm | 136 |
| Qingpu · China | 32 °C | 0.6 °C | 1,341 mm | 136 |
| Nanqiao · China | 31 °C | 1.8 °C | 1,315 mm | 123 |
| Fengxiang · China | 30 °C | 2.3 °C | 1,310 mm | 114 |
Planning a trip? See the best time to visit Shanghai.
QuestionsCommon questions about Shanghai’s climate
When is the best time to visit Shanghai?
That depends on what you want, so the honest answer is a comparison rather than a single month. May, June, October sit closest to 20 °C on average, July is the warmest month and December the driest. The month-by-month table above has the full picture.
How hot does Shanghai get?
In July, the warmest month, daily highs average 31 °C. About 50 days a year pass 30 °C. The highest value in the 1991–2020 record is 39 °C.
How cold does it get in winter?
Nights average 1.4 °C in January, the coldest month. A normal year has 25 nights below freezing.
Which month is wettest in Shanghai?
June, averaging 270 mm over 15 days with rain. The driest month is December with 45 mm. The year as a whole averages 1,317 mm.
Are these figures a forecast?
No. They are 1991–2020 climate normals: the average of thirty years, which describes what a month is usually like in Shanghai rather than what any particular week will bring. Individual years can differ substantially from the normal.
Data sources and method
- ERA5 / ERA5-Land reanalysis — Copernicus Climate Change Service (C3S), ECMWF. Copernicus Licence
- Open-Meteo — Open-Meteo.com. CC BY 4.0
- NOAA OISST v2.1 — NOAA Physical Sciences Laboratory. Public domain
- GeoNames — GeoNames.org. CC BY 4.0
- Normal period
- 1991–2020
- Data point
- 31.222°, 121.458° (the coordinates the reanalysis values are taken for)
- Dataset version
- era5-1991-2020-scores1.1
- Last processed
Measured values come from ERA5 reanalysis and are reproduced unchanged. Calculated by us: monthly rankings, daylight hours, beach and comfort scores. Full formulas are on the methodology page.
Contains modified Copernicus Climate Change Service information 2026. Neither the European Commission nor ECMWF is responsible for any use that may be made of the Copernicus information or data it contains.