ANC 53 of 76 seats
Majority
Most party (PR) votes: ANC 68.3% 1.3 pts · 2016: 69.6%
PR ballot ? · 101 777 valid votes
ANCAfrican National Congress69 54668.3%
EFFEconomic Freedom Fighters11 18311.0%
ISANCOIndependent South African National Civic Organisation6 6286.5%
APCAfrican People's Convention2 9742.9%
DADemocratic Alliance2 5162.5%
BRABetter Residents Association2 3592.3%
SAHRASouth Africa My Home Residents Association1 7151.7%- DCMDemocratic Community Movement9871.0%
BLOMBushbuckridge Locals Movement8470.8%
ACDPAfrican Christian Democratic Party7550.7%
ATMAfrican Transformation Movement6040.6%
PAUPower of Africans Unity5100.5%- ERAEqual Rights for All3360.3%
SARKOSouth African Royal Kingdoms Organization2170.2%
AUMAfrican Unified Movement1730.2%
UDMUnited Democratic Movement1530.2%
COPECongress of the People1320.1%
ALAble Leadership1000.1%
OHMOrganic Humanity Movement420.0%
Council seats · 76 ?
- African National Congress37 ward · 16 PR53
- Economic Freedom Fighters0 ward · 8 PR8
- Independent South African National Civic Organisation1 ward · 4 PR5
- Democratic Alliance0 ward · 2 PR2
- African People's Convention0 ward · 2 PR2
- Better Residents Association0 ward · 2 PR2
- Democratic Community Movement0 ward · 1 PR1
- African Transformation Movement0 ward · 1 PR1
- South Africa My Home Residents Association0 ward · 1 PR1
- Bushbuckridge Locals Movement0 ward · 1 PR1
Wards · 38
- Ward 1ANC 80.0%
- Ward 2ANC 78.0%
- Ward 3ANC 56.0%
- Ward 4ANC 85.8%
- Ward 5ANC 72.9%
- Ward 6ANC 80.9%
- Ward 7ANC 75.9%
- Ward 8ANC 79.2%
- Ward 9ANC 67.1%
- Ward 10ANC 88.3%
- Ward 11ANC 74.9%
- Ward 12ANC 46.8%
- Ward 13Independent 41.0%
- Ward 14ANC 68.9%
- Ward 15ANC 43.2%
- Ward 16ANC 61.6%
- Ward 17ANC 61.0%
- Ward 18ANC 64.9%
- Ward 19ANC 60.7%
- Ward 20ANC 42.4%
- Ward 21ANC 79.7%
- Ward 22ANC 75.6%
- Ward 23ANC 74.4%
- Ward 24ANC 62.1%
- Ward 25ANC 73.0%
- Ward 26ANC 87.6%
- Ward 27ANC 45.0%
- Ward 28ANC 64.6%
- Ward 29ANC 53.0%
- Ward 30ANC 66.8%
- Ward 31ANC 68.5%
- Ward 32ANC 48.5%
- Ward 33ANC 49.5%
- Ward 34ANC 55.2%
- Ward 35ANC 51.8%
- Ward 36ANC 69.4%
- Ward 37ANC 54.2%
- Ward 38ISANCO 48.6%
About these figures
Notes on the IEC's figures for this page
special votes 5 674 · All 263 voting districts in · the IEC marks the results complete
In local elections the IEC adds votes across the ward, PR and district ballots, so we show valid votes per ballot instead of one "votes cast" total.
Turnout is calculated as PR ballots cast ÷ registered voters, from the IEC's results for the 262 of its 263 voting districts (the IEC returned no result for the other) here (104 568 of 245 338). The IEC publishes 43.0%.
The change beside the headline is the difference between the leading party's share here and its share in the 2016 election for the same municipality, both from the IEC's counts, with no votes re-allocated between boundaries.
Note: IEC TotalValidVotes 305403 differs from the sum of party rows 306642 by 1239; we show per-ballot sums of party rows and do not publish the cross-ballot total.
Note: IEC TotalValidVotes 1913 differs from the sum of party rows 2342 by 429; we show per-ballot sums of party rows and do not publish the cross-ballot total.
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 26 Oct 2026, 16:05 SAST.