ANC leads by
Ward + municipal PR
2026 · Voting district
Ward + municipal PR
| Party / entry | Candidate | Votes | Vote share (%) |
|---|---|---|---|
| AFRICAN NATIONAL CONGRESS | VUMILE EDWIN NIKELO | 124 | 51,6667 |
| MANGAUNG SEVEN PEOPLE'S VOICE | — | 50 | 20,8333 |
| DEMOCRATIC ALLIANCE | — | 33 | 13,75 |
| NATIONAL SERVICE DELIVERY FORUM | — | 8 | 3,3333 |
| ECONOMIC FREEDOM FIGHTERS | — | 7 | 2,9167 |
| ACTIONSA | — | 4 | 1,6667 |
| AFRICAN CULTURAL IDENTITY MOVEMENT | — | 4 | 1,6667 |
| AFRICAN TRANSFORMATION MOVEMENT | — | 4 | 1,6667 |
| AFRICAN INDEPENDENT CONGRESS | — | 2 | 0,8333 |
| UMKHONTO WESIZWE PARTY | — | 2 | 0,8333 |
| PATRIOTIC ALLIANCE | — | 1 | 0,4167 |
| SIZWE UMMAH NATION | — | 1 | 0,4167 |
| VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | — | 0 | 0 |
| ACTIVE AFRICAN CHRISTIANS UNITED MOVEMENT | — | 0 | 0 |
| AFRICAN ALLIANCE CONGRESS | — | 0 | 0 |
| AFRICAN CHRISTIAN DEMOCRATIC PARTY | — | 0 | 0 |
| AFRICAN CONGRESS FOR TRANSFORMATION | — | 0 | 0 |
| AFRICAN HEART CONGRESS | — | 0 | 0 |
| AFRICAN PEOPLE'S CONVENTION | — | 0 | 0 |
| AFRICAN RENAISSANCE UNITY | — | 0 | 0 |
| AFRIKA MAYIBUYE MOVEMENT | — | 0 | 0 |
| AFRIKAN ALLIANCE OF SOCIAL DEMOCRATS | — | 0 | 0 |
| BUILD ONE SOUTH AFRICA | — | 0 | 0 |
| CONGRESS OF THE PEOPLE | — | 0 | 0 |
| INKATHA FREEDOM PARTY | — | 0 | 0 |
| LABOUR PARTY OF SOUTH AFRICA | — | 0 | 0 |
| PAN AFRICANIST CONGRESS OF AZANIA | — | 0 | 0 |
| PEOPLE'S MOVEMENT FOR CHANGE | — | 0 | 0 |
| SOUTH AFRICAN COMMUNIST PARTY | — | 0 | 0 |
| SOUTH AFRICAN ROYAL KINGDOMS ORGANIZATION | — | 0 | 0 |
| UNITED AFRICANS TRANSFORMATION | — | 0 | 0 |
| UNITED CHRISTIAN DEMOCRATIC PARTY | — | 0 | 0 |
| UNITED RESIDENTS FRONT | — | 0 | 0 |
| INDEPENDENTS | — | 0 | 0 |
240 valid votes. Shares use this ballot’s party totals. All published entries are included.
Swipe to see history
| Election | Party | Votes | Vote share (%) | Valid ballot total | Availability |
|---|---|---|---|---|---|
| 2 026 | AFRICAN NATIONAL CONGRESS | 124 | 51,6667 | 240 | Reported |
| 2 026 | MANGAUNG SEVEN PEOPLE'S VOICE | 50 | 20,8333 | 240 | Reported |
| 2 026 | DEMOCRATIC ALLIANCE | 33 | 13,75 | 240 | Reported |
| 2 026 | NATIONAL SERVICE DELIVERY FORUM | 8 | 3,3333 | 240 | Reported |
| 2 026 | ECONOMIC FREEDOM FIGHTERS | 7 | 2,9167 | 240 | Reported |
| 2 026 | ACTIONSA | 4 | 1,6667 | 240 | Reported |
| 2 026 | AFRICAN CULTURAL IDENTITY MOVEMENT | 4 | 1,6667 | 240 | Reported |
| 2 026 | AFRICAN TRANSFORMATION MOVEMENT | 4 | 1,6667 | 240 | Reported |
| 2 026 | AFRICAN INDEPENDENT CONGRESS | 2 | 0,8333 | 240 | Reported |
| 2 026 | UMKHONTO WESIZWE PARTY | 2 | 0,8333 | 240 | Reported |
| 2 026 | PATRIOTIC ALLIANCE | 1 | 0,4167 | 240 | Reported |
| 2 026 | SIZWE UMMAH NATION | 1 | 0,4167 | 240 | Reported |
| 2 026 | ACTIVE AFRICAN CHRISTIANS UNITED MOVEMENT | 0 | 0 | 240 | Reported |
| 2 026 | AFRICAN ALLIANCE CONGRESS | 0 | 0 | 240 | Reported |
| 2 026 | AFRICAN CHRISTIAN DEMOCRATIC PARTY | 0 | 0 | 240 | Reported |
| 2 026 | AFRICAN CONGRESS FOR TRANSFORMATION | 0 | 0 | 240 | Reported |
| 2 026 | AFRICAN HEART CONGRESS | 0 | 0 | 240 | Reported |
| 2 026 | AFRICAN PEOPLE'S CONVENTION | 0 | 0 | 240 | Reported |
| 2 026 | AFRICAN RENAISSANCE UNITY | 0 | 0 | 240 | Reported |
| 2 026 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 240 | Reported |
| 2 026 | AFRIKAN ALLIANCE OF SOCIAL DEMOCRATS | 0 | 0 | 240 | Reported |
| 2 026 | BUILD ONE SOUTH AFRICA | 0 | 0 | 240 | Reported |
| 2 026 | CONGRESS OF THE PEOPLE | 0 | 0 | 240 | Reported |
| 2 026 | INKATHA FREEDOM PARTY | 0 | 0 | 240 | Reported |
| 2 026 | LABOUR PARTY OF SOUTH AFRICA | 0 | 0 | 240 | Reported |
| 2 026 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 240 | Reported |
| 2 026 | PEOPLE'S MOVEMENT FOR CHANGE | 0 | 0 | 240 | Reported |
| 2 026 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 240 | Reported |
| 2 026 | SOUTH AFRICAN ROYAL KINGDOMS ORGANIZATION | 0 | 0 | 240 | Reported |
| 2 026 | UNITED AFRICANS TRANSFORMATION | 0 | 0 | 240 | Reported |
| 2 026 | UNITED CHRISTIAN DEMOCRATIC PARTY | 0 | 0 | 240 | Reported |
| 2 026 | UNITED RESIDENTS FRONT | 0 | 0 | 240 | Reported |
| 2 026 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 0 | 0 | 240 | Reported |
Ward + municipal PR votes. Missing and grouped entries are not assumed to be zero. Published boundaries may differ between elections.
Ward + municipal PR votes. Connecting bands show the same party’s share or seats between elections, not individual voters moving between parties. Select a year to inspect its values; use the election-year selector to explore its results and places.
The chart names the five largest parties across these elections. The vote list also names parties gaining at least 2 percentage points since the previous election; remaining votes are combined under Other. Other’s change compares the same group of parties in both elections. Missing values remain unavailable.
Loading map…
IEC: 08 Nov 2026, 21:26 SAST · checked 09 Nov 2026, 23:34 SAST
Feed coverage and seat allocations are separate from the national declaration: missing figures remain missing and estimates remain estimates. Corrections and re-votes may follow. Reporting progress measures voting districts, not turnout.
Historical comparisons use published area results. Boundaries may change between elections. Vote shares use the ballot labelled on each chart; ballots are not individual voters.
Ward: choose a person. PR: choose a party.
The candidate with the most votes in the whole ward wins one seat. They do not need more than 50%.
PR means proportional representation. Party-list seats balance the council’s overall party representation.
Party ward votes and municipal PR votes both count towards the party’s overall seat allocation.
Outside metros, voters also have a separate district PR ballot. An independent can stand in a ward but not on a party PR list.
IEC guide to council seatsFound Counted useful? Support the South African non-profits holding power to account.
Independent journalism exposing corruption and abuses of power.
DonateTurning public reports of corruption into investigations and action.
DonateChallenging corruption and the misuse of public money.
DonateDonations go directly to each organisation.