South Africa
75 cities
Climate overview
South Africa spans multiple climate zones: Mediterranean conditions in the southwestern Cape with winter rainfall, subtropical climates in KwaZulu-Natal with summer rainfall, semi-arid Karoo plateaus, temperate Highveld elevations, and the arid Kalahari fringe. Mean annual temperatures have risen since 1940.
The major 2015–2018 Cape Town Day Zero drought brought a large city close to running out of water, restricting residents to 50 litres per day and exposing extreme vulnerability to multi-year rainfall deficits. The April 2022 KwaZulu-Natal floods killed over 430 people, destroyed critical infrastructure, and demonstrated how intense rainfall systems can overwhelm drainage capacity in rapidly urbanizing coastal zones. The June 2017 Knysna fires destroyed hundreds of homes along the Garden Route. Vredendal reached 48.4°C in October 2015, close to South Africa's national record of 48.8°C set at Vioolsdrif.
Our archive covers 75 South African cities with daily ERA5 reanalysis data going back to 1940. The hottest July afternoons are in Phalaborwa, with average highs around 24.5°C, while Ermelo has the coldest January nights, with average lows near 13.7°C. Comparing the last decade against the 1940–1970 baseline, mean temperatures across these cities have risen by about 1.2°C.
How the climate has shifted in South Africa
Average across 75 cities with full ERA5 coverage: 1940–1970 baseline vs the last decade (2016–2025).
- Annual mean temperature
- 16.9°C→18.1°C
- Days above 30°C per year
- 30 days→51 days+21
- Frost days per year
- 5 days→5 days−0
- Tropical nights (≥20°C) per year
- 10 nights→17 nights+7
Warmest year in the record so far: 2015.
What's unusual right now
From a snapshot of the world's largest cities updated each hour. Today's mean temperature compared with each city's long-term average for the same calendar date (ERA5 climatology, 1940 onward). Last 30 days uses each city's rolling daily-mean vs its monthly average. Not a global ranking.
Cities
- Alberton
- Alexandra
- Athlone
- Benoni
- Bhisho
- Bloemfontein
- Boksburg
- Botshabelo
- Brakpan
- Brits
- Cape Town
- Carletonville
- Centurion
- Diepsloot
- Durban
- East London
- Emalahleni
- eMbalenhle
- Ermelo
- Etwatwa
- Evaton
- George
- Germiston
- Gqeberha
- Hammanskraal
- Ivory Park
- Johannesburg
- Kariega
- Kimberley
- Klerksdorp
- Kroonstad
- Krugersdorp
- KwaDukuza
- Ladysmith
- Mabopane
- Mbombela
- Mdantsane
- Middelburg
- Mokopane
- Mpumalanga
- Mthatha
- Newcastle
- Nigel
- Ntuzuma
- Orkney
- Paarl
- Phalaborwa
- Pietermaritzburg
- Pinetown
- Polokwane
- Potchefstroom
- Pretoria
- Queenstown
- Randburg
- Randfontein
- Richards Bay
- Roodepoort
- Rustenburg
- Sasolburg
- Somaroboro
- Somerset West
- Soshanguve
- Soweto
- Springs
- Standerton
- Thembisa
- Thohoyandou
- Tokoza
- Vanderbijlpark
- Vereeniging
- Virginia
- Vryheid
- Welkom
- Westonaria
- Worcester