Mpumalanga climate — normals and trends

Mpumalanga (South Africa) has a humid subtropical climate (Cfa) under the Köppen-Geiger classification. Its mean annual temperature is 19.0 °C and it receives 861 mm of precipitation per year.

These figures are normals computed over 86 complete calendar years, from 1940 to 2025, using ERA5 reanalysis data from the Copernicus programme.

The warmest month is February (22.6 °C on average) and the coldest is July (14.7 °C). Rainfall peaks in February.

Mpumalanga averages 0 frost days, 35 hot days (≥ 30 °C) and 134 rainy days per year.

Mpumalanga has warmed by +1.8 °C between 1940 and 2025, or +0.21 °C per decade. This trend is statistically significant.

The hottest day of the period reached 40.4 °C (on 4 January 2025) and the coldest 3.1 °C (on 19 July 1995).

Data from ERA5 reanalysis (Copernicus Climate Change Service), redistributed under a CC-BY 4.0 licence. Normals are recomputed whenever the archive is updated.

Climate normals · ERA5

MpumalangaKwaZulu-Natal

coords
-29.81°, 30.64°
period
19402025 · 86 yrs
CfaHumid subtropicalWarmest monthFebruaryColdest monthJulyWettest monthFebruaryDriest monthJune

Mean daily temperature

19.0°C

Average daily high

24.4°C

Average daily low

15.1°C

Annual rainfall

861mm

Sunshine / day

9.1h

Mean relative humidity

77%

Average peak wind

16.8km/h

Seasonal range

7.9°C

Frost days (< 0 °C)

0 d/yr

Hot days (≥ 30 °C)

35 d/yr

Rainy days (≥ 1 mm)

134 d/yr

Annual snowfall

0.0 cm

Average feels-like high

25.2 °C

Average feels-like low

14.9 °C

Average peak gust

35.6 km/h

Tropical nights (≥ 20 °C)

38 d/yr

Solar radiation

15.9 MJ/m²

Has the climate changed?

One stripe per year, 1940 to 2025

+1.8 °C

since 1940

+0.2 °C per decade · r² = 0.61 · p = < 0.001

1940Each stripe is one year, from 1940 (left) to 2025 (right). Blue = colder than the period average, red = warmer.2025

Trend fitted by linear regression (ordinary least squares) on annual means. A trend is shown only when it is statistically significant (p < 0.05).

A climograph overlays rainfall (bars) and temperature (line): the standard reading in climatology, where you can see at a glance whether the warm season is also the dry one.

Records for the period

Hottest day

40.4 °C

4 January 2025

Coldest day

3.1 °C

19 July 1995

Wettest day

174 mm

28 September 1987

Windiest day

46.7 km/h

8 July 1996

Strongest gust

106.6 km/h

8 July 1996

Hottest feels-like

43.4 °C

22 December 2008

Coldest feels-like

-0.4 °C

29 June 1994

Sunniest day

13.9 h

23 December 2022

YearHottest dayColdest dayAnnual meanRainfallHot daysFrost days
202540.4 °C4 January 20255.7 °C29 July 202519.7 °C1,030 mm340
202435.2 °C15 December 20245.6 °C9 July 202420.0 °C787 mm430
202336.4 °C11 November 20237.0 °C27 August 202319.8 °C967 mm550
202233.9 °C3 February 20224.2 °C17 June 202219.5 °C1,292 mm370
202137.5 °C14 October 20215.6 °C15 July 202119.3 °C972 mm360
202037.9 °C25 September 20205.0 °C16 July 202019.7 °C794 mm520
201935.8 °C20 October 20197.0 °C22 July 201919.9 °C885 mm450
201836.2 °C18 December 20185.5 °C4 July 201819.4 °C638 mm440
201735.8 °C31 March 20176.5 °C23 August 201719.4 °C1,012 mm430
201636.1 °C1 April 20166.0 °C10 August 201619.7 °C815 mm580
201537.2 °C24 December 20156.0 °C1 August 201520.2 °C618 mm580
201440.0 °C25 December 20145.4 °C9 July 201419.7 °C604 mm560
201336.7 °C24 January 20135.9 °C11 June 201319.2 °C826 mm390
201236.7 °C25 August 20126.3 °C31 July 201219.5 °C909 mm460
201137.8 °C12 March 20114.7 °C2 July 201119.3 °C861 mm500
201038.2 °C14 September 20106.5 °C19 June 201019.9 °C621 mm580
200937.5 °C2 September 20095.8 °C25 July 200919.1 °C837 mm270
200837.8 °C3 February 20086.7 °C13 July 200819.4 °C629 mm510
200737.4 °C20 February 20074.7 °C24 May 200719.5 °C712 mm560
200635.1 °C14 January 20066.4 °C7 June 200619.1 °C993 mm360
200536.9 °C2 November 20056.4 °C17 June 200519.5 °C805 mm350
200435.7 °C6 October 20046.3 °C19 July 200419.5 °C782 mm470
200335.2 °C19 January 20035.1 °C22 August 200319.6 °C644 mm640
200237.8 °C18 October 20026.5 °C3 June 200219.6 °C779 mm560
200135.7 °C6 March 20018.3 °C24 July 200119.7 °C817 mm370
200035.4 °C7 December 20003.7 °C21 July 200019.1 °C1,006 mm210
199936.5 °C15 October 19997.6 °C19 July 199920.0 °C1,002 mm470
199836.2 °C28 January 19985.8 °C9 June 199819.5 °C693 mm410
199736.7 °C16 December 19976.4 °C14 July 199718.8 °C946 mm350
199636.0 °C17 December 19964.3 °C5 June 199618.5 °C1,043 mm320
199537.6 °C12 October 19953.1 °C19 July 199518.6 °C1,036 mm410
199438.3 °C21 December 19944.0 °C29 June 199419.0 °C614 mm530
199338.9 °C7 February 19936.4 °C5 July 199319.5 °C690 mm430
199237.7 °C11 March 19924.5 °C26 June 199219.6 °C576 mm720
199136.3 °C15 January 19914.8 °C29 July 199119.2 °C803 mm490
199035.1 °C6 January 19904.4 °C25 June 199018.6 °C982 mm240
198933.9 °C17 September 19895.3 °C17 June 198919.0 °C939 mm280
198834.1 °C8 October 19885.2 °C9 June 198818.9 °C969 mm230
198734.0 °C3 November 19874.8 °C22 June 198719.0 °C1,327 mm300
198633.4 °C5 December 19866.3 °C23 June 198619.1 °C861 mm270
198537.8 °C3 January 19857.3 °C19 July 198519.5 °C1,066 mm440
198434.1 °C20 December 19845.4 °C5 July 198418.8 °C854 mm280
198337.0 °C30 September 19835.3 °C7 July 198319.5 °C719 mm480
198234.9 °C20 January 19824.9 °C20 June 198219.1 °C608 mm460
198136.6 °C5 November 19815.7 °C9 July 198118.9 °C603 mm500
198035.7 °C11 November 19805.3 °C4 July 198019.1 °C532 mm500
197935.7 °C15 January 19795.3 °C27 June 197919.1 °C713 mm420
197833.0 °C16 January 19785.4 °C20 June 197818.9 °C872 mm330
197738.6 °C28 December 19775.6 °C28 June 197719.3 °C960 mm380
197635.9 °C19 September 19765.0 °C21 June 197618.6 °C1,063 mm250
197534.4 °C19 October 19754.3 °C25 July 197518.5 °C1,005 mm140
197436.8 °C13 October 19745.9 °C1 August 197419.1 °C951 mm420
197335.5 °C14 December 19735.4 °C13 August 197318.6 °C1,000 mm290
197236.1 °C9 January 19724.7 °C3 August 197218.8 °C876 mm400
197133.8 °C14 October 19714.5 °C18 June 197118.5 °C945 mm230
197035.0 °C4 March 19704.7 °C24 July 197018.9 °C992 mm470
196935.4 °C20 January 19694.7 °C18 June 196918.5 °C918 mm470
196835.5 °C23 December 19684.4 °C20 June 196817.6 °C726 mm240
196734.2 °C29 January 19674.2 °C16 June 196718.9 °C814 mm300
196637.5 °C25 November 19663.7 °C21 July 196619.0 °C737 mm410
196538.0 °C10 February 19655.2 °C22 June 196519.0 °C629 mm640
196436.1 °C23 September 19644.3 °C26 June 196418.8 °C880 mm380
196335.9 °C20 December 19635.8 °C26 June 196318.8 °C855 mm230
196234.1 °C26 August 19625.2 °C15 June 196219.1 °C953 mm400
196136.2 °C24 February 19616.3 °C7 August 196119.0 °C784 mm260
196033.8 °C15 January 19606.2 °C24 June 196018.9 °C1,135 mm390
195935.3 °C5 February 19597.2 °C28 June 195918.9 °C716 mm390
195835.8 °C4 October 19586.0 °C9 August 195818.9 °C854 mm220
195734.1 °C31 December 19575.9 °C4 August 195718.9 °C854 mm250
195634.9 °C21 January 19565.1 °C14 June 195618.3 °C1,029 mm230
195534.3 °C27 December 19554.1 °C8 August 195517.5 °C748 mm160
195433.6 °C15 December 19543.5 °C23 July 195416.4 °C825 mm80
195334.4 °C2 October 19535.8 °C1 August 195318.5 °C826 mm120
195236.5 °C21 October 19528.0 °C16 July 195218.9 °C846 mm130
195135.0 °C6 December 19514.9 °C11 July 195118.2 °C651 mm130
195033.5 °C29 September 19505.7 °C28 July 195018.5 °C1,039 mm120
194934.0 °C8 December 19496.2 °C9 June 194918.0 °C668 mm60
194832.3 °C29 September 19486.0 °C5 August 194817.9 °C796 mm120
194735.7 °C7 November 19474.9 °C11 July 194717.7 °C773 mm90
194633.9 °C19 December 19465.0 °C29 July 194617.9 °C973 mm150
194533.3 °C25 December 19455.0 °C13 June 194518.0 °C821 mm140
194434.8 °C5 October 19444.3 °C10 July 194417.4 °C1,600 mm130
194331.3 °C20 January 19435.9 °C31 August 194317.6 °C892 mm30
194234.3 °C3 January 19424.5 °C23 July 194217.8 °C1,285 mm90
194135.7 °C22 January 19413.7 °C30 June 194118.8 °C692 mm380
194035.0 °C20 November 19405.1 °C15 July 194018.2 °C859 mm140

Normals computed over complete calendar years 1940–2025.

A specific year

Pick a year and see how it compares to normal — warmer, drier or more extreme than usual?

Across the whole year

Average daily high
24.8 °C
+0.4 °C
Hot days (≥ 30 °C)
34 d/yr
-1
Frost days (< 0 °C)
0 d/yr
0
Annual rainfall
1030 mm
+169 mm

Month by month

Highvs. normalPrecipitationvs. normal
Jan28.1 °C+1.4 °C136 mm+28 mm
Feb26.8 °C-0.1 °C129 mm+19 mm
Mar26.9 °C+0.4 °C147 mm+49 mm
Apr23.9 °C-1.0 °C145 mm+75 mm
May24.7 °C+1.1 °C31 mm-4 mm
Jun23.2 °C+1.1 °C26 mm+5 mm
Jul22.3 °C+0.3 °C33 mm+8 mm
Aug24.2 °C+1.3 °C10 mm-25 mm
Sep23.7 °C+0.3 °C88 mm+26 mm
Oct23.8 °C+0.2 °C74 mm-14 mm
Nov24.3 °C-0.2 °C87 mm-14 mm
Dec26.0 °C+0.2 °C125 mm+17 mm

The year's extremes

Hottest day
40.4 °C
4 Jan 2025
Coldest day
5.7 °C
29 Jul 2025
Wettest day
65.8 mm
14 Mar 2025
Windiest day
41.2 km/h
10 Jun 2025
Strongest gust
83.2 km/h
10 Jun 2025
Hottest feels-like
43.4 °C
4 Jan 2025
Coldest feels-like
3.4 °C
29 Jul 2025
Sunniest day
13.9 h
3 Jan 2025

What was the weather like that day?

Your birthday, a wedding, a memorable trip: discover the actual weather for any date since 1940.

Date

Frequently asked questions

What is the climate of Mpumalanga?

Mpumalanga has a humid subtropical climate (Köppen Cfa). Over 1940-2025, the average annual temperature is 19.0 °C and it receives 861 mm of precipitation per year.

What is the hottest day ever recorded in Mpumalanga?

The hottest day measured in Mpumalanga between 1940 and 2025 was 4 January 2025, reaching 40.4 °C.

What is the coldest day in Mpumalanga?

The coldest day measured in Mpumalanga between 1940 and 2025 was 19 July 1995, at 3.1 °C.

Does it snow in Mpumalanga?

Almost never: Mpumalanga sees virtually no snow, with about 0 frost days per year.

Has the climate of Mpumalanga warmed?

Yes: Mpumalanga warmed by +1.8 °C between 1940 and 2025, a statistically significant trend.

What is the wettest day in Mpumalanga?

The wettest day measured in Mpumalanga between 1940 and 2025 was 28 September 1987, with 174 mm of rain in 24 hours.

What was the windiest day in Mpumalanga?

The windiest day measured in Mpumalanga between 1940 and 2025 was 8 July 1996, with winds reaching 46.7 km/h.

What is the warmest month in Mpumalanga?

The warmest month in Mpumalanga is February (22.6 °C on average); the coldest is July (14.7 °C).

How much does it rain in Mpumalanga?

Mpumalanga receives on average 861 mm of precipitation per year, spread over about 134 rainy days.

Is it sunny in Mpumalanga?

Mpumalanga gets on average 9.1 hours of sunshine per day, roughly 3,322 hours per year over 1940-2025.

Are there tropical nights in Mpumalanga?

Yes: Mpumalanga has on average 38 tropical nights per year (temperature staying above 20 °C), over 1940-2025.

What was the most extreme apparent temperature in Mpumalanga?

In Mpumalanga, between 1940 and 2025, the highest apparent temperature reached 43.4 °C on 22 December 2008, and the lowest was -0.4 °C on 29 June 1994.

Compare Mpumalanga with another city

Pick a second city: its normals will be set against these, indicator by indicator.

Nearby cities

The climate around Mpumalanga

Other cities — South Africa