2026 local elections
ATM
African Transformation Movement
What stands out
93 comparable councilsDr. A.B. Xuma
Eastern Cape
Lephalale
Limpopo
Nyandeni
Eastern Cape
Bushbuckridge
Mpumalanga
Nyandeni
Eastern Cape
uMsinga
KwaZulu-Natal
The long view
Local elections| Election | Votes | Vote share (%) | Availability |
|---|---|---|---|
| 2 000 | Unavailable | Unavailable | Not separately listed in this source. |
| 2 006 | Unavailable | Unavailable | Not separately listed in this source. |
| 2 011 | Unavailable | Unavailable | Not separately listed in this source. |
| 2 016 | Unavailable | Unavailable | Not separately listed in this source. |
| 2 021 | 134 434 | 0,5729 | Reported |
| 2 026 | 291 919 | 0,9802 | 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 |
|---|---|---|
| Eastern Cape | Unavailable | Unavailable |
| Free State | Unavailable | Unavailable |
| Gauteng | Unavailable | Unavailable |
| KwaZulu-Natal | 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
Buffalo City
Ekurhuleni
Seat arithmetic, not confirmed agreements. The marker shows the majority needed.
Past partners
Shared governments · Nov 2021–Feb 2026
Local results
178 councilsNo matching councils.
| Council | Province | 2026 vote share (%) | 2021 vote share (%) | Change (pp) | 2026 seats | 2021 seats |
|---|---|---|---|---|---|---|
| Nyandeni | Eastern Cape | 17,8186 | 7,7648 | 10,0538 | 12 | 5 |
| Dr. A.B. Xuma | Eastern Cape | 16,9114 | 3,0154 | 13,896 | 7 | 1 |
| Kumkani Mhlontlo | Eastern Cape | 13,723 | 4,3105 | 9,4125 | 7 | 2 |
| King Sabata Dalindyebo | Eastern Cape | 9,6302 | 4,6782 | 4,952 | Unavailable | 3 |
| Winnie Madikizela-Mandela | Eastern Cape | 8,3127 | 6,9326 | 1,3801 | 5 | 5 |
| Port St Johns | Eastern Cape | 6,0872 | 4,1302 | 1,957 | 3 | 2 |
| Elundini | Eastern Cape | 5,7911 | 1,945 | 3,8461 | 2 | 1 |
| Mbhashe | Eastern Cape | 5,4041 | Unavailable | Unavailable | 3 | 1 |
| Sakhisizwe | Eastern Cape | 4,9749 | 3,3694 | 1,6056 | 1 | 1 |
| Ngquza Hill | Eastern Cape | 4,5484 | 2,1427 | 2,4057 | 3 | 1 |
| Umzimvubu | Eastern Cape | 4,543 | 2,7696 | 1,7734 | 3 | 2 |
| Senqu | Eastern Cape | 4,2994 | 0,9874 | 3,312 | 1 | 0 |
| Mnquma | Eastern Cape | 3,9157 | Unavailable | Unavailable | Unavailable | 2 |
| Ntabankulu | Eastern Cape | 3,8981 | 1,5991 | 2,2991 | 2 | 1 |
| Amahlathi | Eastern Cape | 3,7985 | 0,8385 | 2,96 | 1 | 0 |
| Matatiele | Eastern Cape | 2,9291 | Unavailable | Unavailable | 2 | 1 |
| Enoch Mgijima | Eastern Cape | 2,7455 | Unavailable | Unavailable | 2 | 1 |
| Raymond Mhlaba | Eastern Cape | 2,6334 | 1,0737 | 1,5596 | 1 | 0 |
| Walter Sisulu | Eastern Cape | 2,586 | 1,6379 | 0,9481 | 1 | 0 |
| Phumelela | Free State | 2,4679 | 1,1329 | 1,335 | 1 | 0 |
| Intsika Yethu | Eastern Cape | 2,1344 | 1,1427 | 0,9917 | 1 | 0 |
| Maluti a Phofung | Free State | 2,0696 | Unavailable | Unavailable | 2 | 1 |
| Buffalo City | Eastern Cape | 2,0423 | Unavailable | Unavailable | 2 | 1 |
| Greater Kokstad | KwaZulu-Natal | 1,866 | 1,1838 | 0,6822 | 1 | 0 |
| Mafube | Free State | 1,7921 | 1,728 | 0,0642 | 0 | 0 |
| Govan Mbeki | Mpumalanga | 1,582 | Unavailable | Unavailable | 1 | 1 |
| Matjhabeng | Free State | 1,3856 | Unavailable | Unavailable | 1 | 1 |
| Dipaleseng | Mpumalanga | 1,3774 | 2,0245 | -0,6471 | 0 | 0 |
| uMzumbe | KwaZulu-Natal | 1,3173 | Unavailable | Unavailable | 1 | 1 |
| Ditsobotla | North West | 1,3148 | Unavailable | Unavailable | 1 | Unavailable |
| Emalahleni | Eastern Cape | 1,3121 | 1,113 | 0,1991 | 1 | 0 |
| Ray Nkonyeni | KwaZulu-Natal | 1,2649 | Unavailable | Unavailable | 1 | 1 |
| Masilonyana | Free State | 1,2045 | 0,9462 | 0,2584 | 0 | 0 |
| Lekwa | Mpumalanga | 1,1846 | 1,8765 | -0,6919 | 0 | 1 |
| Ngqushwa | Eastern Cape | 1,1512 | 1,6569 | -0,5057 | 0 | 0 |
| Makana | Eastern Cape | 1,1373 | 0,6618 | 0,4755 | 0 | 0 |
| Tswelopele | Free State | 1,1099 | 1,1726 | -0,0627 | 0 | 0 |
| KHâI-MA | Northern Cape | 1,1048 | 0,3444 | 0,7604 | 0 | 0 |
| Overstrand | Western Cape | 1,0878 | Unavailable | Unavailable | 0 | Unavailable |
| Nongoma | KwaZulu-Natal | 1,072 | 0,1003 | 0,9717 | 1 | 0 |
| Johannesburg | Gauteng | 1,0585 | Unavailable | Unavailable | 3 | Unavailable |
| Nelson Mandela Bay | Eastern Cape | 1,0248 | Unavailable | Unavailable | 1 | Unavailable |
| Setsoto | Free State | 0,9466 | 1,2814 | -0,3349 | 0 | 1 |
| Mangaung | Free State | 0,9255 | Unavailable | Unavailable | 1 | 1 |
| Lephalale | Limpopo | 0,9168 | 3,6783 | -2,7615 | 1 | 1 |
| Nketoana | Free State | 0,8846 | 1,779 | -0,8944 | 0 | 0 |
| Cape Town | Western Cape | 0,8666 | Unavailable | Unavailable | 2 | Unavailable |
| Metsimaholo | Free State | 0,7991 | Unavailable | Unavailable | 1 | 1 |
| Ndwedwe | KwaZulu-Natal | 0,7991 | Unavailable | Unavailable | 0 | 0 |
| Nkomazi | Mpumalanga | 0,7937 | Unavailable | Unavailable | 1 | 1 |
| eThekwini | KwaZulu-Natal | 0,7935 | Unavailable | Unavailable | 2 | 1 |
| uMuziwabantu | KwaZulu-Natal | 0,7724 | 1,4204 | -0,648 | 0 | 0 |
| Rand West City | Gauteng | 0,7718 | Unavailable | Unavailable | 1 | Unavailable |
| Kopanong | Free State | 0,7717 | 0,5652 | 0,2064 | 0 | 0 |
| Stellenbosch | Western Cape | 0,7683 | Unavailable | Unavailable | 1 | 0 |
| Msukaligwa | Mpumalanga | 0,7398 | 0,7138 | 0,026 | 0 | 0 |
| Bitou | Western Cape | 0,7344 | Unavailable | Unavailable | 0 | 0 |
| Great Kei | Eastern Cape | 0,7313 | 0,5149 | 0,2165 | 0 | 0 |
| Chief Albert Luthuli | Mpumalanga | 0,7274 | 0,5245 | 0,2029 | 0 | 0 |
| Nala | Free State | 0,7248 | 0,8408 | -0,116 | 0 | 0 |
| Ekurhuleni | Gauteng | 0,7143 | Unavailable | Unavailable | 2 | Unavailable |
| Mkhondo | Mpumalanga | 0,7094 | 1,9331 | -1,2237 | 0 | 1 |
| Mogale City | Gauteng | 0,7088 | Unavailable | Unavailable | 1 | 1 |
| Emfuleni | Gauteng | 0,6918 | Unavailable | Unavailable | 1 | 0 |
| Okhahlamba | KwaZulu-Natal | 0,6489 | Unavailable | Unavailable | 0 | 0 |
| Moses Kotane | North West | 0,6387 | Unavailable | Unavailable | 1 | Unavailable |
| Lesedi | Gauteng | 0,6272 | Unavailable | Unavailable | 0 | 0 |
| Dihlabeng | Free State | 0,5956 | Unavailable | Unavailable | 0 | 0 |
| uMdoni | KwaZulu-Natal | 0,5876 | Unavailable | Unavailable | 0 | 0 |
| Thabazimbi | Limpopo | 0,5822 | 0,6035 | -0,0212 | 0 | 0 |
| City of Mbombela | Mpumalanga | 0,5643 | 0,758 | -0,1937 | 1 | 1 |
| KwaDukuza | KwaZulu-Natal | 0,5432 | Unavailable | Unavailable | 0 | 1 |
| Rustenburg | North West | 0,5432 | Unavailable | Unavailable | 1 | 0 |
| George | Western Cape | 0,4988 | Unavailable | Unavailable | 0 | 0 |
| eMadlangeni | KwaZulu-Natal | 0,4831 | Unavailable | Unavailable | 0 | 0 |
| Tokologo | Free State | 0,4772 | 0,9001 | -0,4229 | 0 | 0 |
| iMpendle | KwaZulu-Natal | 0,4698 | 1,0202 | -0,5504 | 0 | 0 |
| Ngwathe | Free State | 0,4568 | 0,4671 | -0,0103 | 0 | 0 |
| Mogalakwena | Limpopo | 0,4527 | Unavailable | Unavailable | 0 | 0 |
| Moqhaka | Free State | 0,4474 | Unavailable | Unavailable | 0 | 0 |
| Dr JS Moroka | Mpumalanga | 0,4463 | Unavailable | Unavailable | 0 | Unavailable |
| Emalahleni | Mpumalanga | 0,4421 | Unavailable | Unavailable | 0 | 0 |
| Mantsopa | Free State | 0,4301 | 1,0163 | -0,5861 | 0 | 0 |
| Mthonjaneni | KwaZulu-Natal | 0,4196 | 0,4419 | -0,0223 | 0 | 0 |
| Saldanha Bay | Western Cape | 0,4106 | Unavailable | Unavailable | 0 | Unavailable |
| eDumbe | KwaZulu-Natal | 0,4094 | Unavailable | Unavailable | 0 | 0 |
| Steve Tshwete | Mpumalanga | 0,4032 | 0,3475 | 0,0557 | 0 | 0 |
| Johannes Phumani Pungula | KwaZulu-Natal | 0,4013 | 0,449 | -0,0477 | 0 | 0 |
| Newcastle | KwaZulu-Natal | 0,3984 | Unavailable | Unavailable | 0 | 1 |
| Swartland | Western Cape | 0,397 | Unavailable | Unavailable | 0 | Unavailable |
| Sol Plaatje | Northern Cape | 0,3899 | Unavailable | Unavailable | 0 | 0 |
| eNdumeni | KwaZulu-Natal | 0,3741 | 0,4408 | -0,0667 | 0 | 0 |
| Theewaterskloof | Western Cape | 0,3664 | Unavailable | Unavailable | 0 | Unavailable |
| Dannhauser | KwaZulu-Natal | 0,3659 | Unavailable | Unavailable | 0 | Unavailable |
| Elias Motsoaledi | Limpopo | 0,3615 | Unavailable | Unavailable | 0 | Unavailable |
| Msunduzi | KwaZulu-Natal | 0,3597 | Unavailable | Unavailable | 0 | 0 |
| Alfred Duma | KwaZulu-Natal | 0,3539 | Unavailable | Unavailable | 0 | Unavailable |
| Inxuba Yethemba | Eastern Cape | 0,3511 | 0,1956 | 0,1555 | 0 | 0 |
| Ndlambe | Eastern Cape | 0,3452 | 0,2226 | 0,1226 | 0 | 0 |
| uMzimkhulu | KwaZulu-Natal | 0,3441 | 0,3721 | -0,0279 | 0 | 0 |
| Merafong City | Gauteng | 0,3438 | Unavailable | Unavailable | 0 | 0 |
| Mohokare | Free State | 0,3364 | 0,218 | 0,1184 | 0 | 0 |
| Midvaal | Gauteng | 0,3176 | Unavailable | Unavailable | 0 | 0 |
| Mpofana | KwaZulu-Natal | 0,3161 | 0 | 0,3161 | 0 | 0 |
| Bela-Bela | Limpopo | 0,3074 | 0,172 | 0,1354 | 0 | 0 |
| Thembisile Hani | Mpumalanga | 0,3069 | Unavailable | Unavailable | 0 | 1 |
| Mandeni | KwaZulu-Natal | 0,2987 | Unavailable | Unavailable | 0 | 0 |
| Bushbuckridge | Mpumalanga | 0,2967 | Unavailable | Unavailable | 0 | 1 |
| Ulundi | KwaZulu-Natal | 0,279 | 0,0278 | 0,2512 | 0 | 0 |
| uPhongolo | KwaZulu-Natal | 0,2753 | Unavailable | Unavailable | 0 | 0 |
| Ga-Segonyana | Northern Cape | 0,2735 | 0,0672 | 0,2063 | 0 | 0 |
| Big Five Hlabisa | KwaZulu-Natal | 0,2686 | 0,051 | 0,2176 | 0 | 0 |
| Tshwane | Gauteng | 0,2672 | Unavailable | Unavailable | 1 | Unavailable |
| Drakenstein | Western Cape | 0,2666 | Unavailable | Unavailable | 0 | Unavailable |
| Dikgatlong | Northern Cape | 0,2632 | 0,5282 | -0,265 | 0 | 0 |
| Thaba Chweu | Mpumalanga | 0,2534 | 0,1109 | 0,1425 | 0 | 0 |
| uMshwathi | KwaZulu-Natal | 0,2484 | 0 | 0,2484 | 0 | 0 |
| Sundays River Valley | Eastern Cape | 0,2394 | 0,5895 | -0,3501 | 0 | 0 |
| Letsemeng | Free State | 0,223 | 0,3276 | -0,1046 | 0 | 0 |
| Matlosana | North West | 0,2163 | Unavailable | Unavailable | 0 | 0 |
| Matzikama | Western Cape | 0,2099 | 0 | 0,2099 | 0 | 0 |
| Blue Crane Route | Eastern Cape | 0,2063 | 0,1667 | 0,0396 | 0 | 0 |
| uMhlathuze | KwaZulu-Natal | 0,2016 | Unavailable | Unavailable | 0 | Unavailable |
| Dr Pixley Ka Isaka Seme | Mpumalanga | 0,1926 | 0,7796 | -0,587 | 0 | 0 |
| Victor Khanye | Mpumalanga | 0,1866 | 0,3972 | -0,2107 | 0 | 0 |
| Madibeng | North West | 0,1818 | Unavailable | Unavailable | 0 | Unavailable |
| iNkosi Langalibalele | KwaZulu-Natal | 0,1784 | Unavailable | Unavailable | 0 | Unavailable |
| Richmond | KwaZulu-Natal | 0,1778 | 0,8364 | -0,6585 | 0 | 0 |
| Dr. Nkosazana Dlamini Zuma | KwaZulu-Natal | 0,1778 | 0,2211 | -0,0434 | 0 | 0 |
| Ephraim Mogale | Limpopo | 0,1664 | Unavailable | Unavailable | 0 | Unavailable |
| Breede Valley | Western Cape | 0,1603 | Unavailable | Unavailable | 0 | Unavailable |
| uMlalazi | KwaZulu-Natal | 0,16 | Unavailable | Unavailable | 0 | Unavailable |
| uMhlabuyalingana | KwaZulu-Natal | 0,1585 | Unavailable | Unavailable | 0 | Unavailable |
| Witzenberg | Western Cape | 0,1565 | Unavailable | Unavailable | 0 | Unavailable |
| Mkhambathini | KwaZulu-Natal | 0,1543 | 2,092 | -1,9377 | 0 | 0 |
| Dr. Beyers Naude | Eastern Cape | 0,1534 | 0,1031 | 0,0503 | 0 | 0 |
| Kou-Kamma | Eastern Cape | 0,1454 | 0,4755 | -0,3301 | 0 | 0 |
| Nqutu | KwaZulu-Natal | 0,1438 | Unavailable | Unavailable | 0 | 0 |
| uMvoti | KwaZulu-Natal | 0,1424 | 0,2387 | -0,0963 | 0 | 0 |
| Lepele-Nkumpi | Limpopo | 0,1406 | Unavailable | Unavailable | 0 | 0 |
| Modimolle-Mookgophong | Limpopo | 0,1401 | 0,3866 | -0,2464 | 0 | 0 |
| Kouga | Eastern Cape | 0,1323 | 0,0602 | 0,0721 | 0 | 0 |
| Bergrivier | Western Cape | 0,13 | 0 | 0,13 | 0 | 0 |
| Ba-Phalaborwa | Limpopo | 0,1278 | Unavailable | Unavailable | 0 | Unavailable |
| Polokwane | Limpopo | 0,1221 | Unavailable | Unavailable | 0 | Unavailable |
| Phokwane | Northern Cape | 0,1208 | 0 | 0,1208 | 0 | 0 |
| Dawid Kruiper | Northern Cape | 0,1193 | 0,0683 | 0,0511 | 0 | 0 |
| Blouberg | Limpopo | 0,1189 | Unavailable | Unavailable | 0 | Unavailable |
| AbaQulusi | KwaZulu-Natal | 0,1137 | Unavailable | Unavailable | 0 | Unavailable |
| Makhuduthamaga | Limpopo | 0,1095 | Unavailable | Unavailable | 0 | Unavailable |
| Maruleng | Limpopo | 0,1058 | 0 | 0,1058 | 0 | 0 |
| uMfolozi | KwaZulu-Natal | 0,1057 | Unavailable | Unavailable | 0 | 0 |
| Molemole | Limpopo | 0,1055 | Unavailable | Unavailable | 0 | 0 |
| Fetakgomo Tubatse | Limpopo | 0,1043 | Unavailable | Unavailable | 0 | Unavailable |
| Inkosi uMtubatuba | KwaZulu-Natal | 0,1006 | Unavailable | Unavailable | 0 | Unavailable |
| Greater Giyani | Limpopo | 0,0997 | Unavailable | Unavailable | 0 | Unavailable |
| Greater Letaba | Limpopo | 0,0946 | Unavailable | Unavailable | 0 | Unavailable |
| Makhado | Limpopo | 0,0933 | Unavailable | Unavailable | 0 | Unavailable |
| Cederberg | Western Cape | 0,0918 | 0 | 0,0918 | 0 | 0 |
| Greater Tzaneen | Limpopo | 0,0857 | Unavailable | Unavailable | 0 | Unavailable |
| uMngeni | KwaZulu-Natal | 0,0834 | 0,1121 | -0,0287 | 0 | 0 |
| Maphumulo | KwaZulu-Natal | 0,0812 | Unavailable | Unavailable | 0 | Unavailable |
| Hessequa | Western Cape | 0,0757 | 0 | 0,0757 | 0 | 0 |
| Musina | Limpopo | 0,0726 | 0 | 0,0726 | 0 | 0 |
| Thulamela | Limpopo | 0,0725 | Unavailable | Unavailable | 0 | Unavailable |
| Nama Khoi | Northern Cape | 0,0718 | 0,0639 | 0,0079 | 0 | 0 |
| Nkandla | KwaZulu-Natal | 0,07 | 0,0516 | 0,0184 | 0 | 0 |
| Jozini | KwaZulu-Natal | 0,0692 | Unavailable | Unavailable | 0 | 0 |
| Kai !Garib | Northern Cape | 0,0675 | 0 | 0,0675 | 0 | 0 |
| Collins Chabane | Limpopo | 0,0528 | Unavailable | Unavailable | 0 | Unavailable |
| uMsinga | KwaZulu-Natal | 0,0508 | 0,0228 | 0,028 | 0 | 0 |
| Emakhazeni | Mpumalanga | 0 | 0,2458 | -0,2458 | 0 | 0 |
| JB Marks | North West | 0 | 0,3239 | -0,3239 | 0 | 0 |
| Kgetlengrivier | North West | 0 | 0,3428 | -0,3428 | 0 | 0 |
| Mamusa | North West | 0 | 0,3283 | -0,3283 | 0 | 0 |
| Maquassi Hills | North West | 0 | 0,1509 | -0,1509 | 0 | 0 |
| Naledi | North West | 0 | 0,0815 | -0,0815 | 0 | 0 |
| Ratlou | North West | 0 | 0,6382 | -0,6382 | 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 —