ANC leads by
Ward + municipal PR
2026 · Voting district
Ward + municipal PR
| Party / entry | Candidate | Votes | Vote share (%) |
|---|---|---|---|
| AFRICAN NATIONAL CONGRESS | — | 491 | 57,5615 |
| DEMOCRATIC ALLIANCE | THERESA ELS | 197 | 23,095 |
| AFRICAN TRANSFORMATION MOVEMENT | — | 34 | 3,9859 |
| LAND PARTY | — | 28 | 3,2825 |
| PATRIOTIC ALLIANCE | — | 22 | 2,5791 |
| AFRICAN CHRISTIAN DEMOCRATIC PARTY | — | 19 | 2,2274 |
| ECONOMIC FREEDOM FIGHTERS | — | 18 | 2,1102 |
| VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | — | 17 | 1,993 |
| NATIONAL COLOURED CONGRESS | — | 11 | 1,2896 |
| AFRIKA MAYIBUYE MOVEMENT | — | 5 | 0,5862 |
| ALLIANCE OF CITIZENS FOR CHANGE | — | 5 | 0,5862 |
| SOUTH AFRICAN COMMUNIST PARTY | — | 3 | 0,3517 |
| UMKHONTO WESIZWE PARTY | — | 2 | 0,2345 |
| ORGANIC HUMANITY MOVEMENT | — | 1 | 0,1172 |
| CAPE INDEPENDENCE PARTY / KAAPSE ONAFHANKLIKHEIDS PARTY | — | 0 | 0 |
| INDEPENDENT CANDIDATES ALLIANCE | — | 0 | 0 |
| PAN AFRICANIST CONGRESS OF AZANIA | — | 0 | 0 |
| PEOPLE'S MOVEMENT FOR CHANGE | — | 0 | 0 |
853 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 021 | AFRICAN NATIONAL CONGRESS | 154 | 52,7397 | 292 | Reported |
| 2 021 | DEMOCRATIC ALLIANCE | 117 | 40,0685 | 292 | Reported |
| 2 021 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | ECONOMIC FREEDOM FIGHTERS | 10 | 3,4247 | 292 | Reported |
| 2 021 | LAND PARTY | 9 | 3,0822 | 292 | Reported |
| 2 021 | PATRIOTIC ALLIANCE | 0 | 0 | 292 | Reported |
| 2 021 | AFRICAN CHRISTIAN DEMOCRATIC PARTY | 0 | 0 | 292 | Reported |
| 2 021 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 0 | 0 | 292 | Reported |
| 2 021 | NATIONAL COLOURED CONGRESS | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | ALLIANCE OF CITIZENS FOR CHANGE | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | GOOD | 1 | 0,3425 | 292 | Reported |
| 2 021 | SOUTH AFRICA FIRST | 1 | 0,3425 | 292 | Reported |
| 2 021 | UMKHONTO WESIZWE PARTY | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | ORGANIC HUMANITY MOVEMENT | 0 | 0 | 292 | Reported |
| 2 021 | CAPE INDEPENDENCE PARTY / KAAPSE ONAFHANKLIKHEIDS PARTY | 0 | 0 | 292 | Reported |
| 2 021 | CONGRESS OF THE PEOPLE | 0 | 0 | 292 | Reported |
| 2 021 | INDEPENDENT CANDIDATES ALLIANCE | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | INDEPENDENT CIVIC ORGANISATION OF SOUTH AFRICA | 0 | 0 | 292 | Reported |
| 2 021 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | PEOPLE'S MOVEMENT FOR CHANGE | 0 | 0 | 292 | No votes recorded in the complete party list. |
| 2 021 | SPECTRUM NATIONAL PARTY | 0 | 0 | 292 | Reported |
| 2 026 | AFRICAN NATIONAL CONGRESS | 491 | 57,5615 | 853 | Reported |
| 2 026 | DEMOCRATIC ALLIANCE | 197 | 23,095 | 853 | Reported |
| 2 026 | AFRICAN TRANSFORMATION MOVEMENT | 34 | 3,9859 | 853 | Reported |
| 2 026 | ECONOMIC FREEDOM FIGHTERS | 18 | 2,1102 | 853 | Reported |
| 2 026 | LAND PARTY | 28 | 3,2825 | 853 | Reported |
| 2 026 | PATRIOTIC ALLIANCE | 22 | 2,5791 | 853 | Reported |
| 2 026 | AFRICAN CHRISTIAN DEMOCRATIC PARTY | 19 | 2,2274 | 853 | Reported |
| 2 026 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 17 | 1,993 | 853 | Reported |
| 2 026 | NATIONAL COLOURED CONGRESS | 11 | 1,2896 | 853 | Reported |
| 2 026 | AFRIKA MAYIBUYE MOVEMENT | 5 | 0,5862 | 853 | Reported |
| 2 026 | ALLIANCE OF CITIZENS FOR CHANGE | 5 | 0,5862 | 853 | Reported |
| 2 026 | SOUTH AFRICAN COMMUNIST PARTY | 3 | 0,3517 | 853 | Reported |
| 2 026 | GOOD | 0 | 0 | 853 | No votes recorded in the complete party list. |
| 2 026 | SOUTH AFRICA FIRST | 0 | 0 | 853 | No votes recorded in the complete party list. |
| 2 026 | UMKHONTO WESIZWE PARTY | 2 | 0,2345 | 853 | Reported |
| 2 026 | ORGANIC HUMANITY MOVEMENT | 1 | 0,1172 | 853 | Reported |
| 2 026 | CAPE INDEPENDENCE PARTY / KAAPSE ONAFHANKLIKHEIDS PARTY | 0 | 0 | 853 | Reported |
| 2 026 | CONGRESS OF THE PEOPLE | 0 | 0 | 853 | No votes recorded in the complete party list. |
| 2 026 | INDEPENDENT CANDIDATES ALLIANCE | 0 | 0 | 853 | Reported |
| 2 026 | INDEPENDENT CIVIC ORGANISATION OF SOUTH AFRICA | 0 | 0 | 853 | No votes recorded in the complete party list. |
| 2 026 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 853 | Reported |
| 2 026 | PEOPLE'S MOVEMENT FOR CHANGE | 0 | 0 | 853 | Reported |
| 2 026 | SPECTRUM NATIONAL PARTY | 0 | 0 | 853 | No votes recorded in the complete party list. |
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: 06 Nov 2026, 10:06 SAST · checked 09 Nov 2026, 20:52 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.