{"level":"voting-district","id":"54280122","through":2026,"basis":"source_total","ballotLabel":"Ward + municipal PR votes","years":[2021,2026],"elections":[{"year":2021,"name":"Voting district 54280122","basis":"source_total","status":"historical","declaration":null,"total":205,"parties":[{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":107,"share":52.19512195121951},{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":47,"share":22.926829268292686},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":25,"share":12.195121951219512},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":19,"share":9.268292682926829},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":5,"share":2.4390243902439024},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","votes":2,"share":0.975609756097561},{"id":"1080","name":"SINGUKUKHANYA KWEZWE CHRISTIAN PARTY","votes":0,"share":0},{"id":"1093","name":"SAKHISIZWE PROGRESSIVE MOVEMENT","votes":0,"share":0},{"id":"1499","name":"AZANIA RESIDENT PARTY","votes":0,"share":0},{"id":"1530","name":"DISABILITY AND OLDER PERSON POLITICAL PARTY","votes":0,"share":0},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":0,"share":0},{"id":"499","name":"CONGRESS OF THE PEOPLE","votes":0,"share":0},{"id":"6","name":"UNITED DEMOCRATIC MOVEMENT","votes":0,"share":0},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":0,"share":0}],"seats":null,"leader":{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":107,"share":52.19512195121951},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic5508.js","snapshotId":"2021:municipality:5508:v2:a14613be5daa06aacd3c029c84db497de3df0ac0744deee65eb563c2dd0dd3a2","reportedAt":"2022-01-15T15:50:20.269Z","checkedAt":"2026-11-05T13:38:48.299Z","successfulAt":"2026-11-05T13:38:48.299Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":205,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2026,"name":"Voting district 54280122","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":467,"parties":[{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":309,"share":66.16702355460386},{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":68,"share":14.5610278372591},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":27,"share":5.781584582441114},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":23,"share":4.925053533190578},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":16,"share":3.4261241970021414},{"id":"1863","name":"SERVICE DELIVERY PARTY","votes":9,"share":1.9271948608137044},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":6,"share":1.284796573875803},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":3,"share":0.6423982869379015},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","votes":2,"share":0.4282655246252677},{"id":"1724","name":"ASSEGAAI INDEPENDENT MOVEMENT OF SOUTH AFRICA","votes":1,"share":0.21413276231263384},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":1,"share":0.21413276231263384},{"id":"330","name":"AFRICAN INDEPENDENT CONGRESS","votes":1,"share":0.21413276231263384},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":1,"share":0.21413276231263384},{"id":"1080","name":"SINGUKUKHANYA KWEZWE CHRISTIAN PARTY","votes":0,"share":0},{"id":"1260","name":"ECONOMIC EMANCIPATION FORUM","votes":0,"share":0},{"id":"1499","name":"AZANIA RESIDENT PARTY","votes":0,"share":0},{"id":"1644","name":"UNITED INDEPENDENT MOVEMENT","votes":0,"share":0},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","votes":0,"share":0},{"id":"1802","name":"LABOUR PARTY OF SOUTH AFRICA","votes":0,"share":0},{"id":"1999","name":"GOVAN MBEKI MUNICIPALITY RATEPAYERS MOVEMENT","votes":0,"share":0},{"id":"2005","name":"AFRICA PEOPLE COALITION PARTY","votes":0,"share":0},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":0,"share":0},{"id":"929","name":"INTERNATIONAL REVELATION CONGRESS","votes":0,"share":0}],"seats":null,"leader":{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":309,"share":66.16702355460386},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic5508.js","snapshotId":"2026:municipality:5508:v3:pack1:5887d1d9235b8d115c8a586671e8205513493b078b14924b123aa25f84632119:a6de9b9457af0dee50920be05787fd84cab285b12dd7f052a6ae50ab0e11ff8a","reportedAt":"2026-11-08T19:16:39.493Z","checkedAt":"2026-11-11T06:08:41.741Z","successfulAt":"2026-11-11T06:08:41.741Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":467,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null}],"series":[{"id":"52","name":"DEMOCRATIC ALLIANCE","short":"DA","color":"#2872ba","points":[{"year":2021,"share":52.19512195121951,"votes":107,"status":"historical","reason":null},{"year":2026,"share":66.16702355460386,"votes":309,"status":"declared","reason":null}],"peak":66.16702355460386},{"id":"7","name":"AFRICAN NATIONAL CONGRESS","short":"ANC","color":"#b29022","points":[{"year":2021,"share":22.926829268292686,"votes":47,"status":"historical","reason":null},{"year":2026,"share":14.5610278372591,"votes":68,"status":"declared","reason":null}],"peak":22.926829268292686},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","short":"EFF","color":"#b64038","points":[{"year":2021,"share":12.195121951219512,"votes":25,"status":"historical","reason":null},{"year":2026,"share":3.4261241970021414,"votes":16,"status":"declared","reason":null}],"peak":12.195121951219512},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","short":"FF+","color":"#ba632f","points":[{"year":2021,"share":9.268292682926829,"votes":19,"status":"historical","reason":null},{"year":2026,"share":4.925053533190578,"votes":23,"status":"declared","reason":null}],"peak":9.268292682926829},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","short":"MKP","color":"#54632c","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":5.781584582441114,"votes":27,"status":"declared","reason":null}],"peak":5.781584582441114},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","short":"ATM","color":"#627875","points":[{"year":2021,"share":2.4390243902439024,"votes":5,"status":"historical","reason":null},{"year":2026,"share":0.6423982869379015,"votes":3,"status":"declared","reason":null}],"peak":2.4390243902439024},{"id":"1863","name":"SERVICE DELIVERY PARTY","short":"SERVICE DELIVERY PARTY","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":1.9271948608137044,"votes":9,"status":"declared","reason":null}],"peak":1.9271948608137044},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","short":"SACP","color":"#b64038","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":1.284796573875803,"votes":6,"status":"declared","reason":null}],"peak":1.284796573875803},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","short":"APC","color":"#627875","points":[{"year":2021,"share":0.975609756097561,"votes":2,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0.975609756097561},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","short":"ACDP","color":"#824c62","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.4282655246252677,"votes":2,"status":"declared","reason":null}],"peak":0.4282655246252677},{"id":"330","name":"AFRICAN INDEPENDENT CONGRESS","short":"AIC","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.21413276231263384,"votes":1,"status":"declared","reason":null}],"peak":0.21413276231263384},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","short":"AFRIKA MAYIBUYE MOVEMENT","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.21413276231263384,"votes":1,"status":"declared","reason":null}],"peak":0.21413276231263384},{"id":"1724","name":"ASSEGAAI INDEPENDENT MOVEMENT OF SOUTH AFRICA","short":"ASSEGAAI INDEPENDENT MOVEMENT OF SOUTH AFRICA","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.21413276231263384,"votes":1,"status":"declared","reason":null}],"peak":0.21413276231263384},{"id":"957","name":"PATRIOTIC ALLIANCE","short":"PA","color":"#287b57","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0.21413276231263384,"votes":1,"status":"declared","reason":null}],"peak":0.21413276231263384},{"id":"2005","name":"AFRICA PEOPLE COALITION PARTY","short":"AFRICA PEOPLE COALITION PARTY","color":"#627875","points":[{"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":null}],"peak":0},{"id":"1499","name":"AZANIA RESIDENT PARTY","short":"ARP","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":null}],"peak":0},{"id":"499","name":"CONGRESS OF THE PEOPLE","short":"COPE","color":"#ae7936","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0},{"id":"1530","name":"DISABILITY AND OLDER PERSON POLITICAL PARTY","short":"DISABILITY AND OLDER PERSON POLITICAL PARTY","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0},{"id":"1260","name":"ECONOMIC EMANCIPATION FORUM","short":"ECONOMIC EMANCIPATION FORUM","color":"#627875","points":[{"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":null}],"peak":0},{"id":"1999","name":"GOVAN MBEKI MUNICIPALITY RATEPAYERS MOVEMENT","short":"GOVAN MBEKI MUNICIPALITY RATEPAYERS MOVEMENT","color":"#627875","points":[{"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":null}],"peak":0},{"id":"3","name":"INKATHA FREEDOM PARTY","short":"IFP","color":"#b44b69","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":null}],"peak":0},{"id":"929","name":"INTERNATIONAL REVELATION CONGRESS","short":"INTERNATIONAL REVELATION CONGRESS","color":"#627875","points":[{"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":null}],"peak":0},{"id":"1802","name":"LABOUR PARTY OF SOUTH AFRICA","short":"Labour","color":"#627875","points":[{"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":null}],"peak":0},{"id":"1093","name":"SAKHISIZWE PROGRESSIVE MOVEMENT","short":"SAKHISIZWE PROGRESSIVE MOVEMENT","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0},{"id":"1080","name":"SINGUKUKHANYA KWEZWE CHRISTIAN PARTY","short":"SINGUKUKHANYA KWEZWE CHRISTIAN PARTY","color":"#627875","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":null}],"peak":0},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","short":"UNITED AFRICANS TRANSFORMATION","color":"#627875","points":[{"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":null}],"peak":0},{"id":"6","name":"UNITED DEMOCRATIC MOVEMENT","short":"UDM","color":"#b36c29","points":[{"year":2021,"share":0,"votes":0,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0},{"id":"1644","name":"UNITED INDEPENDENT MOVEMENT","short":"UIM","color":"#627875","points":[{"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":null}],"peak":0}],"defaultPartyIds":["52","7","945","4","1748"],"previous":{"year":2021,"name":"Voting district 54280122","basis":"source_total","status":"historical","declaration":null,"total":205,"parties":[{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":107,"share":52.19512195121951},{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":47,"share":22.926829268292686},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":25,"share":12.195121951219512},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":19,"share":9.268292682926829},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":5,"share":2.4390243902439024},{"id":"450","name":"AFRICAN PEOPLE'S CONVENTION","votes":2,"share":0.975609756097561},{"id":"1080","name":"SINGUKUKHANYA KWEZWE CHRISTIAN PARTY","votes":0,"share":0},{"id":"1093","name":"SAKHISIZWE PROGRESSIVE MOVEMENT","votes":0,"share":0},{"id":"1499","name":"AZANIA RESIDENT PARTY","votes":0,"share":0},{"id":"1530","name":"DISABILITY AND OLDER PERSON POLITICAL PARTY","votes":0,"share":0},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":0,"share":0},{"id":"499","name":"CONGRESS OF THE PEOPLE","votes":0,"share":0},{"id":"6","name":"UNITED DEMOCRATIC MOVEMENT","votes":0,"share":0},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":0,"share":0}],"seats":null,"leader":{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":107,"share":52.19512195121951},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic5508.js","snapshotId":"2021:municipality:5508:v2:a14613be5daa06aacd3c029c84db497de3df0ac0744deee65eb563c2dd0dd3a2","reportedAt":"2022-01-15T15:50:20.269Z","checkedAt":"2026-11-05T13:38:48.299Z","successfulAt":"2026-11-05T13:38:48.299Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":205,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},"reportedElections":2,"latest":{"year":2026,"name":"Voting district 54280122","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":467,"parties":[{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":309,"share":66.16702355460386},{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":68,"share":14.5610278372591},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":27,"share":5.781584582441114},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":23,"share":4.925053533190578},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":16,"share":3.4261241970021414},{"id":"1863","name":"SERVICE DELIVERY PARTY","votes":9,"share":1.9271948608137044},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":6,"share":1.284796573875803},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":3,"share":0.6423982869379015},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","votes":2,"share":0.4282655246252677},{"id":"1724","name":"ASSEGAAI INDEPENDENT MOVEMENT OF SOUTH AFRICA","votes":1,"share":0.21413276231263384},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":1,"share":0.21413276231263384},{"id":"330","name":"AFRICAN INDEPENDENT CONGRESS","votes":1,"share":0.21413276231263384},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":1,"share":0.21413276231263384},{"id":"1080","name":"SINGUKUKHANYA KWEZWE CHRISTIAN PARTY","votes":0,"share":0},{"id":"1260","name":"ECONOMIC EMANCIPATION FORUM","votes":0,"share":0},{"id":"1499","name":"AZANIA RESIDENT PARTY","votes":0,"share":0},{"id":"1644","name":"UNITED INDEPENDENT MOVEMENT","votes":0,"share":0},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","votes":0,"share":0},{"id":"1802","name":"LABOUR PARTY OF SOUTH AFRICA","votes":0,"share":0},{"id":"1999","name":"GOVAN MBEKI MUNICIPALITY RATEPAYERS MOVEMENT","votes":0,"share":0},{"id":"2005","name":"AFRICA PEOPLE COALITION PARTY","votes":0,"share":0},{"id":"3","name":"INKATHA FREEDOM PARTY","votes":0,"share":0},{"id":"929","name":"INTERNATIONAL REVELATION CONGRESS","votes":0,"share":0}],"seats":null,"leader":{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":309,"share":66.16702355460386},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic5508.js","snapshotId":"2026:municipality:5508:v3:pack1:5887d1d9235b8d115c8a586671e8205513493b078b14924b123aa25f84632119:a6de9b9457af0dee50920be05787fd84cab285b12dd7f052a6ae50ab0e11ff8a","reportedAt":"2026-11-08T19:16:39.493Z","checkedAt":"2026-11-11T06:08:41.741Z","successfulAt":"2026-11-11T06:08:41.741Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":467,"source_reported_valid_ballots":null,"difference":null}},"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."]}