{"level":"municipality","id":"2220","through":2026,"basis":"source_total","ballotLabel":"Ward + municipal PR votes","years":[2000,2006,2011,2016,2021,2026],"elections":[{"year":2000,"name":"FS195 - Phumelela","basis":"source_total","status":"historical","declaration":null,"total":25807,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":20702,"share":80.21854535591119},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":4932,"share":19.111093889254853}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":20702,"share":80.21854535591119},"leaderScope":"published_vote_leader","reporting":{"completed":29,"expected":29,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2000/EEID2Munic2220.js","snapshotId":"2000:municipality:2220:v2:073937793b566ec9efb95ecd56f30f4855610c18b8cfd093240bdb791c39752c","reportedAt":"2021-10-25T12:56:09.628Z","checkedAt":"2026-11-05T13:58:03.669Z","successfulAt":"2026-11-05T13:58:03.669Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":25807,"source_reported_valid_ballots":25807,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2006,"name":"FS195 - Phumelela","basis":"source_total","status":"historical","declaration":null,"total":25311,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":20269,"share":80.07980719845126},{"id":"241","name":"PHUMELELA RATEPAYERS' ASSOCIATION","votes":2120,"share":8.375804985974478},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":1524,"share":6.021097546521275},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":894,"share":3.5320611591798037},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","votes":504,"share":1.9912291098731778}],"seats":{"total":14,"majority":8,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":11,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":1,"grouped":false},{"id":"241","name":"PHUMELELA RATEPAYERS' ASSOCIATION","count":1,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":1,"grouped":false},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","count":0,"grouped":false}],"winner":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":11}},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":20269,"share":80.07980719845126},"leaderScope":"published_vote_leader","reporting":{"completed":27,"expected":27,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2006/EEID95Munic2220.js","snapshotId":"2006:municipality:2220:v2:ab2fbc4207b7d2cb7f3fd515bd8f1c218d23ef9baca5f414e6ffceefa1c97b89","reportedAt":"2016-07-29T07:34:20.123Z","checkedAt":"2026-11-05T13:52:45.003Z","successfulAt":"2026-11-05T13:52:45.003Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":25311,"source_reported_valid_ballots":25311,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2011,"name":"FS195 - Phumelela","basis":"source_total","status":"historical","declaration":null,"total":28388,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":21918,"share":77.20867972382696},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":4963,"share":17.48273918557137},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":861,"share":3.0329716781738765},{"id":"241","name":"PHUMELELA RATEPAYERS' ASSOCIATION","votes":468,"share":1.6485839086938143},{"id":"591","name":"NATIONAL FREEDOM PARTY","votes":178,"share":0.6270255037339721}],"seats":{"total":15,"majority":8,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":12,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":3,"grouped":false},{"id":"591","name":"NATIONAL FREEDOM PARTY","count":0,"grouped":false},{"id":"241","name":"PHUMELELA RATEPAYERS' ASSOCIATION","count":0,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":0,"grouped":false}],"winner":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":12}},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":21918,"share":77.20867972382696},"leaderScope":"published_vote_leader","reporting":{"completed":36,"expected":36,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2011/EEID197Munic2220.js","snapshotId":"2011:municipality:2220:v2:a86bb3c3cd35575288126ff050bb28c91bce5e4e29ebce1add0f0c139ccd4229","reportedAt":"2021-10-25T13:03:56.439Z","checkedAt":"2026-11-05T13:46:50.186Z","successfulAt":"2026-11-05T13:46:50.186Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":28388,"source_reported_valid_ballots":28388,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2016,"name":"FS195 - Phumelela","basis":"source_total","status":"historical","declaration":null,"total":29803,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":23018,"share":77.23383551991411},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":4186,"share":14.045565882629266},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":1553,"share":5.210884810254001},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":1002,"share":3.362077643190283}],"seats":{"total":15,"majority":8,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":12,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":2,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":1,"grouped":false},{"id":"0","name":"INDEPENDENTS","count":0,"grouped":true},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":0,"grouped":false}],"winner":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":12}},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":23018,"share":77.23383551991411},"leaderScope":"published_vote_leader","reporting":{"completed":41,"expected":41,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2016/EEID402Munic2220.js","snapshotId":"2016:municipality:2220:v2:e8d3842715c1e19cbce43c4dec6709d145015fff72c83933a05e6f4bf2bf24b6","reportedAt":"2017-04-06T09:45:33.051Z","checkedAt":"2026-11-05T13:40:58.673Z","successfulAt":"2026-11-05T13:40:58.673Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":29803,"source_reported_valid_ballots":29803,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2021,"name":"FS195 - Phumelela","basis":"source_total","status":"historical","declaration":null,"total":21449,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":13769,"share":64.19413492470511},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":2613,"share":12.182386125227284},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":2286,"share":10.657839526318243},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":1182,"share":5.510746421744604},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":385,"share":1.7949554757797568},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":243,"share":1.1329199496480022},{"id":"1361","name":"AFRICAN FREEDOM REVOLUTION","votes":204,"share":0.9510932910625204}],"seats":{"total":16,"majority":9,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":11,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":2,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":2,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":1,"grouped":false},{"id":"1361","name":"AFRICAN FREEDOM REVOLUTION","count":0,"grouped":false},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","count":0,"grouped":false},{"id":"0","name":"INDEPENDENTS","count":0,"grouped":true},{"id":"3","name":"INKATHA FREEDOM PARTY","count":0,"grouped":false}],"winner":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":11}},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":13769,"share":64.19413492470511},"leaderScope":"published_vote_leader","reporting":{"completed":42,"expected":42,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic2220.js","snapshotId":"2021:municipality:2220:v2:a83b8d38e7a5a1145d2d4fbf4683ec99241c1f8da47c7dd055402a66d0f4a759","reportedAt":"2022-01-15T15:50:31.691Z","checkedAt":"2026-11-05T13:38:15.258Z","successfulAt":"2026-11-05T13:38:15.258Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":21449,"source_reported_valid_ballots":21449,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2026,"name":"FS195 - Phumelela","basis":"source_total","status":"declared","declaration":{"date":"2026-11-08","date_label":"8 November 2026","scope":"national_election","source_url":"https://iol.co.za/lge2026/live-or-the-people-have-spoken-ramaphosa-urges-everyone-to-work-together/","source_title":"IEC declaration ceremony — IOL live coverage, 8 November 2026","note":"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."},"total":25001,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":11165,"share":44.65821367145314},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":4900,"share":19.599216031358747},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":3188,"share":12.751489940402383},{"id":"1863","name":"SERVICE DELIVERY PARTY","votes":1542,"share":6.167753289868405},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":1535,"share":6.139754409823607},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":994,"share":3.975840966361346},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":617,"share":2.4679012839486423},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":386,"share":1.5439382424703012},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":193,"share":0.7719691212351506},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":136,"share":0.5439782408703652},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","votes":111,"share":0.44398224071037157},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":100,"share":0.39998400063997436},{"id":"1370","name":"AFRICAN CONTENT MOVEMENT","votes":71,"share":0.2839886404543818},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","votes":63,"share":0.25198992040318385}],"seats":{"total":16,"majority":9,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":8,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":3,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":2,"grouped":false},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","count":1,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":1,"grouped":false},{"id":"1863","name":"SERVICE DELIVERY PARTY","count":1,"grouped":false},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","count":0,"grouped":false},{"id":"1370","name":"AFRICAN CONTENT MOVEMENT","count":0,"grouped":false},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","count":0,"grouped":false},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","count":0,"grouped":false},{"id":"3","name":"INKATHA FREEDOM PARTY","count":0,"grouped":false},{"id":"957","name":"PATRIOTIC ALLIANCE","count":0,"grouped":false},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","count":0,"grouped":false},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","count":0,"grouped":false}],"winner":null},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":11165,"share":44.65821367145314},"leaderScope":"published_vote_leader","reporting":{"completed":43,"expected":43,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic2220.js","snapshotId":"2026:municipality:2220:v3:pack1:29cdfc629cb54c6c39cf308db85ea24268095f96c60d2d0ae0ef89c2d34118d0:c9fcbb37607ae50a05c3ac0e6f39340e91167a12dfc38d71a47c9b16024664d0","reportedAt":"2026-11-08T19:26:35.287Z","checkedAt":"2026-11-11T06:35:15.587Z","successfulAt":"2026-11-11T06:35:15.587Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":25001,"source_reported_valid_ballots":25001,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null}],"series":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","short":"ANC","color":"#b29022","points":[{"year":2000,"share":80.21854535591119,"votes":20702,"status":"historical","reason":null},{"year":2006,"share":80.07980719845126,"votes":20269,"status":"historical","reason":null},{"year":2011,"share":77.20867972382696,"votes":21918,"status":"historical","reason":null},{"year":2016,"share":77.23383551991411,"votes":23018,"status":"historical","reason":null},{"year":2021,"share":64.19413492470511,"votes":13769,"status":"historical","reason":null},{"year":2026,"share":44.65821367145314,"votes":11165,"status":"declared","reason":null}],"peak":80.21854535591119},{"id":"52","name":"DEMOCRATIC ALLIANCE","short":"DA","color":"#2872ba","points":[{"year":2000,"share":19.111093889254853,"votes":4932,"status":"historical","reason":null},{"year":2006,"share":6.021097546521275,"votes":1524,"status":"historical","reason":null},{"year":2011,"share":17.48273918557137,"votes":4963,"status":"historical","reason":null},{"year":2016,"share":14.045565882629266,"votes":4186,"status":"historical","reason":null},{"year":2021,"share":12.182386125227284,"votes":2613,"status":"historical","reason":null},{"year":2026,"share":19.599216031358747,"votes":4900,"status":"declared","reason":null}],"peak":19.599216031358747},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","short":"FF+","color":"#ba632f","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":3.5320611591798037,"votes":894,"status":"historical","reason":null},{"year":2011,"share":3.0329716781738765,"votes":861,"status":"historical","reason":null},{"year":2016,"share":3.362077643190283,"votes":1002,"status":"historical","reason":null},{"year":2021,"share":5.510746421744604,"votes":1182,"status":"historical","reason":null},{"year":2026,"share":12.751489940402383,"votes":3188,"status":"declared","reason":null}],"peak":12.751489940402383},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","short":"EFF","color":"#b64038","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":5.210884810254001,"votes":1553,"status":"historical","reason":null},{"year":2021,"share":10.657839526318243,"votes":2286,"status":"historical","reason":null},{"year":2026,"share":6.139754409823607,"votes":1535,"status":"declared","reason":null}],"peak":10.657839526318243},{"id":"241","name":"PHUMELELA RATEPAYERS' ASSOCIATION","short":"PHUMELELA RATEPAYERS' ASSOCIATION","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":8.375804985974478,"votes":2120,"status":"historical","reason":null},{"year":2011,"share":1.6485839086938143,"votes":468,"status":"historical","reason":null},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":8.375804985974478},{"id":"1863","name":"SERVICE DELIVERY PARTY","short":"SERVICE DELIVERY PARTY","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":6.167753289868405,"votes":1542,"status":"declared","reason":null}],"peak":6.167753289868405},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","short":"MKP","color":"#54632c","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":3.975840966361346,"votes":994,"status":"declared","reason":null}],"peak":3.975840966361346},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","short":"ATM","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":1.1329199496480022,"votes":243,"status":"historical","reason":null},{"year":2026,"share":2.4679012839486423,"votes":617,"status":"declared","reason":null}],"peak":2.4679012839486423},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","short":"PAC","color":"#40846a","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":1.9912291098731778,"votes":504,"status":"historical","reason":null},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":1.9912291098731778},{"id":"3","name":"INKATHA FREEDOM PARTY","short":"IFP","color":"#b44b69","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":1.7949554757797568,"votes":385,"status":"historical","reason":null},{"year":2026,"share":0.7719691212351506,"votes":193,"status":"declared","reason":null}],"peak":1.7949554757797568},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","short":"SACP","color":"#b64038","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":1.5439382424703012,"votes":386,"status":"declared","reason":null}],"peak":1.5439382424703012},{"id":"1361","name":"AFRICAN FREEDOM REVOLUTION","short":"AFRICAN FREEDOM REVOLUTION","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0.9510932910625204,"votes":204,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0.9510932910625204},{"id":"591","name":"NATIONAL FREEDOM PARTY","short":"NFP","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0.6270255037339721,"votes":178,"status":"historical","reason":null},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0.6270255037339721},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","short":"AFRIKA MAYIBUYE MOVEMENT","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.5439782408703652,"votes":136,"status":"declared","reason":null}],"peak":0.5439782408703652},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","short":"APC","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.44398224071037157,"votes":111,"status":"declared","reason":null}],"peak":0.44398224071037157},{"id":"957","name":"PATRIOTIC ALLIANCE","short":"PA","color":"#287b57","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.39998400063997436,"votes":100,"status":"declared","reason":null}],"peak":0.39998400063997436},{"id":"1370","name":"AFRICAN CONTENT MOVEMENT","short":"ACM","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.2839886404543818,"votes":71,"status":"declared","reason":null}],"peak":0.2839886404543818},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","short":"AFRICAN CONGRESS FOR TRANSFORMATION","color":"#627875","points":[{"year":2000,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.25198992040318385,"votes":63,"status":"declared","reason":null}],"peak":0.25198992040318385}],"defaultPartyIds":["7","52","4","945","241"],"previous":{"year":2021,"name":"FS195 - Phumelela","basis":"source_total","status":"historical","declaration":null,"total":21449,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":13769,"share":64.19413492470511},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":2613,"share":12.182386125227284},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":2286,"share":10.657839526318243},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":1182,"share":5.510746421744604},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":385,"share":1.7949554757797568},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":243,"share":1.1329199496480022},{"id":"1361","name":"AFRICAN FREEDOM REVOLUTION","votes":204,"share":0.9510932910625204}],"seats":{"total":16,"majority":9,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":11,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":2,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":2,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":1,"grouped":false},{"id":"1361","name":"AFRICAN FREEDOM REVOLUTION","count":0,"grouped":false},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","count":0,"grouped":false},{"id":"0","name":"INDEPENDENTS","count":0,"grouped":true},{"id":"3","name":"INKATHA FREEDOM PARTY","count":0,"grouped":false}],"winner":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":11}},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":13769,"share":64.19413492470511},"leaderScope":"published_vote_leader","reporting":{"completed":42,"expected":42,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic2220.js","snapshotId":"2021:municipality:2220:v2:a83b8d38e7a5a1145d2d4fbf4683ec99241c1f8da47c7dd055402a66d0f4a759","reportedAt":"2022-01-15T15:50:31.691Z","checkedAt":"2026-11-05T13:38:15.258Z","successfulAt":"2026-11-05T13:38:15.258Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":21449,"source_reported_valid_ballots":21449,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},"reportedElections":6,"latest":{"year":2026,"name":"FS195 - Phumelela","basis":"source_total","status":"declared","declaration":{"date":"2026-11-08","date_label":"8 November 2026","scope":"national_election","source_url":"https://iol.co.za/lge2026/live-or-the-people-have-spoken-ramaphosa-urges-everyone-to-work-together/","source_title":"IEC declaration ceremony — IOL live coverage, 8 November 2026","note":"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."},"total":25001,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":11165,"share":44.65821367145314},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":4900,"share":19.599216031358747},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":3188,"share":12.751489940402383},{"id":"1863","name":"SERVICE DELIVERY PARTY","votes":1542,"share":6.167753289868405},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":1535,"share":6.139754409823607},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":994,"share":3.975840966361346},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":617,"share":2.4679012839486423},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":386,"share":1.5439382424703012},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":193,"share":0.7719691212351506},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":136,"share":0.5439782408703652},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","votes":111,"share":0.44398224071037157},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":100,"share":0.39998400063997436},{"id":"1370","name":"AFRICAN CONTENT MOVEMENT","votes":71,"share":0.2839886404543818},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","votes":63,"share":0.25198992040318385}],"seats":{"total":16,"majority":9,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":8,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":3,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":2,"grouped":false},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","count":1,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":1,"grouped":false},{"id":"1863","name":"SERVICE DELIVERY PARTY","count":1,"grouped":false},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","count":0,"grouped":false},{"id":"1370","name":"AFRICAN CONTENT MOVEMENT","count":0,"grouped":false},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","count":0,"grouped":false},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","count":0,"grouped":false},{"id":"3","name":"INKATHA FREEDOM PARTY","count":0,"grouped":false},{"id":"957","name":"PATRIOTIC ALLIANCE","count":0,"grouped":false},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","count":0,"grouped":false},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","count":0,"grouped":false}],"winner":null},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":11165,"share":44.65821367145314},"leaderScope":"published_vote_leader","reporting":{"completed":43,"expected":43,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic2220.js","snapshotId":"2026:municipality:2220:v3:pack1:29cdfc629cb54c6c39cf308db85ea24268095f96c60d2d0ae0ef89c2d34118d0:c9fcbb37607ae50a05c3ac0e6f39340e91167a12dfc38d71a47c9b16024664d0","reportedAt":"2026-11-08T19:26:35.287Z","checkedAt":"2026-11-11T06:35:15.587Z","successfulAt":"2026-11-11T06:35:15.587Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":25001,"source_reported_valid_ballots":25001,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},"warning":null,"caveats":["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."]}