MunicipalitiesNNP 64ANC 59DP 2darker = bigger win
1999 council boundaries: the IEC's 1999 voting districts dissolved by council (approximate; gaps where a VD has no shape)
No majority 22 of 42 seats needed
Largest party: ANC, 18 seats
Most provincial votes: ANC 42.1% 9.1 pts · 1994: 33.0%
Turnout85.9%
Voters on the roll1.86M
Provincial ballot ? · 1 587 978 valid votes
ANCAfrican National Congress668 10642.1%- NNPNew National Party609 61238.4%
DPDemocratic Party189 18311.9%
ACDPAfrican Christian Democratic Party44 3232.8%
UDMUnited Democratic Movement38 0712.4%- AMPAfrica Moral Party9 5130.6%
PACPan Africanist Congress of Azania7 7080.5%- VFFFVryheidsfront \ Freedom Front6 3940.4%
FAFederal Alliance4 1530.3%
IFPInkatha Freedom Party2 8950.2%
AEBAfrikaner Eenheidsbeweging2 8540.2%- GPGPThe Government By the People Green Party2 4530.2%
NACOPANational Coalition Party/Nasionale Koalisie Party1 1260.1%
PLPPeople's Liberation Party9150.1%
WIVLWorkers International Vanguard League6720.0%
Provincial legislature seats · 42 ?
- African National Congress18
- New National Party17
- Democratic Party5
- United Democratic Movement1
- African Christian Democratic Party1
Municipalities · 127
- Albertinia TLCANC 47.6%
- Ashton TLCANC 67.0%
- Aurora TLCNNP 73.5%
- Barrydale TLCANC 52.9%
- Beaufort West TLCANC 57.3%
- Beaufort West TRCNNP 51.8%
- Belvidere Estate TLCDP 68.4%
- Bitterfontein/ Nuwerus TLCNNP 48.5%
- Blaauwberg MLCNNP 46.0%
- Bo-Langkloof TRCNNP 46.6%
- Bonnievale TLCANC 50.6%
- Botrivier TLCANC 50.5%
- Bredasdorp TLCNNP 51.1%
- Bredasdorp TRCNNP 47.0%
- Brenton TLCDP 47.9%
- Caledon TRCNNP 40.9%
- Caledon/Myddleton TLCNNP 47.9%
- Calitzdorp TLCNNP 41.2%
- Calitzdorp TRCANC 49.9%
- Central Cape Town MLCANC 48.6%
- Ceres TLCANC 58.0%
- Citrusdal TLCANC 46.5%
- Clanwilliam TLCANC 66.0%
- Clanwilliam TRCANC 47.9%
- Darling TLCNNP 57.3%
- De Doorns TLCANC 68.6%
- De Rust/Blomnek TLCANC 50.1%
- Doringbaai/Strandfontein TLCANC 73.5%
- Dysseldorp TLCANC 53.3%
- Ebenhaezer TLCANC 67.5%
- Franschoek TLCANC 57.6%
- Friemersheim TLCNNP 50.5%
- Gansbaai TLCNNP 54.9%
- Genadendal TLCNNP 54.1%
- George TLCANC 49.1%
- Gouritz TLCNNP 76.5%
- Graafwater TLCANC 48.4%
- Grabouw TLCANC 50.3%
- Greater Hermanus TLCNNP 42.7%
- Greater Plettenberg Bay TLCANC 57.1%
- Greyton TLCNNP 48.0%
- Groot Brakrivier TLCNNP 45.3%
- Haarlem TLCNNP 55.3%
- Hangklip/ Kleinmond TLCNNP 64.8%
- Heidelberg TLCANC 50.9%
- Helderberg MLCNNP 47.7%
- Herbertsdale TLCNNP 48.3%
- Hermanus TRCNNP 47.6%
- Hopefield TLCNNP 40.3%
- Klawer TLCNNP 52.7%
- Knoetzie TLCDP 60.7%
- Knysna TLCANC 60.0%
- Koringberg TLCNNP 51.6%
- Ladismith TLCANC 47.1%
- Ladismith TRCANC 55.2%
- Laingsburg TLCANC 56.0%
- Laingsburg TRCNNP 43.2%
- Lamberts Bay TLCANC 60.9%
- Langebaan TLCNNP 51.9%
- Langeberg TRCNNP 61.7%
- Leeu Gamka TLCANC 59.7%
- Lutzville TLCANC 56.0%
- Malmesbury TLCNNP 50.3%
- Malmesbury TRCNNP 55.4%
- Matroosberg TRCANC 53.4%
- McGregor TLCANC 38.7%
- Montagu TLCNNP 49.3%
- Moorreesburg TLCNNP 55.9%
- Mosselbaai TRCNNP 47.6%
- Mosselbay TLCNNP 42.7%
- Murraysburg TLCANC 62.7%
- Murraysburg TRCNNP 59.1%
- Napier TLCNNP 45.3%
- Nuweberg TRCANC 58.3%
- Oostenberg MLCNNP 49.3%
- Oudtshoorn TLCNNP 44.0%
- Oudtshoorn TRCANC 45.4%
- Outeniqua TRCANC 41.7%
- Paarl TLCNNP 44.3%
- Paarl TRCANC 49.1%
- Piketberg TLCNNP 51.3%
- Piketberg TRCNNP 52.5%
- Pniel TLCNNP 56.6%
- Porterville TLCNNP 50.3%
- Prince Albert TLCANC 47.5%
- Prince Albert TRCNNP 65.5%
- Prince Alfred Hamlet TLCANC 57.1%
- Rawsonville TLCNNP 65.5%
- Redelinghuys TLCNNP 54.4%
- Rheenendal TLCNNP 61.1%
- Rietpoort TLCANC 70.6%
- Riversdale TLCANC 48.4%
- Riviersonderend TLCANC 47.9%
- Robertson TLCANC 48.1%
- Saron TLCANC 57.3%
- Sedgefield TLCNNP 37.0%
- Slangrivier TLCANC 56.3%
- Southern Peninsula MLCNNP 43.2%
- Stanford TLCANC 42.9%
- Stellenbosch TLCNNP 42.7%
- Stellenbosch TRCNNP 40.9%
- Stilbaai TLCNNP 72.2%
- Struisbaai TLCNNP 47.5%
- Suurbraak TLCNNP 57.3%
- Swellendam TLCNNP 43.9%
- Swellendam TRCANC 47.8%
- Touws River TLCANC 46.2%
- Tulbagh TLCANC 53.0%
- Tygerberg MLCANC 45.9%
- Uniondale TLCANC 47.7%
- Uniondale TRCANC 42.5%
- Vanrhynsdorp TLCNNP 47.8%
- Vanrhynsdorp TRCANC 44.3%
- Vanwyksdorp TLCNNP 50.5%
- Velddrif TLCNNP 51.7%
- Villiersdorp TLCANC 54.8%
- Vredendal TLCNNP 46.3%
- Vredendal TRCNNP 49.9%
- Wellington TLCNNP 51.8%
- West Coast Peninsula TLCANC 49.6%
- Wilderness TLCNNP 38.5%
- Witzenberg TRCANC 50.2%
- Wolseley TLCANC 47.7%
- Worcester TLCANC 47.9%
- Wynland TRCANC 42.1%
- Yzerfontein TLCNNP 67.2%
- Zoar TLCANC 51.5%
About these figures
Official IEC figures: how we add them up
Votes cast 1 601 477 · spoilt 13 499 · special votes 0 · All 1 308 voting districts in · the IEC marks the results complete
The change beside the headline is the difference between the leading party's share here and its share in the 1994 election for the same province, both from the IEC's counts, with no votes re-allocated between boundaries.
Total is the sum of the seats the IEC allocated to parties.
Percentages are calculated from the IEC's vote counts. Official results: results.elections.org.za.
Map boundaries: Municipal Demarcation Board (MDB) and the IEC.
IEC data last fetched 27 Oct 2026, 23:26 SAST.