{"level":"voting-district","id":"22050021","through":2026,"basis":"source_total","ballotLabel":"Ward + municipal PR votes","years":[2006,2011,2016,2021,2026],"elections":[{"year":2006,"name":"Voting district 22050021","basis":"source_total","status":"historical","declaration":null,"total":505,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":388,"share":76.83168316831683},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":106,"share":20.99009900990099},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":5,"share":0.9900990099009901},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","votes":3,"share":0.594059405940594},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","votes":1,"share":0.19801980198019803}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":388,"share":76.83168316831683},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2006/EEID95Munic2203.js","snapshotId":"2006:municipality:2203:v2:6a88a55260f8ceab54b24e73e5d6d0deac4d67d95814346cad7a428605d9bdd8","reportedAt":"2016-07-29T07:33:32.134Z","checkedAt":"2026-11-05T13:52:26.673Z","successfulAt":"2026-11-05T13:52:26.673Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":505,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2011,"name":"Voting district 22050021","basis":"source_total","status":"historical","declaration":null,"total":707,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":542,"share":76.66195190947667},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":138,"share":19.519094766619517},{"id":"499","name":"CONGRESS OF THE PEOPLE","votes":18,"share":2.545968882602546},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":9,"share":1.272984441301273},{"id":"568","name":"UNITED RESIDENTS FRONT","votes":0,"share":0}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":542,"share":76.66195190947667},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2011/EEID197Munic2203.js","snapshotId":"2011:municipality:2203:v2:d72e2124873f5cc68bea76d6f4b3335220294f3cdade75f6a8125cbe9cd68367","reportedAt":"2021-10-25T13:02:58.504Z","checkedAt":"2026-11-05T13:46:28.911Z","successfulAt":"2026-11-05T13:46:28.911Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":707,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2016,"name":"Voting district 22050021","basis":"source_total","status":"historical","declaration":null,"total":779,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":527,"share":67.65083440308088},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":233,"share":29.910141206675224},{"id":"499","name":"CONGRESS OF THE PEOPLE","votes":6,"share":0.7702182284980745},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":5,"share":0.6418485237483954},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":5,"share":0.6418485237483954},{"id":"568","name":"UNITED RESIDENTS FRONT","votes":3,"share":0.38510911424903727}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":527,"share":67.65083440308088},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2016/EEID402Munic2203.js","snapshotId":"2016:municipality:2203:v2:fa67bff0e1f1834f820db6599cbedd3d9f736433177f1b9bf1224930a7065c6d","reportedAt":"2017-04-06T09:44:53.878Z","checkedAt":"2026-11-05T13:40:40.109Z","successfulAt":"2026-11-05T13:40:40.109Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":779,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2021,"name":"Voting district 22050021","basis":"source_total","status":"historical","declaration":null,"total":765,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":566,"share":73.98692810457517},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":180,"share":23.52941176470588},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":12,"share":1.5686274509803921},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":5,"share":0.6535947712418301},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":2,"share":0.261437908496732}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":566,"share":73.98692810457517},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic2203.js","snapshotId":"2021:municipality:2203:v2:baf1963b1314625615fcb3afa51209b675b5f04f230b5abfa722465c30095ccd","reportedAt":"2022-01-15T15:50:23.316Z","checkedAt":"2026-11-05T13:38:08.734Z","successfulAt":"2026-11-05T13:38:08.734Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":765,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2026,"name":"Voting district 22050021","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":1057,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":652,"share":61.68401135288553},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":221,"share":20.908230842005675},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":165,"share":15.610217596972564},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":14,"share":1.3245033112582782},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":2,"share":0.1892147587511826},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":2,"share":0.1892147587511826},{"id":"568","name":"UNITED RESIDENTS FRONT","votes":1,"share":0.0946073793755913},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","votes":0,"share":0},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":0,"share":0},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":0,"share":0},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":0,"share":0}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":652,"share":61.68401135288553},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic2203.js","snapshotId":"2026:municipality:2203:v2:pack1:f92533dcb723232d3fcc08a01d9bcfe34a0838e7e8d834f2c6a89a2152ba5424:f8154b87a168781aa4c80d07bbccdbc07efbe245ad0bf99173191615f2926e3a","reportedAt":"2026-11-05T17:31:42.965Z","checkedAt":"2026-11-11T08:02:25.533Z","successfulAt":"2026-11-11T08:02:25.533Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":1057,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null}],"series":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","short":"ANC","color":"#b29022","points":[{"year":2006,"share":76.83168316831683,"votes":388,"status":"historical","reason":null},{"year":2011,"share":76.66195190947667,"votes":542,"status":"historical","reason":null},{"year":2016,"share":67.65083440308088,"votes":527,"status":"historical","reason":null},{"year":2021,"share":73.98692810457517,"votes":566,"status":"historical","reason":null},{"year":2026,"share":61.68401135288553,"votes":652,"status":"declared","reason":null}],"peak":76.83168316831683},{"id":"52","name":"DEMOCRATIC ALLIANCE","short":"DA","color":"#2872ba","points":[{"year":2006,"share":20.99009900990099,"votes":106,"status":"historical","reason":null},{"year":2011,"share":19.519094766619517,"votes":138,"status":"historical","reason":null},{"year":2016,"share":29.910141206675224,"votes":233,"status":"historical","reason":null},{"year":2021,"share":23.52941176470588,"votes":180,"status":"historical","reason":null},{"year":2026,"share":15.610217596972564,"votes":165,"status":"declared","reason":null}],"peak":29.910141206675224},{"id":"957","name":"PATRIOTIC ALLIANCE","short":"PA","color":"#287b57","points":[{"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":20.908230842005675,"votes":221,"status":"declared","reason":null}],"peak":20.908230842005675},{"id":"499","name":"CONGRESS OF THE PEOPLE","short":"COPE","color":"#ae7936","points":[{"year":2006,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2011,"share":2.545968882602546,"votes":18,"status":"historical","reason":null},{"year":2016,"share":0.7702182284980745,"votes":6,"status":"historical","reason":null},{"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":2.545968882602546},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","short":"EFF","color":"#b64038","points":[{"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.6418485237483954,"votes":5,"status":"historical","reason":null},{"year":2021,"share":1.5686274509803921,"votes":12,"status":"historical","reason":null},{"year":2026,"share":1.3245033112582782,"votes":14,"status":"declared","reason":null}],"peak":1.5686274509803921},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","short":"FF+","color":"#ba632f","points":[{"year":2006,"share":0.9900990099009901,"votes":5,"status":"historical","reason":null},{"year":2011,"share":1.272984441301273,"votes":9,"status":"historical","reason":null},{"year":2016,"share":0.6418485237483954,"votes":5,"status":"historical","reason":null},{"year":2021,"share":0.6535947712418301,"votes":5,"status":"historical","reason":null},{"year":2026,"share":0.1892147587511826,"votes":2,"status":"declared","reason":null}],"peak":1.272984441301273},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","short":"PAC","color":"#40846a","points":[{"year":2006,"share":0.594059405940594,"votes":3,"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":0.594059405940594},{"id":"568","name":"UNITED RESIDENTS FRONT","short":"UNITED RESIDENTS FRONT","color":"#627875","points":[{"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":null},{"year":2016,"share":0.38510911424903727,"votes":3,"status":"historical","reason":null},{"year":2021,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2026,"share":0.0946073793755913,"votes":1,"status":"declared","reason":null}],"peak":0.38510911424903727},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","short":"ATM","color":"#627875","points":[{"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.261437908496732,"votes":2,"status":"historical","reason":null},{"year":2026,"share":0.1892147587511826,"votes":2,"status":"declared","reason":null}],"peak":0.261437908496732},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","short":"ACDP","color":"#824c62","points":[{"year":2006,"share":0.19801980198019803,"votes":1,"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":0.19801980198019803},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","short":"AFRICAN CONGRESS FOR TRANSFORMATION","color":"#627875","points":[{"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,"votes":0,"status":"declared","reason":null}],"peak":0},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","short":"AFRIKA MAYIBUYE MOVEMENT","color":"#627875","points":[{"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,"votes":0,"status":"declared","reason":null}],"peak":0},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","short":"SACP","color":"#b64038","points":[{"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,"votes":0,"status":"declared","reason":null}],"peak":0},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","short":"MKP","color":"#54632c","points":[{"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,"votes":0,"status":"declared","reason":null}],"peak":0}],"defaultPartyIds":["7","52","957","499","945"],"previous":{"year":2021,"name":"Voting district 22050021","basis":"source_total","status":"historical","declaration":null,"total":765,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":566,"share":73.98692810457517},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":180,"share":23.52941176470588},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":12,"share":1.5686274509803921},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":5,"share":0.6535947712418301},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":2,"share":0.261437908496732}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":566,"share":73.98692810457517},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic2203.js","snapshotId":"2021:municipality:2203:v2:baf1963b1314625615fcb3afa51209b675b5f04f230b5abfa722465c30095ccd","reportedAt":"2022-01-15T15:50:23.316Z","checkedAt":"2026-11-05T13:38:08.734Z","successfulAt":"2026-11-05T13:38:08.734Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":765,"source_reported_valid_ballots":null,"difference":null}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},"reportedElections":5,"latest":{"year":2026,"name":"Voting district 22050021","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":1057,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":652,"share":61.68401135288553},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":221,"share":20.908230842005675},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":165,"share":15.610217596972564},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":14,"share":1.3245033112582782},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":2,"share":0.1892147587511826},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":2,"share":0.1892147587511826},{"id":"568","name":"UNITED RESIDENTS FRONT","votes":1,"share":0.0946073793755913},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","votes":0,"share":0},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":0,"share":0},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":0,"share":0},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":0,"share":0}],"seats":null,"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":652,"share":61.68401135288553},"leaderScope":"published_vote_leader","reporting":null,"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic2203.js","snapshotId":"2026:municipality:2203:v2:pack1:f92533dcb723232d3fcc08a01d9bcfe34a0838e7e8d834f2c6a89a2152ba5424:f8154b87a168781aa4c80d07bbccdbc07efbe245ad0bf99173191615f2926e3a","reportedAt":"2026-11-05T17:31:42.965Z","checkedAt":"2026-11-11T08:02:25.533Z","successfulAt":"2026-11-11T08:02:25.533Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"not_available","sum_of_published_rows":1057,"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."]}