2026 · Municipal council
Dr. Beyers Naude
No party has a majority
Council seats
| Party / entry | Seats | Share of seats (%) |
|---|---|---|
| DEMOCRATIC ALLIANCE | 10 | 41,6667 |
| AFRICAN NATIONAL CONGRESS | 9 | 37,5 |
| PATRIOTIC ALLIANCE | 4 | 16,6667 |
| VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 1 | 4,1667 |
| ACTION SAVE-BNM | 0 | 0 |
| AFRICAN TRANSFORMATION MOVEMENT | 0 | 0 |
| AFRIKA MAYIBUYE MOVEMENT | 0 | 0 |
| ECONOMIC FREEDOM FIGHTERS | 0 | 0 |
| INDEPENDENTS | 0 | 0 |
| SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 |
| UMKHONTO WESIZWE PARTY | 0 | 0 |
| UNITED DEMOCRATIC MOVEMENT | 0 | 0 |
24 seats; 13 needed for a majority.
Municipal PR votes
Municipal PR votes
Other: show remaining parties: hide remaining parties7.6%1 683 votes
| Party / entry | Candidate | Votes | Vote share (%) |
|---|---|---|---|
| DEMOCRATIC ALLIANCE | — | 8 883 | 40,1728 |
| AFRICAN NATIONAL CONGRESS | — | 8 131 | 36,7719 |
| PATRIOTIC ALLIANCE | — | 3 415 | 15,4441 |
| VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | — | 699 | 3,1612 |
| ECONOMIC FREEDOM FIGHTERS | — | 451 | 2,0396 |
| ACTION SAVE-BNM | — | 252 | 1,1397 |
| UMKHONTO WESIZWE PARTY | — | 118 | 0,5336 |
| UNITED DEMOCRATIC MOVEMENT | — | 66 | 0,2985 |
| AFRICAN TRANSFORMATION MOVEMENT | — | 47 | 0,2126 |
| AFRIKA MAYIBUYE MOVEMENT | — | 29 | 0,1312 |
| SOUTH AFRICAN COMMUNIST PARTY | — | 21 | 0,095 |
| INDEPENDENTS | — | 0 | 0 |
22112 valid votes. Shares use this ballot’s party totals. All published entries are included.
Ward ballot votes
Other: show remaining parties: hide remaining parties8.9%1 972 votes
| Party / entry | Candidate | Votes | Vote share (%) |
|---|---|---|---|
| DEMOCRATIC ALLIANCE | — | 8 904 | 40,0648 |
| AFRICAN NATIONAL CONGRESS | — | 8 007 | 36,0286 |
| PATRIOTIC ALLIANCE | — | 3 341 | 15,0333 |
| VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | — | 616 | 2,7718 |
| ECONOMIC FREEDOM FIGHTERS | — | 444 | 1,9978 |
| INDEPENDENTS | — | 330 | 1,4849 |
| ACTION SAVE-BNM | — | 316 | 1,4219 |
| UMKHONTO WESIZWE PARTY | — | 136 | 0,612 |
| UNITED DEMOCRATIC MOVEMENT | — | 66 | 0,297 |
| SOUTH AFRICAN COMMUNIST PARTY | — | 33 | 0,1485 |
| AFRICAN TRANSFORMATION MOVEMENT | — | 21 | 0,0945 |
| AFRIKA MAYIBUYE MOVEMENT | — | 10 | 0,045 |
22224 valid votes. Shares use this ballot’s party totals. All published entries are included.
Past coalition partners
13 for a majorityHow the vote changed
Council seats by election
Swipe to see history
Seats unavailable for this election.
| Election | Party / entry | Seats | Council total | Majority needed |
|---|---|---|---|---|
| 2 000 | Seat allocation unavailable | Unavailable | Unavailable | Unavailable |
| 2 006 | AFRICAN NATIONAL CONGRESS | 8 | 11 | 6 |
| 2 006 | DEMOCRATIC ALLIANCE | 3 | 11 | 6 |
| 2 006 | INDEPENDENT DEMOCRATS | 0 | 11 | 6 |
| 2 006 | INDEPENDENTS | 0 | 11 | 6 |
| 2 006 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 0 | 11 | 6 |
| 2 011 | AFRICAN NATIONAL CONGRESS | 8 | 14 | 8 |
| 2 011 | DEMOCRATIC ALLIANCE | 6 | 14 | 8 |
| 2 011 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 0 | 14 | 8 |
| 2 011 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 14 | 8 |
| 2 011 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 0 | 14 | 8 |
| 2 016 | AFRICAN NATIONAL CONGRESS | 14 | 27 | 14 |
| 2 016 | DEMOCRATIC ALLIANCE | 13 | 27 | 14 |
| 2 016 | ECONOMIC FREEDOM FIGHTERS | 0 | 27 | 14 |
| 2 016 | INDEPENDENTS | 0 | 27 | 14 |
| 2 016 | SERVICE DELIVERY ORGANISATION | 0 | 27 | 14 |
| 2 021 | AFRICAN NATIONAL CONGRESS | 11 | 24 | 13 |
| 2 021 | DEMOCRATIC ALLIANCE | 10 | 24 | 13 |
| 2 021 | COMPATRIOTS OF SOUTH AFRICA | 1 | 24 | 13 |
| 2 021 | ECONOMIC FREEDOM FIGHTERS | 1 | 24 | 13 |
| 2 021 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 1 | 24 | 13 |
| 2 021 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 24 | 13 |
| 2 021 | INDEPENDENTS | 0 | 24 | 13 |
| 2 021 | PATRIOTIC ALLIANCE | 0 | 24 | 13 |
| 2 021 | SERVICE DELIVERY MOVEMENT | 0 | 24 | 13 |
| 2 026 | DEMOCRATIC ALLIANCE | 10 | 24 | 13 |
| 2 026 | AFRICAN NATIONAL CONGRESS | 9 | 24 | 13 |
| 2 026 | PATRIOTIC ALLIANCE | 4 | 24 | 13 |
| 2 026 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 1 | 24 | 13 |
| 2 026 | ACTION SAVE-BNM | 0 | 24 | 13 |
| 2 026 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 24 | 13 |
| 2 026 | AFRIKA MAYIBUYE MOVEMENT | 0 | 24 | 13 |
| 2 026 | ECONOMIC FREEDOM FIGHTERS | 0 | 24 | 13 |
| 2 026 | INDEPENDENTS | 0 | 24 | 13 |
| 2 026 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 24 | 13 |
| 2 026 | UMKHONTO WESIZWE PARTY | 0 | 24 | 13 |
| 2 026 | UNITED DEMOCRATIC MOVEMENT | 0 | 24 | 13 |
Ward + municipal PR votes. Missing and grouped entries are not assumed to be zero. Published boundaries may differ between elections.
Ward + municipal PR votes by election
Swipe to see history
| Election | Party | Votes | Vote share (%) | Valid ballot total | Availability |
|---|---|---|---|---|---|
| 2 000 | AFRICAN NATIONAL CONGRESS | 11 102 | 56,0537 | 19 806 | Reported |
| 2 000 | DEMOCRATIC ALLIANCE | 7 149 | 36,0951 | 19 806 | Reported |
| 2 000 | PATRIOTIC ALLIANCE | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | UNITED DEMOCRATIC MOVEMENT | 1 443 | 7,2857 | 19 806 | Reported |
| 2 000 | ECONOMIC FREEDOM FIGHTERS | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | COMPATRIOTS OF SOUTH AFRICA | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | INDEPENDENT DEMOCRATS | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | ACTION SAVE-BNM | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | SERVICE DELIVERY MOVEMENT | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | SERVICE DELIVERY ORGANISATION | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | UMKHONTO WESIZWE PARTY | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 000 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 19 806 | No votes recorded in the complete party list. |
| 2 006 | AFRICAN NATIONAL CONGRESS | 13 699 | 67,2707 | 20 364 | Reported |
| 2 006 | DEMOCRATIC ALLIANCE | 5 069 | 24,892 | 20 364 | Reported |
| 2 006 | PATRIOTIC ALLIANCE | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | UNITED DEMOCRATIC MOVEMENT | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | ECONOMIC FREEDOM FIGHTERS | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 833 | 4,0906 | 20 364 | Reported |
| 2 006 | COMPATRIOTS OF SOUTH AFRICA | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | INDEPENDENT DEMOCRATS | 430 | 2,1116 | 20 364 | Reported |
| 2 006 | ACTION SAVE-BNM | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | SERVICE DELIVERY MOVEMENT | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | SERVICE DELIVERY ORGANISATION | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | UMKHONTO WESIZWE PARTY | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 006 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 20 364 | No votes recorded in the complete party list. |
| 2 011 | AFRICAN NATIONAL CONGRESS | 14 875 | 55,5037 | 26 800 | Reported |
| 2 011 | DEMOCRATIC ALLIANCE | 11 220 | 41,8657 | 26 800 | Reported |
| 2 011 | PATRIOTIC ALLIANCE | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | UNITED DEMOCRATIC MOVEMENT | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | ECONOMIC FREEDOM FIGHTERS | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 231 | 0,8619 | 26 800 | Reported |
| 2 011 | COMPATRIOTS OF SOUTH AFRICA | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | INDEPENDENT DEMOCRATS | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | ACTION SAVE-BNM | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | SERVICE DELIVERY MOVEMENT | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 263 | 0,9813 | 26 800 | Reported |
| 2 011 | PAN AFRICANIST CONGRESS OF AZANIA | 211 | 0,7873 | 26 800 | Reported |
| 2 011 | SERVICE DELIVERY ORGANISATION | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | UMKHONTO WESIZWE PARTY | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 011 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 26 800 | No votes recorded in the complete party list. |
| 2 016 | AFRICAN NATIONAL CONGRESS | 25 168 | 51,0486 | 49 302 | Reported |
| 2 016 | DEMOCRATIC ALLIANCE | 22 970 | 46,5904 | 49 302 | Reported |
| 2 016 | PATRIOTIC ALLIANCE | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | UNITED DEMOCRATIC MOVEMENT | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | ECONOMIC FREEDOM FIGHTERS | 858 | 1,7403 | 49 302 | Reported |
| 2 016 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | COMPATRIOTS OF SOUTH AFRICA | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | INDEPENDENT DEMOCRATS | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | ACTION SAVE-BNM | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | SERVICE DELIVERY MOVEMENT | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | SERVICE DELIVERY ORGANISATION | 292 | 0,5923 | 49 302 | Reported |
| 2 016 | UMKHONTO WESIZWE PARTY | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | AFRICAN TRANSFORMATION MOVEMENT | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 016 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 49 302 | No votes recorded in the complete party list. |
| 2 021 | AFRICAN NATIONAL CONGRESS | 17 261 | 46,8184 | 36 868 | Reported |
| 2 021 | DEMOCRATIC ALLIANCE | 14 583 | 39,5546 | 36 868 | Reported |
| 2 021 | PATRIOTIC ALLIANCE | 408 | 1,1067 | 36 868 | Reported |
| 2 021 | UNITED DEMOCRATIC MOVEMENT | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | ECONOMIC FREEDOM FIGHTERS | 1 542 | 4,1825 | 36 868 | Reported |
| 2 021 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 1 113 | 3,0189 | 36 868 | Reported |
| 2 021 | COMPATRIOTS OF SOUTH AFRICA | 1 331 | 3,6102 | 36 868 | Reported |
| 2 021 | INDEPENDENT DEMOCRATS | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | ACTION SAVE-BNM | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | SERVICE DELIVERY MOVEMENT | 412 | 1,1175 | 36 868 | Reported |
| 2 021 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | SERVICE DELIVERY ORGANISATION | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | UMKHONTO WESIZWE PARTY | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | AFRICAN TRANSFORMATION MOVEMENT | 38 | 0,1031 | 36 868 | Reported |
| 2 021 | SOUTH AFRICAN COMMUNIST PARTY | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 021 | AFRIKA MAYIBUYE MOVEMENT | 0 | 0 | 36 868 | No votes recorded in the complete party list. |
| 2 026 | AFRICAN NATIONAL CONGRESS | 16 138 | 36,3993 | 44 336 | Reported |
| 2 026 | DEMOCRATIC ALLIANCE | 17 787 | 40,1186 | 44 336 | Reported |
| 2 026 | PATRIOTIC ALLIANCE | 6 756 | 15,2382 | 44 336 | Reported |
| 2 026 | UNITED DEMOCRATIC MOVEMENT | 132 | 0,2977 | 44 336 | Reported |
| 2 026 | ECONOMIC FREEDOM FIGHTERS | 895 | 2,0187 | 44 336 | Reported |
| 2 026 | VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS | 1 315 | 2,966 | 44 336 | Reported |
| 2 026 | COMPATRIOTS OF SOUTH AFRICA | 0 | 0 | 44 336 | No votes recorded in the complete party list. |
| 2 026 | INDEPENDENT DEMOCRATS | 0 | 0 | 44 336 | No votes recorded in the complete party list. |
| 2 026 | ACTION SAVE-BNM | 568 | 1,2811 | 44 336 | Reported |
| 2 026 | SERVICE DELIVERY MOVEMENT | 0 | 0 | 44 336 | No votes recorded in the complete party list. |
| 2 026 | INDEPENDENT RATEPAYERS ASSOCIATION OF SA | 0 | 0 | 44 336 | No votes recorded in the complete party list. |
| 2 026 | PAN AFRICANIST CONGRESS OF AZANIA | 0 | 0 | 44 336 | No votes recorded in the complete party list. |
| 2 026 | SERVICE DELIVERY ORGANISATION | 0 | 0 | 44 336 | No votes recorded in the complete party list. |
| 2 026 | UMKHONTO WESIZWE PARTY | 254 | 0,5729 | 44 336 | Reported |
| 2 026 | AFRICAN TRANSFORMATION MOVEMENT | 68 | 0,1534 | 44 336 | Reported |
| 2 026 | SOUTH AFRICAN COMMUNIST PARTY | 54 | 0,1218 | 44 336 | Reported |
| 2 026 | AFRIKA MAYIBUYE MOVEMENT | 39 | 0,088 | 44 336 | Reported |
Ward + municipal PR votes. Missing and grouped entries are not assumed to be zero. Published boundaries may differ between elections.
History data & sources
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.
- All points use the same ballot basis. Ballot totals are not counts of individual voters.
- 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.
- Missing or grouped party rows remain gaps unless a complete, ungrouped list establishes zero votes.
- Municipal boundaries can change between elections. Published area results are not boundary-adjusted.
Council government
Who has governed here
Administrations & sources
MISTRA records the administrations that governed after the 2021 election, through 28 February 2026. The latest recorded administration is shown below, followed by its predecessors. Party roles and officeholders are recorded at formation; later changes may appear in the notes.
Members at formation · minority administration · 11 Aug 2022 · recorded active at source cutoff
Inaugural mayor: W. Safers (ANC)
4 recorded administrations · 2021–February 2026
- ANC + CSA
11 Aug 2022 → Active at cutoff · 28 Feb 2026
Members at formation. Inaugural mayor: W. Safers.
- ANC + CSA
07 Jun 2022 → 12 Jul 2022 · Court Order
Members at formation. Inaugural mayor: W. Safers.
- DA + FF+
22 Feb 2022 → 18 May 2022 · MONC
Members at formation. Outside support: EFF. Inaugural mayor: E. Loock.
- CSA + DA + FF+
23 Nov 2021 → 22 Feb 2022 · Recomposition
Members at formation. Outside support: EFF. Inaugural mayor: E. Loock.
Ward results
Find my wardFind your ward
Loading map…
Wards in Dr. Beyers Naude
12 wards
| Ward | Election | Party / entry | Votes | Vote share (%) |
|---|---|---|---|---|
| Ward 1 | 2 026 | DEMOCRATIC ALLIANCE | 1 280 | 57,7357 |
| Ward 1 | 2 026 | AFRICAN NATIONAL CONGRESS | 693 | 31,2585 |
| Ward 2 | 2 026 | DEMOCRATIC ALLIANCE | 1 461 | 71,2335 |
| Ward 2 | 2 026 | AFRICAN NATIONAL CONGRESS | 268 | 13,0668 |
| Ward 3 | 2 026 | PATRIOTIC ALLIANCE | 462 | 35,5932 |
| Ward 3 | 2 026 | AFRICAN NATIONAL CONGRESS | 411 | 31,6641 |
| Ward 4 | 2 026 | DEMOCRATIC ALLIANCE | 937 | 48,853 |
| Ward 4 | 2 026 | PATRIOTIC ALLIANCE | 436 | 22,732 |
| Ward 5 | 2 026 | AFRICAN NATIONAL CONGRESS | 1 055 | 51,5137 |
| Ward 5 | 2 026 | PATRIOTIC ALLIANCE | 376 | 18,3594 |
| Ward 6 | 2 026 | AFRICAN NATIONAL CONGRESS | 1 235 | 76,7557 |
| Ward 6 | 2 026 | DEMOCRATIC ALLIANCE | 139 | 8,6389 |
| Ward 7 | 2 026 | PATRIOTIC ALLIANCE | 744 | 38,311 |
| Ward 7 | 2 026 | DEMOCRATIC ALLIANCE | 719 | 37,0237 |
| Ward 8 | 2 026 | DEMOCRATIC ALLIANCE | 971 | 56,9836 |
| Ward 8 | 2 026 | AFRICAN NATIONAL CONGRESS | 606 | 35,5634 |
| Ward 9 | 2 026 | DEMOCRATIC ALLIANCE | 990 | 54,3359 |
| Ward 9 | 2 026 | AFRICAN NATIONAL CONGRESS | 680 | 37,3216 |
| Ward 10 | 2 026 | AFRICAN NATIONAL CONGRESS | 1 065 | 48,3871 |
| Ward 10 | 2 026 | DEMOCRATIC ALLIANCE | 792 | 35,9836 |
| Ward 11 | 2 026 | AFRICAN NATIONAL CONGRESS | 756 | 41,3341 |
| Ward 11 | 2 026 | PATRIOTIC ALLIANCE | 585 | 31,9847 |
| Ward 12 | 2 026 | DEMOCRATIC ALLIANCE | 566 | 35,7098 |
| Ward 12 | 2 026 | AFRICAN NATIONAL CONGRESS | 495 | 31,2303 |
The two largest published entries shown on each ward card. Open a ward for all entries.
Sources & result details
IEC: 08 Nov 2026, 21:16 SAST · checked 10 Nov 2026, 19:59 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.
Government comparisons use the confirmed pre-election administration when available, otherwise the latest dated record. The new government appears when its membership is confirmed. A retained or changed government requires confirmed records on both sides; seats alone cannot establish it.
Vote percentages beside council seats combine ward and municipal PR ballots. Seat counts include both ward and PR councillors.
Seat calculation & source
These are the ward and PR seats published by the IEC. The totals add up to all 24 council seats. 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. A seat majority does not establish a governing agreement or who will become mayor.
IEC result time: 08 Nov 2026, 21:16 SAST · Source figures ↗
Ward vs PR ballots
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 seats