ActionSA 31.7%
Most party (PR) votes
Stations open 7am–9pm · results from 9pm · SourceSpecial votes 2 and 3 Nov, 8am–5pm.
Elected ward councillor ?
Lebohang Precious BotsanaActionSAPR ballot ? · 6 464 valid votes
ActionSA2 04631.7%
ANCAfrican National Congress1 52323.6%
DADemocratic Alliance84313.0%
EFFEconomic Freedom Fighters75111.6%
MKPUmkhonto Wesizwe Party3896.0%
VF PLUSVryheidsfront Plus | Freedom Front Plus761.2%
ATMAfrican Transformation Movement721.1%
IFPInkatha Freedom Party550.9%- SACPSouth African Communist Party510.8%
COPECongress of the People490.8%
AICAfrican Independent Congress470.7%- CHANGEChange Party430.7%
BOSABuild One South Africa420.6%- AEFAfrican Economic Freedom410.6%
PAPatriotic Alliance320.5%- AACUMActive African Christians United Movement320.5%
RISERise Mzansi320.5%
ACDPAfrican Christian Democratic Party290.4%- MAWUSAMawusa Movement Party280.4%
- MOVEMove SA260.4%
- ACTAfrican Congress for Transformation230.4%
ICMIndependent Citizens Movement210.3%- MAYIBUYEAfrika Mayibuye Movement200.3%
- IMSImstaying200.3%
- COMBAT180.3%
PMCPeople's Movement for Change160.2%
UATUnited Africans Transformation160.2%
ECOFORUMEconomic Emancipation Forum140.2%
MFMinority Front130.2%
LANDLand Party130.2%
ALJAMAAl Jama-ah100.2%
BPSABolsheviks Party of South Africa100.2%- UMBRELLAAllied Independents Umbrella100.2%
AHCAfrican Heart Congress90.1%- ALCAfrican Labour Convention60.1%
ARUAfrican Renaissance Unity40.1%- Umphakathi WaronaUmphakathi Warona40.1%
O.DOperation Dudula30.0%- ARRC.African Royal Rainbow Congress30.0%
PACPan Africanist Congress of Azania20.0%
APCAfrican People's Convention20.0%
AUCAfrican Unemployed Congress20.0%
ARAAfrica Restoration Alliance20.0%- FISAFreedom in South Africa20.0%
Elf-SA - Economic Liberators Forum South AfricaElf-SA - Economic Liberators Forum South Africa20.0%- ERMEconomic Redress Movement20.0%
- ANOSAAll Natives of South Africa20.0%
- SAPCOSouth African People’s Civic Organization20.0%
AZANIAAzania Peaceful Revolution10.0%
ACPAll Citizens Party10.0%- LABOURLabour Party of South Africa10.0%
- GAZAGaza Democratic Front10.0%
- PRO SAPro South Africa10.0%
- CKPChrist Kingdom Party10.0%
Hours off in Ward 111 ?
Reported in the ESP app
Voting districts · 3 ?
Candidates · 57
Lebohang Precious BotsanaActionSA- Esther Rachel NyangintsimbiActive African Christians United Movement
Lorrance Bafana MtimkuluAfrica Restoration Alliance
Lutendo Caroline NesenganiAfrican Christian Democratic Party- Patrick Molefe SeakgoeAfrican Congress for Transformation
- Lehlohonolo LeballoAfrican Economic Freedom
Matshipi Solomon MamaboloAfrican Heart Congress
Zanyiwe Veronica MbeluAfrican Independent Congress- Sabelo Thulasizwe NgubaneAfrican Labour Convention
Nontutuzela Prescilla SupeAfrican National Congress
Mandla Stanley MokoenaAfrican People's Convention
Sandiso BhudaAfrican Transformation Movement
Cebolenkosi Patriot NondanyanaAfrican Unemployed Congress- Nompumelelo Bonisiwe DladlaAfrika Mayibuye Movement
Kabelo GwamandaAl Jama-ah
Evelyn SerokeAll Citizens Party- Refilwe MasemolaAll Natives of South Africa
- Katlego Modipi ThotseAllied Independents Umbrella
Ricardo MaarmanAzania Peaceful Revolution- Eunice Koekie NgubaneAzanian Ground Forces
Moureen SaidiAzanian People's Organisation
Mzwandile NgcayiyaBolsheviks Party of South Africa
Nhlanhla Lucky MathabelaBuild One South Africa- Doris Nolwazi TsotetsiCivic Movement for Progressive Citizens
David Ofentse MalatjiCongress of the People
Welcome Nkwane MohlalaDemocratic Alliance
Phomolang MofokengEconomic Emancipation Forum
Saseka Lorrein ZithaEconomic Freedom Fighters
David NhlapoEconomic Liberators Forum South Africa- Sammy LekitlaneEkhethu Peoples Party
- Hector Sibusiso MoolarIndependent
Erick Sibusiso NtuliIndependent Citizens Movement
Ernest Mbongeleni NxumaloInkatha Freedom Party- Thabile Lekina MabuselaKnow Your Power
- Xolani Magnificent HlongwaneLabour Party of South Africa
- Nompumelelo Esther MthembuMawusa Movement Party
Ruchir Jai Aryan SinghMinority Front- Tshamano Sydney RababalelaMove SA
- Deidré Margo KestenNational Coloured Congress
Mpho CindiNational Democratic Convention
Gotsofatso Elocca SekhobeNational Freedom Party
Panashe Dylan MalatsiOrganic Humanity Movement
Manana Maria NkonkaPatriotic Alliance- Veli Addis MpanzaPeople of Joburg
James Mpho MosoeuPeople's Movement for Change
Lukhona Afika MnguniRise Mzansi- Midlaas Maesela DikoboService Delivery Party
Kefiloe Reuben MatlalaShosholoza Progressive Party- Sandile Sydney NgubaneSouth African Communist Party
- Loyiso ToyiyaSouth African People’s Civic Organization
- Palesa MolakengTruth and Solidarity Movement
Siyabonga Goodnews MahayeUmkhonto Wesizwe Party- Shadrack Thabang MoloiUmphakathi Warona
Banele BhenguUnited Democratic Movement
Garth Stuart JackUnited Independent Movement
Nubijara Wilson TloubatlaVryheidsfront Plus | Freedom Front Plus- Sipho Jim JantjieVuka SA
Source: IEC certified candidate list (PDF, 16 Sept 2026)
This ward in earlier elections ?
Boundaries changed after 2021: each ward's own results, never re-allocated.
ESP areas in this ward · 10 ?
About these figures
Notes on the IEC's figures for this page
Votes cast 6 568 · spoilt 461 · special votes 387 · All 3 voting districts in (the IEC's voting-district results so far, out of its list of voting districts for this election)
PR ballot figures for this ward are the sum of the IEC's results for its 3 voting districts; the IEC publishes the ward ballot per ward and the PR ballot per voting district.
Turnout is calculated as PR ballots cast ÷ registered voters, from the IEC's results for the 3 voting districts here (6 468 of 14 281). The IEC publishes 46.1%.
Note: party 1511: the IEC's cross-ballot total 1715 differs from its ward + PR + DC 40% votes (3761); we show each ballot's own votes.
Note: party 7: the IEC's cross-ballot total 1355 differs from its ward + PR + DC 40% votes (2878); we show each ballot's own votes.
Note: party 945: the IEC's cross-ballot total 767 differs from its ward + PR + DC 40% votes (1518); we show each ballot's own votes.
Note: party 52: the IEC's cross-ballot total 741 differs from its ward + PR + DC 40% votes (1584); we show each ballot's own votes.
Note: party 1748: the IEC's cross-ballot total 349 differs from its ward + PR + DC 40% votes (738); we show each ballot's own votes.
Note: party 1909: the IEC's cross-ballot total 70 differs from its ward + PR + DC 40% votes (90); we show each ballot's own votes.
Note: party 445: the IEC's cross-ballot total 60 differs from its ward + PR + DC 40% votes (111); we show each ballot's own votes.
Note: party 957: the IEC's cross-ballot total 55 differs from its ward + PR + DC 40% votes (87); we show each ballot's own votes.
Note: party 3: the IEC's cross-ballot total 48 differs from its ward + PR + DC 40% votes (103); we show each ballot's own votes.
Note: party 18: the IEC's cross-ballot total 30 differs from its ward + PR + DC 40% votes (59); we show each ballot's own votes.
Note: party 1318: the IEC's cross-ballot total 30 differs from its ward + PR + DC 40% votes (102); we show each ballot's own votes.
Note: party 1755: the IEC's cross-ballot total 28 differs from its ward + PR + DC 40% votes (60); we show each ballot's own votes.
Note: party 4: the IEC's cross-ballot total 28 differs from its ward + PR + DC 40% votes (104); we show each ballot's own votes.
Note: party 1952: the IEC's cross-ballot total 25 differs from its ward + PR + DC 40% votes (53); we show each ballot's own votes.
Note: party 499: the IEC's cross-ballot total 21 differs from its ward + PR + DC 40% votes (70); we show each ballot's own votes.
Note: party 1544: the IEC's cross-ballot total 17 differs from its ward + PR + DC 40% votes (26); we show each ballot's own votes.
Note: party 330: the IEC's cross-ballot total 13 differs from its ward + PR + DC 40% votes (60); we show each ballot's own votes.
Note: party 1711: the IEC's cross-ballot total 11 differs from its ward + PR + DC 40% votes (53); we show each ballot's own votes.
Note: party 450: the IEC's cross-ballot total 10 differs from its ward + PR + DC 40% votes (12); we show each ballot's own votes.
Note: party 1260: the IEC's cross-ballot total 8 differs from its ward + PR + DC 40% votes (22); we show each ballot's own votes.
Note: party 1740: the IEC's cross-ballot total 6 differs from its ward + PR + DC 40% votes (29); we show each ballot's own votes.
Note: party 1986: the IEC's cross-ballot total 6 differs from its ward + PR + DC 40% votes (12); we show each ballot's own votes.
Note: party 31: the IEC's cross-ballot total 5 differs from its ward + PR + DC 40% votes (18); we show each ballot's own votes.
Note: party 1059: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (4); we show each ballot's own votes.
Note: party 1595: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (23); we show each ballot's own votes.
Note: party 3231: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (28); we show each ballot's own votes.
Note: party 1693: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (33); we show each ballot's own votes.
Note: party 1074: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 1751: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: party 1749: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: party 1720: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (41); we show each ballot's own votes.
Note: party 447: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (10); we show each ballot's own votes.
Note: party 2095: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 1523: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 2091: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: party 1305: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (4); we show each ballot's own votes.
Note: party 932: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (10); we show each ballot's own votes.
Note: party 1477: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (43); we show each ballot's own votes.
Note: party 3255: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: party 2018: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (18); we show each ballot's own votes.
Note: party 1790: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 1951: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 1935: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: party 2141: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (20); we show each ballot's own votes.
Note: party 1802: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: party 1352: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (13); we show each ballot's own votes.
Note: party 3204: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (4); we show each ballot's own votes.
Note: party 1758: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: party 8: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 1335: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (16); we show each ballot's own votes.
Note: party 2175: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: party 2149: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: party 1707: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (16); we show each ballot's own votes.
Note: party 2173: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (10); we show each ballot's own votes.
Note: voting district 32910049: party 1511: the IEC's cross-ballot total 1288 differs from its ward + PR + DC 40% votes (2300); we show each ballot's own votes.
Note: voting district 32910049: party 7: the IEC's cross-ballot total 754 differs from its ward + PR + DC 40% votes (1355); we show each ballot's own votes.
Note: voting district 32910049: party 0: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (588); we show each ballot's own votes.
Note: voting district 32910049: party 945: the IEC's cross-ballot total 394 differs from its ward + PR + DC 40% votes (820); we show each ballot's own votes.
Note: voting district 32910049: party 52: the IEC's cross-ballot total 487 differs from its ward + PR + DC 40% votes (870); we show each ballot's own votes.
Note: voting district 32910049: party 1748: the IEC's cross-ballot total 195 differs from its ward + PR + DC 40% votes (345); we show each ballot's own votes.
Note: voting district 32910049: party 1909: the IEC's cross-ballot total 12 differs from its ward + PR + DC 40% votes (69); we show each ballot's own votes.
Note: voting district 32910049: party 957: the IEC's cross-ballot total 7 differs from its ward + PR + DC 40% votes (57); we show each ballot's own votes.
Note: voting district 32910049: party 445: the IEC's cross-ballot total 37 differs from its ward + PR + DC 40% votes (81); we show each ballot's own votes.
Note: voting district 32910049: party 3: the IEC's cross-ballot total 33 differs from its ward + PR + DC 40% votes (56); we show each ballot's own votes.
Note: voting district 32910049: party 1755: the IEC's cross-ballot total 17 differs from its ward + PR + DC 40% votes (40); we show each ballot's own votes.
Note: voting district 32910049: party 18: the IEC's cross-ballot total 20 differs from its ward + PR + DC 40% votes (40); we show each ballot's own votes.
Note: voting district 32910049: party 499: the IEC's cross-ballot total 6 differs from its ward + PR + DC 40% votes (26); we show each ballot's own votes.
Note: voting district 32910049: party 1952: the IEC's cross-ballot total 19 differs from its ward + PR + DC 40% votes (35); we show each ballot's own votes.
Note: voting district 32910049: party 1318: the IEC's cross-ballot total 51 differs from its ward + PR + DC 40% votes (64); we show each ballot's own votes.
Note: voting district 32910049: party 4: the IEC's cross-ballot total 49 differs from its ward + PR + DC 40% votes (62); we show each ballot's own votes.
Note: voting district 32910049: party 1544: the IEC's cross-ballot total 4 differs from its ward + PR + DC 40% votes (15); we show each ballot's own votes.
Note: voting district 32910049: party 330: the IEC's cross-ballot total 4 differs from its ward + PR + DC 40% votes (15); we show each ballot's own votes.
Note: voting district 32910049: party 450: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (10); we show each ballot's own votes.
Note: voting district 32910049: party 1711: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (9); we show each ballot's own votes.
Note: voting district 32910049: party 1260: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (9); we show each ballot's own votes.
Note: voting district 32910049: party 1740: the IEC's cross-ballot total 21 differs from its ward + PR + DC 40% votes (27); we show each ballot's own votes.
Note: voting district 32910049: party 1059: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: voting district 32910049: party 17: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: voting district 32910049: party 284: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: voting district 32910049: party 1863: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: voting district 32910320: party 7: the IEC's cross-ballot total 627 differs from its ward + PR + DC 40% votes (1253); we show each ballot's own votes.
Note: voting district 32910320: party 1511: the IEC's cross-ballot total 539 differs from its ward + PR + DC 40% votes (1044); we show each ballot's own votes.
Note: voting district 32910320: party 52: the IEC's cross-ballot total 269 differs from its ward + PR + DC 40% votes (536); we show each ballot's own votes.
Note: voting district 32910320: party 945: the IEC's cross-ballot total 236 differs from its ward + PR + DC 40% votes (468); we show each ballot's own votes.
Note: voting district 32910320: party 1748: the IEC's cross-ballot total 132 differs from its ward + PR + DC 40% votes (270); we show each ballot's own votes.
Note: voting district 32910320: party 0: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (35); we show each ballot's own votes.
Note: voting district 32910320: party 6: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (18); we show each ballot's own votes.
Note: voting district 32910320: party 3: the IEC's cross-ballot total 15 differs from its ward + PR + DC 40% votes (32); we show each ballot's own votes.
Note: voting district 32910320: party 4: the IEC's cross-ballot total 16 differs from its ward + PR + DC 40% votes (25); we show each ballot's own votes.
Note: voting district 32910320: party 1318: the IEC's cross-ballot total 9 differs from its ward + PR + DC 40% votes (18); we show each ballot's own votes.
Note: voting district 32910320: party 1952: the IEC's cross-ballot total 9 differs from its ward + PR + DC 40% votes (18); we show each ballot's own votes.
Note: voting district 32910320: party 18: the IEC's cross-ballot total 8 differs from its ward + PR + DC 40% votes (16); we show each ballot's own votes.
Note: voting district 32910320: party 1909: the IEC's cross-ballot total 5 differs from its ward + PR + DC 40% votes (13); we show each ballot's own votes.
Note: voting district 32910320: party 445: the IEC's cross-ballot total 6 differs from its ward + PR + DC 40% votes (12); we show each ballot's own votes.
Note: voting district 32910320: party 1986: the IEC's cross-ballot total 5 differs from its ward + PR + DC 40% votes (11); we show each ballot's own votes.
Note: voting district 32910320: party 1544: the IEC's cross-ballot total 5 differs from its ward + PR + DC 40% votes (8); we show each ballot's own votes.
Note: voting district 32910320: party 1755: the IEC's cross-ballot total 12 differs from its ward + PR + DC 40% votes (14); we show each ballot's own votes.
Note: voting district 32910320: party 499: the IEC's cross-ballot total 41 differs from its ward + PR + DC 40% votes (42); we show each ballot's own votes.
Note: voting district 32910320: party 31: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910320: party 3231: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: voting district 32910588: party 1511: the IEC's cross-ballot total 219 differs from its ward + PR + DC 40% votes (417); we show each ballot's own votes.
Note: voting district 32910588: party 7: the IEC's cross-ballot total 142 differs from its ward + PR + DC 40% votes (270); we show each ballot's own votes.
Note: voting district 32910588: party 945: the IEC's cross-ballot total 121 differs from its ward + PR + DC 40% votes (230); we show each ballot's own votes.
Note: voting district 32910588: party 52: the IEC's cross-ballot total 87 differs from its ward + PR + DC 40% votes (178); we show each ballot's own votes.
Note: voting district 32910588: party 1748: the IEC's cross-ballot total 62 differs from its ward + PR + DC 40% votes (123); we show each ballot's own votes.
Note: voting district 32910588: party 0: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (55); we show each ballot's own votes.
Note: voting district 32910588: party 445: the IEC's cross-ballot total 8 differs from its ward + PR + DC 40% votes (18); we show each ballot's own votes.
Note: voting district 32910588: party 1318: the IEC's cross-ballot total 12 differs from its ward + PR + DC 40% votes (20); we show each ballot's own votes.
Note: voting district 32910588: party 3: the IEC's cross-ballot total 7 differs from its ward + PR + DC 40% votes (15); we show each ballot's own votes.
Note: voting district 32910588: party 4: the IEC's cross-ballot total 11 differs from its ward + PR + DC 40% votes (17); we show each ballot's own votes.
Note: voting district 32910588: party 957: the IEC's cross-ballot total 6 differs from its ward + PR + DC 40% votes (11); we show each ballot's own votes.
Note: voting district 32910588: party 1909: the IEC's cross-ballot total 3 differs from its ward + PR + DC 40% votes (8); we show each ballot's own votes.
Note: voting district 32910588: party 31: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (4); we show each ballot's own votes.
Note: voting district 32910588: party 1755: the IEC's cross-ballot total 3 differs from its ward + PR + DC 40% votes (6); we show each ballot's own votes.
Note: voting district 32910588: party 1544: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910588: party 330: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (4); we show each ballot's own votes.
Note: voting district 32910588: party 18: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910588: party 1711: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910588: party 1595: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910588: party 1751: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910588: party 3231: the IEC's cross-ballot total 2 differs from its ward + PR + DC 40% votes (3); we show each ballot's own votes.
Note: voting district 32910588: party 1693: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: voting district 32910588: party 1074: the IEC's cross-ballot total 1 differs from its ward + PR + DC 40% votes (2); we show each ballot's own votes.
Note: voting district 32910588: party 1059: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
Note: voting district 32910588: party 6: the IEC's cross-ballot total 0 differs from its ward + PR + DC 40% votes (1); we show each ballot's own votes.
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 08 Nov 2026, 20:42 SAST.