2026 local elections
IFP
Inkatha Freedom Party
What stands out
49 comparable councilsMthonjaneni
KwaZulu-Natal
Big Five Hlabisa
KwaZulu-Natal
Ulundi
KwaZulu-Natal
Alfred Duma
KwaZulu-Natal
Ulundi
KwaZulu-Natal
City of Mbombela
Mpumalanga
The long view
Local elections| Election | Votes | Vote share (%) | Availability |
|---|---|---|---|
| 2 000 | 1 576 436 | 9,1357 | Reported |
| 2 006 | 1 484 621 | 7,5276 | Reported |
| 2 011 | 954 021 | 3,5716 | Reported |
| 2 016 | 1 268 808 | 4,2487 | Reported |
| 2 021 | 1 324 267 | 5,6431 | Reported |
| 2 026 | 1 396 919 | 4,6904 | Reported |
Gaps mean unavailable data. All elections use the same ballot basis.
Ward + municipal PR vote · Gaps mean unavailable data
Across the provinces
| Province | Vote share (%) | Basis / status |
|---|---|---|
| KwaZulu-Natal | 20,1312 | IEC province summary |
| Eastern Cape | Unavailable | Unavailable |
| Free State | Unavailable | Unavailable |
| Gauteng | Unavailable | Unavailable |
| Limpopo | Unavailable | Unavailable |
| Mpumalanga | Unavailable | Unavailable |
| North West | Unavailable | Unavailable |
| Northern Cape | Unavailable | Unavailable |
| Western Cape | Unavailable | Unavailable |
Ward + municipal PR vote · * Count in progress
The council picture
211 of 213 local + metro allocations reported · Majority changes across 212 comparable councils, 2021–2026
Coalition possibilities
Johannesburg
Ekurhuleni
Seat arithmetic, not confirmed agreements. The marker shows the majority needed.
Past partners
Shared governments · Nov 2021–Feb 2026
Local results
109 councilsNo matching councils.
| Council | Province | 2026 vote share (%) | 2021 vote share (%) | Change (pp) | 2026 seats | 2021 seats |
|---|---|---|---|---|---|---|
| Ulundi | KwaZulu-Natal | 72,6662 | 65,5211 | 7,1451 | 36 | 32 |
| uMsinga | KwaZulu-Natal | 60,6266 | 67,0157 | -6,389 | 25 | 27 |
| Mthonjaneni | KwaZulu-Natal | 58,2871 | 47,9249 | 10,3622 | 15 | 12 |
| Nongoma | KwaZulu-Natal | 51,2464 | 46,1012 | 5,1452 | 23 | 21 |
| Nkandla | KwaZulu-Natal | 50,0737 | 57,0965 | -7,0227 | 14 | 16 |
| uMfolozi | KwaZulu-Natal | 44,9957 | Unavailable | Unavailable | 16 | 18 |
| Big Five Hlabisa | KwaZulu-Natal | 44,053 | 55,5952 | -11,5422 | 12 | 15 |
| uMlalazi | KwaZulu-Natal | 42,6482 | Unavailable | Unavailable | 24 | 30 |
| AbaQulusi | KwaZulu-Natal | 42,125 | Unavailable | Unavailable | 20 | 21 |
| Nqutu | KwaZulu-Natal | 42,0606 | Unavailable | Unavailable | 17 | 19 |
| uMzumbe | KwaZulu-Natal | 41,345 | Unavailable | Unavailable | 16 | 14 |
| iNkosi Langalibalele | KwaZulu-Natal | 40,8185 | Unavailable | Unavailable | 19 | 21 |
| Inkosi uMtubatuba | KwaZulu-Natal | 38,2368 | Unavailable | Unavailable | 18 | 19 |
| Jozini | KwaZulu-Natal | 35,2503 | Unavailable | Unavailable | 18 | 24 |
| uPhongolo | KwaZulu-Natal | 34,9403 | Unavailable | Unavailable | 10 | 15 |
| uMvoti | KwaZulu-Natal | 33,6888 | 33,305 | 0,3838 | 9 | 9 |
| Alfred Duma | KwaZulu-Natal | 32,3458 | Unavailable | Unavailable | 24 | 33 |
| Maphumulo | KwaZulu-Natal | 32,2836 | Unavailable | Unavailable | 8 | 10 |
| eDumbe | KwaZulu-Natal | 32,2454 | Unavailable | Unavailable | 6 | 5 |
| eMadlangeni | KwaZulu-Natal | 29,0109 | Unavailable | Unavailable | 4 | 4 |
| Okhahlamba | KwaZulu-Natal | 26,2831 | Unavailable | Unavailable | 8 | 9 |
| uMhlabuyalingana | KwaZulu-Natal | 26,2116 | Unavailable | Unavailable | 10 | 15 |
| Dannhauser | KwaZulu-Natal | 25,9094 | Unavailable | Unavailable | 7 | 8 |
| eNdumeni | KwaZulu-Natal | 24,5782 | 35,2546 | -10,6764 | 4 | 5 |
| uMhlathuze | KwaZulu-Natal | 24,5204 | Unavailable | Unavailable | 18 | 23 |
| Mandeni | KwaZulu-Natal | 21,1977 | Unavailable | Unavailable | 8 | 10 |
| Newcastle | KwaZulu-Natal | 20,2986 | Unavailable | Unavailable | 15 | 18 |
| uMuziwabantu | KwaZulu-Natal | 20,0027 | 24,0279 | -4,0252 | 4 | 5 |
| Ndwedwe | KwaZulu-Natal | 17,6431 | Unavailable | Unavailable | 7 | 11 |
| Mkhambathini | KwaZulu-Natal | 13,8731 | 11,6304 | 2,2427 | 3 | 2 |
| uMdoni | KwaZulu-Natal | 11,5444 | Unavailable | Unavailable | 4 | 5 |
| Johannes Phumani Pungula | KwaZulu-Natal | 11,5219 | 8,2821 | 3,2398 | 3 | 2 |
| Dr. Nkosazana Dlamini Zuma | KwaZulu-Natal | 11,3394 | 14,0888 | -2,7494 | 3 | 4 |
| uMshwathi | KwaZulu-Natal | 9,0287 | 14,8984 | -5,8697 | 3 | 4 |
| Ray Nkonyeni | KwaZulu-Natal | 9,0024 | Unavailable | Unavailable | 6 | 8 |
| Mpofana | KwaZulu-Natal | 8,8122 | 5,5009 | 3,3113 | 1 | 1 |
| iMpendle | KwaZulu-Natal | 8,3789 | 16,8094 | -8,4305 | 1 | 2 |
| Msunduzi | KwaZulu-Natal | 7,9367 | Unavailable | Unavailable | 7 | 8 |
| eThekwini | KwaZulu-Natal | 6,792 | Unavailable | Unavailable | 15 | 16 |
| KwaDukuza | KwaZulu-Natal | 6,2506 | Unavailable | Unavailable | 4 | 4 |
| uMzimkhulu | KwaZulu-Natal | 4,0511 | 2,8002 | 1,2509 | 2 | 1 |
| Winnie Madikizela-Mandela | Eastern Cape | 3,4641 | 0 | 3,4641 | 2 | 0 |
| Dr Pixley Ka Isaka Seme | Mpumalanga | 3,0003 | 3,3874 | -0,3871 | 1 | 1 |
| Mkhondo | Mpumalanga | 2,5677 | 3,2432 | -0,6756 | 1 | 1 |
| Johannesburg | Gauteng | 2,4646 | Unavailable | Unavailable | 7 | 7 |
| Richmond | KwaZulu-Natal | 2,4206 | 3,3423 | -0,9217 | 0 | 1 |
| Chief Albert Luthuli | Mpumalanga | 1,5695 | 1,3907 | 0,1788 | 1 | 1 |
| Govan Mbeki | Mpumalanga | 1,3771 | Unavailable | Unavailable | 1 | 1 |
| Merafong City | Gauteng | 1,2984 | Unavailable | Unavailable | 1 | 1 |
| uMngeni | KwaZulu-Natal | 1,1935 | 1,1341 | 0,0594 | 1 | 0 |
| Ekurhuleni | Gauteng | 1,1695 | Unavailable | Unavailable | 3 | 3 |
| Greater Kokstad | KwaZulu-Natal | 1,0349 | 1,1238 | -0,089 | 0 | 0 |
| Senqu | Eastern Cape | 0,8998 | 0 | 0,8998 | 0 | 0 |
| Siyancuma | Northern Cape | 0,8244 | 0 | 0,8244 | 0 | 0 |
| Mogale City | Gauteng | 0,8101 | Unavailable | Unavailable | 1 | 1 |
| Phumelela | Free State | 0,772 | 1,795 | -1,023 | 0 | 0 |
| Emalahleni | Mpumalanga | 0,741 | Unavailable | Unavailable | 1 | 0 |
| Msukaligwa | Mpumalanga | 0,7249 | 1,0835 | -0,3586 | 0 | 0 |
| Steve Tshwete | Mpumalanga | 0,5721 | 0 | 0,5721 | 0 | 0 |
| Lesedi | Gauteng | 0,5668 | Unavailable | Unavailable | 0 | 0 |
| Matjhabeng | Free State | 0,5662 | Unavailable | Unavailable | 1 | Unavailable |
| Mafube | Free State | 0,5529 | 1,1239 | -0,5711 | 0 | 0 |
| Ubuntu | Northern Cape | 0,5445 | 0 | 0,5445 | 0 | 0 |
| Rand West City | Gauteng | 0,5416 | Unavailable | Unavailable | 0 | 1 |
| Moretele | North West | 0,518 | Unavailable | Unavailable | 0 | 0 |
| Thabazimbi | Limpopo | 0,5173 | 0 | 0,5173 | 0 | 0 |
| Mafikeng | North West | 0,4926 | Unavailable | Unavailable | 0 | 0 |
| Tswaing | North West | 0,4806 | 0 | 0,4806 | 0 | 0 |
| Lekwa | Mpumalanga | 0,4762 | 0,8142 | -0,338 | 0 | 0 |
| Dipaleseng | Mpumalanga | 0,4618 | 0,5769 | -0,1151 | 0 | 0 |
| Ntabankulu | Eastern Cape | 0,3764 | 0 | 0,3764 | 0 | 0 |
| Matatiele | Eastern Cape | 0,3548 | Unavailable | Unavailable | 0 | 0 |
| Setsoto | Free State | 0,3499 | 0,8646 | -0,5146 | 0 | 0 |
| Phokwane | Northern Cape | 0,3317 | 0 | 0,3317 | 0 | 0 |
| Kagisano-Molopo | North West | 0,3271 | 0 | 0,3271 | 0 | 0 |
| Ratlou | North West | 0,2904 | 0 | 0,2904 | 0 | 0 |
| Maluti a Phofung | Free State | 0,2829 | Unavailable | Unavailable | 0 | Unavailable |
| Raymond Mhlaba | Eastern Cape | 0,2249 | 0 | 0,2249 | 0 | 0 |
| Ditsobotla | North West | 0,2064 | Unavailable | Unavailable | 0 | Unavailable |
| Ramotshere Moiloa | North West | 0,1979 | Unavailable | Unavailable | 0 | Unavailable |
| Emfuleni | Gauteng | 0,1931 | Unavailable | Unavailable | 0 | Unavailable |
| Midvaal | Gauteng | 0,1783 | Unavailable | Unavailable | 0 | Unavailable |
| Nkomazi | Mpumalanga | 0,1715 | Unavailable | Unavailable | 0 | Unavailable |
| Tshwane | Gauteng | 0,1656 | Unavailable | Unavailable | 0 | Unavailable |
| Thembisile Hani | Mpumalanga | 0,1568 | Unavailable | Unavailable | 0 | 0 |
| King Sabata Dalindyebo | Eastern Cape | 0,1466 | 0 | 0,1466 | Unavailable | 0 |
| Umzimvubu | Eastern Cape | 0,1263 | 0 | 0,1263 | 0 | 0 |
| Greater Tzaneen | Limpopo | 0,1216 | Unavailable | Unavailable | 0 | Unavailable |
| Moqhaka | Free State | 0,1209 | Unavailable | Unavailable | 0 | 0 |
| Metsimaholo | Free State | 0,1205 | Unavailable | Unavailable | 0 | 0 |
| Matlosana | North West | 0,1179 | Unavailable | Unavailable | 0 | Unavailable |
| Mangaung | Free State | 0,1155 | Unavailable | Unavailable | 0 | Unavailable |
| Thulamela | Limpopo | 0,1138 | Unavailable | Unavailable | 0 | 0 |
| Dr. A.B. Xuma | Eastern Cape | 0,0961 | 0 | 0,0961 | 0 | 0 |
| Madibeng | North West | 0,0928 | Unavailable | Unavailable | 0 | Unavailable |
| Cape Town | Western Cape | 0,0686 | Unavailable | Unavailable | 0 | Unavailable |
| Lepele-Nkumpi | Limpopo | 0,0686 | Unavailable | Unavailable | 0 | Unavailable |
| Buffalo City | Eastern Cape | 0,0667 | Unavailable | Unavailable | 0 | Unavailable |
| Rustenburg | North West | 0,0612 | Unavailable | Unavailable | 0 | Unavailable |
| Greater Giyani | Limpopo | 0,058 | Unavailable | Unavailable | 0 | Unavailable |
| Makhuduthamaga | Limpopo | 0,0561 | Unavailable | Unavailable | 0 | Unavailable |
| Amahlathi | Eastern Cape | 0,0529 | 0,1822 | -0,1293 | 0 | 0 |
| Fetakgomo Tubatse | Limpopo | 0,0516 | Unavailable | Unavailable | 0 | Unavailable |
| Sol Plaatje | Northern Cape | 0,0496 | Unavailable | Unavailable | 0 | Unavailable |
| City of Mbombela | Mpumalanga | 0,0486 | 0,1148 | -0,0661 | 0 | 0 |
| Intsika Yethu | Eastern Cape | 0 | 0,2737 | -0,2737 | 0 | 0 |
| Nala | Free State | 0 | 0,2374 | -0,2374 | 0 | 0 |
| Ngquza Hill | Eastern Cape | 0 | 0,2716 | -0,2716 | 0 | 0 |
| Ngwathe | Free State | 0 | 0,1185 | -0,1185 | 0 | 0 |
Ward + municipal PR ballots. Missing comparisons remain unavailable; changes use comparable completed counts.
Ward + municipal PR vote · Change in percentage points since 2021 · Missing comparisons shown as —