.tsaw-c{font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;color:#1c1f24;background:#f2f3f5;border-radius:14px;margin:0 0 8px;max-width:100%;overflow:hidden;box-sizing:border-box}.tsaw-c *{box-sizing:border-box}.tsaw-c>summary{list-style:none;cursor:pointer;display:block}.tsaw-c>summary::-webkit-details-marker{display:none}.tsaw-c .ic{display:inline-block;width:28px;height:28px;line-height:0;vertical-align:middle}.tsaw-c .ic svg{width:28px;height:28px}.tsaw-sm{padding:9px 10px 8px}.tsaw-hd{display:flex;align-items:center;gap:10px}.tsaw-nm{flex:1;font-size:17px;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin:0!important;text-transform:none}.tsaw-chev{flex:none;width:36px;height:36px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;transition:transform .2s}.tsaw-chev:before{content:'';width:12px;height:12px;border:solid currentColor;border-width:0 3px 3px 0;transform:translateY(-3px) rotate(45deg)}details[open]>summary .tsaw-chev{transform:rotate(180deg)}.tsaw-tw{font-size:12px;color:#6b7280;margin-top:1px}.tsaw-tx{font-size:13.5px;line-height:1.4;margin:5px 0 6px}.tsaw-lb{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;margin-bottom:3px}.tsaw-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.tsaw-d{background:#fff;border-radius:9px;padding:5px 2px 6px;text-align:center;font-size:13px;line-height:1.25}.tsaw-d b{display:inline;font-size:14.5px}.tsaw-dt{display:block;color:#6b7280;font-size:12px;margin-left:0}.tsaw-mo{display:none}.tsaw-d .ic{display:inline-block;width:20px;height:20px;margin:0;vertical-align:-4px}.tsaw-d .ic svg{width:20px;height:20px}.tsaw-dr{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1px 3px;margin-top:2px}.tsaw-d .tsaw-rn{flex-basis:100%;max-width:max-content;margin:1px auto 0}.tsaw-c i,.tsaw-wa{font-style:normal}.tsaw-d .tsaw-hi{display:inline;color:#F84444;font-weight:800;font-size:15.5px}.tsaw-d .tsaw-lo{display:inline;color:#2f6fde;font-weight:600;font-size:13px}.tsaw-rn{display:inline-block;margin:0;padding:1px 6px;border-radius:99px;background:#e3edfd;color:#2f6fde;font-size:12px;font-weight:700}.tsaw-rz{background:#eceef1;color:#9aa0a8}.tsaw-td{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;background:#fff;border-radius:9px;padding:7px 10px;font-size:15px}.tsaw-td .ic{width:26px;height:26px;vertical-align:-7px}.tsaw-td .ic svg{width:26px;height:26px}.tsaw-td .tsaw-hi{font-size:18px;font-weight:800;color:#F84444}.tsaw-td .tsaw-lo{font-size:14.5px;font-weight:600;color:#2f6fde}.tsaw-td .tsaw-rn{margin:0;font-size:13px}.tsaw-td small.w{color:#4b5563;font-size:14px}.tsaw-cta{margin:4px 0 14px!important;text-align:center}.tsaw-cta small{display:block;margin-top:8px;font-size:14.5px;color:#374151}.tsaw-cta a{display:inline-block;background:#F84444;color:#fff!important;text-decoration:none!important;font-family:Inter,system-ui,sans-serif;font-weight:800;font-size:14px;letter-spacing:.02em;padding:10px 18px;border-radius:999px}.tsaw-cta a:after{content:' \2192'}.tsaw-more{display:flex;align-items:center;justify-content:center;gap:8px;margin:7px -10px -8px;padding:8px 10px;background:#e6e8ec;border-top:1px solid #d9dce2;font-size:12.5px;font-weight:700;letter-spacing:.03em;color:#2a5fc4}.tsaw-more b{display:inline-block;background:#F84444;color:#fff;padding:8px 16px;border-radius:999px;font-size:13px;line-height:1.2;box-shadow:0 1px 3px rgba(0,0,0,.18)}.tsaw-more .o:after{content:' \2193'}.tsaw-more .c:after{content:' \2191'}.tsaw-more .c{display:none}.tsaw-more i{display:none}details[open]>summary .tsaw-more .o{display:none}details[open]>summary .tsaw-more .c{display:inline}.tsaw-bd{padding:0 10px 10px}.tsaw-tb{background:#fff;border-radius:10px;padding:8px 6px;margin-top:6px}.tsaw-tt{font-weight:700;font-size:15px!important;line-height:1.3;margin:0 0 6px 3px!important;padding:0!important;text-transform:none!important;letter-spacing:0!important;color:#111}.tsaw-tb table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12.5px!important;margin:0;line-height:1.25}.tsaw-tb th{text-align:left;color:#6b7280;font-weight:600;font-size:12px;letter-spacing:0;text-transform:none;padding:5px 2px 5px 5px!important;border:0!important;border-bottom:1px solid #e5e7eb!important;white-space:nowrap;background:transparent!important}.tsaw-tb th:last-child{white-space:normal;line-height:1.15}.tsaw-tb td{padding:6px 2px 6px 5px!important;border:0!important;border-bottom:1px solid #e5e7eb!important;vertical-align:middle;background:transparent!important;overflow-wrap:break-word;white-space:nowrap;font-size:inherit!important}.tsaw-tb td:nth-child(2){white-space:normal}.tsaw-tb td:first-child{white-space:normal;overflow-wrap:anywhere;line-height:1.2}.tsaw-tb tr:last-child td{border-bottom:0!important}.tsaw-tb th:nth-child(1){width:33%}.tsaw-tb th:nth-child(2){width:18%}.tsaw-tb th:nth-child(3),.tsaw-tb th:nth-child(4){width:8.5%}.tsaw-tb th:nth-child(5){width:10.5%}.tsaw-tb td:nth-child(n+3),.tsaw-tb th:nth-child(n+3){padding-left:4px!important;padding-right:1px!important}.tsaw-tb td:nth-child(3),.tsaw-tb td:nth-child(4){padding-left:2px!important;padding-right:0!important}.tsaw-tb td:nth-child(6){letter-spacing:-.5px;white-space:normal}.tsaw-tb td b.ln{font-size:12px;letter-spacing:-.6px}.tsaw-tb td .ic{display:block;width:22px;height:22px}.tsaw-tb td .ic svg{width:22px;height:22px}.tsaw-tb td .dd{display:block;font-size:12px}.tsaw-tb small{font-size:12px}.tsaw-wa{display:inline-block;width:13px;height:13px;vertical-align:-2px;margin-right:2px;color:#2f6fde;line-height:0}.tsaw-wa svg{width:13px;height:13px;display:block}.tsaw-tb td.tsaw-lo{color:#2f6fde;font-weight:600}.tsaw-tb td.tsaw-hi{color:#F84444;font-weight:800;font-size:13px}.tsaw-tide th:nth-child(1){width:26%}.tsaw-tide th:nth-child(2),.tsaw-tide th:nth-child(3){width:37%}.tsaw-band{display:flex;align-items:center;gap:10px;padding:6px 12px;font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em}.tsaw-band b{flex:1}.tsaw-y .tsaw-band{background:#FFD23F;color:#3a2d00}.tsaw-o .tsaw-band{background:#F07C1E;color:#fff}.tsaw-r .tsaw-band{background:#D7263D;color:#fff}.tsaw-a .tsaw-band{background:#3b4250;color:#fff}.tsaw-band .tsaw-chev{background:rgba(255,255,255,.55);width:30px;height:30px}.tsaw-ev{padding:8px 12px 9px}.tsaw-et{font-size:15px;font-weight:800;letter-spacing:-.01em;margin-bottom:3px}.tsaw-mt{display:flex;gap:8px;font-size:13px;line-height:1.35;margin-top:2px}.tsaw-mt b{flex:none;width:46px;color:#6b7280;font-size:12px;font-weight:700;text-transform:uppercase;padding-top:2px}.tsaw-in{margin:0 12px 12px;background:#fff;border-radius:10px;padding:9px 11px;font-size:13px;line-height:1.45}.tsaw-in ul{margin:.3em 0 .3em 1.1em;padding:0}.tsaw-m{display:flex;align-items:center;gap:12px;padding:10px 12px}.tsaw-m svg{flex:none;width:48px;height:48px}.tsaw-mn{font-size:16px;font-weight:800}.tsaw-mk{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280}.tsaw-mp{display:inline-block;margin:4px 0 0;padding:2px 8px;border-radius:99px;background:#fff;font-size:12px;font-weight:700;color:#6b7280}@media(min-width:600px){.tsaw-sm{padding:11px 14px 10px}.tsaw-bd{padding:0 14px 12px}.tsaw-nm{font-size:19px}.tsaw-row{gap:6px}.tsaw-d{padding:5px 4px 6px;font-size:13px}.tsaw-d b{font-size:14.5px}.tsaw-d .tsaw-hi{font-size:16px}.tsaw-d .tsaw-lo{font-size:13.5px}.tsaw-mo{display:inline}.tsaw-dt{display:inline;font-size:12.5px;margin-left:3px}.tsaw-d .ic{width:20px;height:20px}.tsaw-d .ic svg{width:20px;height:20px}.tsaw-d .tsaw-rn{flex-basis:auto;margin:0 0 0 2px}.tsaw-tb{padding:10px}.tsaw-tb table{font-size:14px!important}.tsaw-tb th{font-size:12px}.tsaw-tb th:nth-child(1){width:20%}.tsaw-tb th:nth-child(2){width:30%}.tsaw-tb td b.ln{font-size:inherit;letter-spacing:0}.tsaw-tb td .dd{display:inline;margin-right:4px}.tsaw-tb td .ic{display:inline-block;margin-right:4px}.tsaw-band,.tsaw-ev{padding-left:14px;padding-right:14px}.tsaw-in{margin:0 14px 12px}.tsaw-m{padding:10px 14px}.tsaw-more{margin:8px -14px -10px;padding:8px 14px;font-size:12px}}(function(){if(window.pgTsaWxGa)return;window.pgTsaWxGa=1;document.addEventListener('click',function(e){var s=e.target.closest?e.target.closest('summary'):null;if(!s)return;var d=s.parentNode;if(!d)return;if(d.tagName!='DETAILS')return;var o=d.open;var q=['h3','.tsaw-et','b'],h=null;for(var i=0;i!=q.length;i++){h=s.querySelector(q[i]);if(h)break;}var t=((h||s).textContent||'').replace(/\s+/g,' ').trim().slice(0,90);var cl=String(d.className||'').split(' ');var k=cl[1]||cl[0]||'details';var ev='click_weather_PubgentIQ',R=[['tsaw-w','click_weather_alert_PubgentIQ'],['tsaw-pv','click_weather_province_PubgentIQ']],C=[['tsaw-pv','click_c_weather_province_PubgentIQ']];if(o){ev='';R=C;}for(var j=0;j!=R.length;j++){if(d.closest('.'+R[j][0])){ev=R[j][1];break;}}if(!ev)return;window.dataLayer=window.dataLayer||[];(window.gtag||function(){dataLayer.push(arguments)})('event',ev,{send_to:'G-4YB9PN6FWW',weather_section:t,section_type:k,page_path:location.pathname});},true);})();
A heat wave is expected in the Western Bushveld of Limpopo, and fire danger is extremely high over most of North West, the southern Northern Cape and the Central Karoo, with a veld fire warning for Rustenburg, De Aar and Beaufort West from 07:00 to 18:59. Richards Bay is the hottest at 36°C, while Cape Town, Stellenbosch and Paarl have a 60% chance of slight rain and the rest of the country stays largely dry.
Visit saltysenoritaaz.com for more information.
Weather warnings for Wednesday 21 October
SAWS has 2 weather warnings in force for Wednesday, the highest warning level 10 for veld fire conditions. Tap a warning to see the areas and what to do.
Red level 10Veld Fire Conditions
WhereBeaufort West, Laingsburg, De Aar, Schweizer-Reneke + 20 more
WhenWed 07:00 to 18:59
Areas: Beaufort West, Laingsburg, De Aar, Schweizer-Reneke, Rustenburg, Lichtenburg, Frankfort, Pilanesberg, Victoria West, Koster, Tosca, Zeerust, Ottosdal, Noupoort, Ventersdorp, Wolmaranstad, Vryburg, Klerksdorp, Potchefstroom, VanWyksvlei, Hoedspruit, Bela-Bela, Nokaneng, Fetakgomo/Greater Tubatse – Burgersfort / Tubatse/.
- Conditions are such that the FDI index is above 75. Under these conditions fires may develop and spread rapidly resulting in damage to property and possible loss of human and/or animal life.
What to do: All personnel and equipment should be removed from the field. Fire teams, labour and equipment are to be placed on full stand-by. At first sign of smoke, every possible measure should be taken in order to bring the fire under control in the shortest possible time. All available aircraft are to be called for without delay.
Warning AdvisoryWeather Advisory
WhereMokopane, Mogoto, Thabazimbi, Dendron + 22 more
Whenvalid until 23:59 on 21 October
Areas: Mokopane, Mogoto, Thabazimbi, Dendron, Thohoyandou, Ba-Phalaborwa, Tzaneen, Hoedspruit, Tshilamba, Bela-Bela, Nokaneng, Apel, Jane Furse, Musina, Fetakgomo/Greater Tubatse – Burgersfort / Tubatse/, Groblersdal, Giyani, Makhado, Polokwane, Alldays, Mookgopong, Lephalale, Moletji, Mooketsi, Vaalwater, Marble Hall.
- When the temperature is extremely high, humans’ ability to cool their bodies through sweating is reduced. This can be a real threat that may lead to hyperthermia. In an extremely hot environment, the most serious health and safety concern is heat stroke. Heat stroke can be fatal if medical attention is not available immediately.
What to do: Avoid prolonged direct exposure to the sun as far as possible and drink plenty of water. Limit strenuous outdoor activities, find shade and stay hydrated. Never leave kids in the car unattended. Make sure your animals have access to enough water. Check on vulnerable individuals, including the elderly and young children.
SAWS advisoryFire Danger Warnings
What1 item, tap to read
- Extremely high fire danger conditions are expectedin places over the Central Karoo of the Western Cape, most parts of the North-West, southern parts of the Northern Cape, the Mafube local municipality of the Free State, as well as in places over southern Limpopo, and north-western Mpumalanga.
SAWS advisoryAdvisories
What1 item, tap to read
- A heat wave with persistently high temperatures is expected in places over the Western Bushveld of Limpopo until Friday (23/10/2026).
Moon tonightWaxing Gibbous78% lit
The moon tonight is a waxing gibbous, about 78% lit, and the next full moon is on Monday 26 October.
Weather today by province, Wednesday 21 October
View Weather Forecast for TomorrowView the weather tomorrow on the 7-Day Weather Forecast
Each province lists its main towns with today’s sky, low and high, rain chance and wind; every province starts closed, tap one to open it. Tide times are inside Western Cape, Northern Cape, Eastern Cape and KwaZulu-Natal. Today Johannesburg peaks at 28°C.
Gauteng
Johannesburg, Pretoria, Soweto, VereenigingA dry day, with Pretoria the warmest at 31°C under partly cloudy skies after 12°C at dawn. Johannesburg, Soweto and Vereeniging reach 28°C under mostly clear skies from cold starts of 6°C to 7°C.Johannesburg today
Mostly clear28°7°0%
W 10 km/h
Tap for cities and townsTap to close GautengTowns todayTownWeatherLoHiRainWind km/h
JohannesburgMostly clear7°28°0%
W 10
PretoriaPartly cloudy12°31°0%
W 10
SowetoMostly clear6°28°0%
W 10
VereenigingMostly clear7°28°0%
WSW 10
Western Cape
Cape Town, Stellenbosch, Paarl, George · tidesExpect slight rain in Cape Town, Stellenbosch and Paarl, a 60% chance, with highs of 19°C to 21°C. George has a 30% chance and 23°C. Beaufort West and Laingsburg face a veld fire warning from 07:00 to 18:59.Cape Town today
Slight rain19°14°60%
NW 15 km/h
Tap for cities and townsTap to close Western CapeTowns todayTownWeatherLoHiRainWind km/h
Cape TownSlight rain14°19°60%
NW 15
StellenboschSlight rain10°20°60%
NNW 15
PaarlSlight rain11°21°60%
NNW 10
GeorgeSlight rain12°23°30%
SW 15Tides: Cape TownDayLow tideHigh tideWed 21 Oct05:54, 18:3512:14
Mpumalanga and Limpopo next today: Mbombela reaches 30°C and Polokwane reaches 28°C.
Mpumalanga
Mbombela, eMalahleni, ErmeloFog in Mbombela gives way to 30°C, while eMalahleni reaches 31°C and Ermelo 26°C after a chilly 4°C start. Fire danger is extremely high in the north-west, with no rain.Mbombela today
Fog30°18°0%
NNE 5 km/h
Tap for cities and townsTap to close MpumalangaTowns todayTownWeatherLoHiRainWind km/h
MbombelaFog18°30°0%
NNE 5
eMalahleniPartly cloudy6°31°0%
W 10
ErmeloPartly cloudy4°26°0%
WNW 10
Limpopo
Polokwane, Tzaneen, Thohoyandou, MusinaA weather advisory covers Mokopane, Thabazimbi, Thohoyandou and Ba-Phalaborwa until 23:59, with a heat wave in the Western Bushveld until Friday. Musina reaches 35°C, Thohoyandou 34°C and Polokwane 28°C under cloud.Polokwane today
Cloudy28°18°0%
W 10 km/h
Tap for cities and townsTap to close LimpopoTowns todayTownWeatherLoHiRainWind km/h
PolokwaneCloudy18°28°0%
W 10
TzaneenCloudy18°30°0%
WNW 5
ThohoyandouCloudy19°34°0%
NNE 5
MusinaCloudy21°35°0%
ENE 5
North West and Free State follow today: Mahikeng reaches 32°C and Bloemfontein reaches 25°C.
North West
Mahikeng, Rustenburg, Potchefstroom, KlerksdorpA veld fire warning covers Rustenburg, Lichtenburg and Schweizer-Reneke from 07:00 to 18:59. Rustenburg reaches 33°C, Mahikeng 32°C, Potchefstroom and Klerksdorp 30°C, all dry and mostly clear.Mahikeng today
Mostly clear32°12°0%
WSW 10 km/h
Tap for cities and townsTap to close North WestTowns todayTownWeatherLoHiRainWind km/h
MahikengMostly clear12°32°0%
WSW 10
RustenburgMostly clear13°33°0%
W 10
PotchefstroomMostly clear9°30°0%
WSW 15
KlerksdorpMostly clear9°30°0%
WSW 15
Free State
Bloemfontein, Bethlehem, KroonstadDry and mostly clear, with Kroonstad at 29°C, Bethlehem 26°C and Bloemfontein 25°C after cool starts of 6°C to 9°C. Fire danger is extremely high in Mafube.Bloemfontein today
Mostly clear25°7°0%
W 15 km/h
Tap for cities and townsTap to close Free StateTowns todayTownWeatherLoHiRainWind km/h
BloemfonteinMostly clear7°25°0%
W 15
BethlehemMostly clear6°26°0%
WSW 15
KroonstadMostly clear9°29°0%
WSW 10
Northern Cape, Eastern Cape and KwaZulu-Natal close the list today: Kimberley reaches 28°C, Gqeberha reaches 23°C and Durban reaches 26°C.
Northern Cape
Kimberley, Upington, Springbok, De Aar · tidesDe Aar is under a veld fire warning from 07:00 to 18:59 and reaches 25°C. Upington is the warmest at 31°C, Kimberley 28°C and Springbok 21°C under high cloud, with no rain.Kimberley today
Mostly clear28°9°0%
WSW 15 km/h
Tap for cities and townsTap to close Northern CapeTowns todayTownWeatherLoHiRainWind km/h
KimberleyMostly clear9°28°0%
WSW 15
UpingtonMostly clear12°31°0%
S 10
SpringbokHigh cloud10°21°0%
WSW 15
De AarPartly cloudy10°25°0%
W 20Tides: Port Nolloth (modelled)DayLow tideHigh tideWed 21 Oct05:17, 18:0011:37
Eastern Cape
Gqeberha, East London, Mthatha, Queenstown · tidesA dry day, with Mthatha the warmest at 28°C after a 7°C start. East London and Queenstown reach 25°C and Gqeberha 23°C under cloud.Gqeberha today
Cloudy23°13°0%
SW 20 km/h
Tap for cities and townsTap to close Eastern CapeTowns todayTownWeatherLoHiRainWind km/h
GqeberhaCloudy13°23°0%
SW 20
East LondonPartly cloudy13°25°0%
WSW 15
MthathaPartly cloudy7°28°0%
SW 10
QueenstownPartly cloudy9°25°0%
W 15Tides: GqeberhaDayLow tideHigh tideWed 21 Oct06:29, 19:1300:22, 12:48Tides: East LondonDayLow tideHigh tideWed 21 Oct06:34, 19:1500:32, 12:57
KwaZulu-Natal
Durban, Pietermaritzburg, Richards Bay, Newcastle · tidesNo rain is expected, with Richards Bay topping the country at 36°C, Newcastle 31°C, Pietermaritzburg 29°C and Durban 26°C after a mild 17°C start.Durban today
Partly cloudy26°17°0%
S 10 km/h
Tap for cities and townsTap to close KwaZulu-NatalTowns todayTownWeatherLoHiRainWind km/h
DurbanPartly cloudy17°26°0%
S 10
PietermaritzburgCloudy10°29°0%
ESE 10
Richards BayPartly cloudy18°36°0%
N 10
NewcastleCloudy10°31°0%
W 15Tides: DurbanDayLow tideHigh tideWed 21 Oct06:36, 19:2000:35, 13:01
View Weather Forecast for TomorrowView the weather tomorrow on the 7-Day Weather Forecast
Forecast data: the South African Weather Service and other third-party sources and providers, brought together with the latest AI tools. We take great care to get every figure right, but mistakes are possible.
Read full story at source