{"level":"municipality","id":"8826","through":2026,"basis":"source_total","ballotLabel":"Ward + municipal PR votes","years":[2016,2021,2026],"elections":[{"year":2016,"name":"NW405 - Ventersdorp/Tlokwe","basis":"source_total","status":"historical","declaration":null,"total":131112,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":66689,"share":50.8641466837513},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":42231,"share":32.20986637378729},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":9812,"share":7.483678076758801},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":7057,"share":5.38242113612789},{"id":"1048","name":"INDEPENDENT COUNCILLORS","votes":4137,"share":3.155317591067179},{"id":"499","name":"CONGRESS OF THE PEOPLE","votes":595,"share":0.4538104826407956},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","votes":195,"share":0.14872780523521872}],"seats":{"total":67,"majority":34,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":34,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":22,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":5,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":4,"grouped":false},{"id":"1048","name":"INDEPENDENT COUNCILLORS","count":2,"grouped":false},{"id":"499","name":"CONGRESS OF THE PEOPLE","count":0,"grouped":false},{"id":"0","name":"INDEPENDENTS","count":0,"grouped":true},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","count":0,"grouped":false}],"winner":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":34}},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":66689,"share":50.8641466837513},"leaderScope":"published_vote_leader","reporting":{"completed":113,"expected":113,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2016/EEID402Munic8826.js","snapshotId":"2016:municipality:8826:v2:3cfa7bb89c8e37b3c272c4e53b2446ce3549fa832dd5ca03b681394401617e73","reportedAt":"2017-04-06T09:46:26.046Z","checkedAt":"2026-11-05T13:44:51.197Z","successfulAt":"2026-11-05T13:44:51.197Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":131112,"source_reported_valid_ballots":131112,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2021,"name":"NW405 - JB Marks","basis":"source_total","status":"historical","declaration":null,"total":101889,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":48911,"share":48.00420064972666},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":25837,"share":25.357987613972067},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":13800,"share":13.544150987839709},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":9200,"share":9.02943399189314},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":2389,"share":2.3447084572426857},{"id":"1513","name":"BLACK FIRST LAND FIRST","votes":428,"share":0.420064972666333},{"id":"1488","name":"ABANTU BATHO CONGRESS","votes":340,"share":0.33369647361344207},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":330,"share":0.32388187144834085},{"id":"1016","name":"FORUM 4 SERVICE DELIVERY","votes":204,"share":0.20021788416806524}],"seats":{"total":67,"majority":34,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":33,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":17,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":9,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":6,"grouped":false},{"id":"957","name":"PATRIOTIC ALLIANCE","count":2,"grouped":false},{"id":"1488","name":"ABANTU BATHO CONGRESS","count":0,"grouped":false},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","count":0,"grouped":false},{"id":"1513","name":"BLACK FIRST LAND FIRST","count":0,"grouped":false},{"id":"1016","name":"FORUM 4 SERVICE DELIVERY","count":0,"grouped":false},{"id":"0","name":"INDEPENDENTS","count":0,"grouped":true}],"winner":null},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":48911,"share":48.00420064972666},"leaderScope":"published_vote_leader","reporting":{"completed":113,"expected":113,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic8826.js","snapshotId":"2021:municipality:8826:v2:65a8835d2871b5ac1d6c080d45de6ffa12f7ddd9ef9cea3e2d74be9971f35911","reportedAt":"2022-01-15T15:50:31.691Z","checkedAt":"2026-11-05T13:39:25.685Z","successfulAt":"2026-11-05T13:39:25.685Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":101889,"source_reported_valid_ballots":101889,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},{"year":2026,"name":"NW405 - JB Marks","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":138579,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":45943,"share":33.1529308192439},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":44042,"share":31.781150102107823},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":12879,"share":9.293615915831403},{"id":"1511","name":"ACTIONSA","votes":10919,"share":7.8792602053702225},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":10073,"share":7.26877809769157},{"id":"2028","name":"BAAGI","votes":6313,"share":4.555524285786447},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":1659,"share":1.1971510834974997},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":1620,"share":1.1690082912995474},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":1338,"share":0.9655142554066634},{"id":"2079","name":"CONCERNED POTCHEFSTROOM RESIDENTS","votes":894,"share":0.6451193903838244},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","votes":855,"share":0.6169765981858724},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","votes":453,"share":0.32688935553005866},{"id":"2090","name":"SOLIDARITY ACTION COMMITTEE COLLECTIVE","votes":436,"share":0.314621984571977},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":277,"share":0.19988598561109547},{"id":"1711","name":"BUILD ONE SOUTH AFRICA","votes":272,"share":0.19627793532930676},{"id":"1559","name":"DEFENDERS OF THE PEOPLE","votes":196,"share":0.1414355710461181},{"id":"1749","name":"ALL CITIZENS PARTY","votes":142,"share":0.10246862800279985},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","votes":130,"share":0.0938093073265069},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","votes":88,"share":0.0635016849594816},{"id":"1377","name":"PEOPLE'S FREEDOM PARTY","votes":50,"share":0.03608050281788727}],"seats":{"total":67,"majority":34,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":22,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":21,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":6,"grouped":false},{"id":"1511","name":"ACTIONSA","count":5,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":5,"grouped":false},{"id":"2028","name":"BAAGI","count":3,"grouped":false},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","count":1,"grouped":false},{"id":"2079","name":"CONCERNED POTCHEFSTROOM RESIDENTS","count":1,"grouped":false},{"id":"957","name":"PATRIOTIC ALLIANCE","count":1,"grouped":false},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","count":1,"grouped":false},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","count":1,"grouped":false},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","count":0,"grouped":false},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","count":0,"grouped":false},{"id":"1749","name":"ALL CITIZENS PARTY","count":0,"grouped":false},{"id":"1711","name":"BUILD ONE SOUTH AFRICA","count":0,"grouped":false},{"id":"1559","name":"DEFENDERS OF THE PEOPLE","count":0,"grouped":false},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","count":0,"grouped":false},{"id":"1377","name":"PEOPLE'S FREEDOM PARTY","count":0,"grouped":false},{"id":"2090","name":"SOLIDARITY ACTION COMMITTEE COLLECTIVE","count":0,"grouped":false},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","count":0,"grouped":false}],"winner":null},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":45943,"share":33.1529308192439},"leaderScope":"published_vote_leader","reporting":{"completed":106,"expected":106,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic8826.js","snapshotId":"2026:municipality:8826:v3:pack1:81a4a34f84c043d670770a3ac4cb6da12f661e853dd4651636a491792e0874c7:bb82d6022381991d3e6f94229f13e45cbd7469268066b109ea7516f9d4e3f15b","reportedAt":"2026-11-08T19:16:44.583Z","checkedAt":"2026-11-11T07:03:47.221Z","successfulAt":"2026-11-11T07:03:47.221Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":138579,"source_reported_valid_ballots":138579,"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":2016,"share":50.8641466837513,"votes":66689,"status":"historical","reason":null},{"year":2021,"share":48.00420064972666,"votes":48911,"status":"historical","reason":null},{"year":2026,"share":33.1529308192439,"votes":45943,"status":"declared","reason":null}],"peak":50.8641466837513},{"id":"52","name":"DEMOCRATIC ALLIANCE","short":"DA","color":"#2872ba","points":[{"year":2016,"share":32.20986637378729,"votes":42231,"status":"historical","reason":null},{"year":2021,"share":25.357987613972067,"votes":25837,"status":"historical","reason":null},{"year":2026,"share":31.781150102107823,"votes":44042,"status":"declared","reason":null}],"peak":32.20986637378729},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","short":"FF+","color":"#ba632f","points":[{"year":2016,"share":5.38242113612789,"votes":7057,"status":"historical","reason":null},{"year":2021,"share":13.544150987839709,"votes":13800,"status":"historical","reason":null},{"year":2026,"share":9.293615915831403,"votes":12879,"status":"declared","reason":null}],"peak":13.544150987839709},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","short":"EFF","color":"#b64038","points":[{"year":2016,"share":7.483678076758801,"votes":9812,"status":"historical","reason":null},{"year":2021,"share":9.02943399189314,"votes":9200,"status":"historical","reason":null},{"year":2026,"share":7.26877809769157,"votes":10073,"status":"declared","reason":null}],"peak":9.02943399189314},{"id":"1511","name":"ACTIONSA","short":"ActionSA","color":"#658247","points":[{"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":7.8792602053702225,"votes":10919,"status":"declared","reason":null}],"peak":7.8792602053702225},{"id":"2028","name":"BAAGI","short":"BAAGI","color":"#627875","points":[{"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":4.555524285786447,"votes":6313,"status":"declared","reason":null}],"peak":4.555524285786447},{"id":"1048","name":"INDEPENDENT COUNCILLORS","short":"INDEPENDENT COUNCILLORS","color":"#627875","points":[{"year":2016,"share":3.155317591067179,"votes":4137,"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":3.155317591067179},{"id":"957","name":"PATRIOTIC ALLIANCE","short":"PA","color":"#287b57","points":[{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":2.3447084572426857,"votes":2389,"status":"historical","reason":null},{"year":2026,"share":1.1971510834974997,"votes":1659,"status":"declared","reason":null}],"peak":2.3447084572426857},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","short":"MKP","color":"#54632c","points":[{"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.1690082912995474,"votes":1620,"status":"declared","reason":null}],"peak":1.1690082912995474},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","short":"SACP","color":"#b64038","points":[{"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.9655142554066634,"votes":1338,"status":"declared","reason":null}],"peak":0.9655142554066634},{"id":"2079","name":"CONCERNED POTCHEFSTROOM RESIDENTS","short":"CONCERNED POTCHEFSTROOM RESIDENTS","color":"#627875","points":[{"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.6451193903838244,"votes":894,"status":"declared","reason":null}],"peak":0.6451193903838244},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","short":"ACDP","color":"#824c62","points":[{"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.6169765981858724,"votes":855,"status":"declared","reason":null}],"peak":0.6169765981858724},{"id":"499","name":"CONGRESS OF THE PEOPLE","short":"COPE","color":"#ae7936","points":[{"year":2016,"share":0.4538104826407956,"votes":595,"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":0.4538104826407956},{"id":"1513","name":"BLACK FIRST LAND FIRST","short":"BLACK FIRST LAND FIRST","color":"#627875","points":[{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0.420064972666333,"votes":428,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0.420064972666333},{"id":"1488","name":"ABANTU BATHO CONGRESS","short":"ABC","color":"#627875","points":[{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0.33369647361344207,"votes":340,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0.33369647361344207},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","short":"AFRICAN CONGRESS FOR TRANSFORMATION","color":"#627875","points":[{"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.32688935553005866,"votes":453,"status":"declared","reason":null}],"peak":0.32688935553005866},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","short":"ATM","color":"#627875","points":[{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0.32388187144834085,"votes":330,"status":"historical","reason":null},{"year":2026,"share":0,"votes":0,"status":"declared","reason":"No votes recorded in the complete party list."}],"peak":0.32388187144834085},{"id":"2090","name":"SOLIDARITY ACTION COMMITTEE COLLECTIVE","short":"SOLIDARITY ACTION COMMITTEE COLLECTIVE","color":"#627875","points":[{"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.314621984571977,"votes":436,"status":"declared","reason":null}],"peak":0.314621984571977},{"id":"1016","name":"FORUM 4 SERVICE DELIVERY","short":"F4SD","color":"#627875","points":[{"year":2016,"share":0,"votes":0,"status":"historical","reason":"No votes recorded in the complete party list."},{"year":2021,"share":0.20021788416806524,"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.20021788416806524},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","short":"AFRIKA MAYIBUYE MOVEMENT","color":"#627875","points":[{"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.19988598561109547,"votes":277,"status":"declared","reason":null}],"peak":0.19988598561109547},{"id":"1711","name":"BUILD ONE SOUTH AFRICA","short":"BUILD ONE SOUTH AFRICA","color":"#627875","points":[{"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.19627793532930676,"votes":272,"status":"declared","reason":null}],"peak":0.19627793532930676},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","short":"PAC","color":"#40846a","points":[{"year":2016,"share":0.14872780523521872,"votes":195,"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.0635016849594816,"votes":88,"status":"declared","reason":null}],"peak":0.14872780523521872},{"id":"1559","name":"DEFENDERS OF THE PEOPLE","short":"DOP","color":"#627875","points":[{"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.1414355710461181,"votes":196,"status":"declared","reason":null}],"peak":0.1414355710461181},{"id":"1749","name":"ALL CITIZENS PARTY","short":"ALL CITIZENS PARTY","color":"#627875","points":[{"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.10246862800279985,"votes":142,"status":"declared","reason":null}],"peak":0.10246862800279985},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","short":"UNITED AFRICANS TRANSFORMATION","color":"#627875","points":[{"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.0938093073265069,"votes":130,"status":"declared","reason":null}],"peak":0.0938093073265069},{"id":"1377","name":"PEOPLE'S FREEDOM PARTY","short":"PFP","color":"#627875","points":[{"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.03608050281788727,"votes":50,"status":"declared","reason":null}],"peak":0.03608050281788727}],"defaultPartyIds":["7","52","4","945","1511"],"previous":{"year":2021,"name":"NW405 - JB Marks","basis":"source_total","status":"historical","declaration":null,"total":101889,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":48911,"share":48.00420064972666},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":25837,"share":25.357987613972067},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":13800,"share":13.544150987839709},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":9200,"share":9.02943399189314},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":2389,"share":2.3447084572426857},{"id":"1513","name":"BLACK FIRST LAND FIRST","votes":428,"share":0.420064972666333},{"id":"1488","name":"ABANTU BATHO CONGRESS","votes":340,"share":0.33369647361344207},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","votes":330,"share":0.32388187144834085},{"id":"1016","name":"FORUM 4 SERVICE DELIVERY","votes":204,"share":0.20021788416806524}],"seats":{"total":67,"majority":34,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":33,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":17,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":9,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":6,"grouped":false},{"id":"957","name":"PATRIOTIC ALLIANCE","count":2,"grouped":false},{"id":"1488","name":"ABANTU BATHO CONGRESS","count":0,"grouped":false},{"id":"1318","name":"AFRICAN TRANSFORMATION MOVEMENT","count":0,"grouped":false},{"id":"1513","name":"BLACK FIRST LAND FIRST","count":0,"grouped":false},{"id":"1016","name":"FORUM 4 SERVICE DELIVERY","count":0,"grouped":false},{"id":"0","name":"INDEPENDENTS","count":0,"grouped":true}],"winner":null},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":48911,"share":48.00420064972666},"leaderScope":"published_vote_leader","reporting":{"completed":113,"expected":113,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2021/EEID1091Munic8826.js","snapshotId":"2021:municipality:8826:v2:65a8835d2871b5ac1d6c080d45de6ffa12f7ddd9ef9cea3e2d74be9971f35911","reportedAt":"2022-01-15T15:50:31.691Z","checkedAt":"2026-11-05T13:39:25.685Z","successfulAt":"2026-11-05T13:39:25.685Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":101889,"source_reported_valid_ballots":101889,"difference":0}},"partyListScope":"all_rows_in_source","notes":[],"zeroForAbsent":true,"reason":null},"reportedElections":3,"latest":{"year":2026,"name":"NW405 - JB Marks","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":138579,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":45943,"share":33.1529308192439},{"id":"52","name":"DEMOCRATIC ALLIANCE","votes":44042,"share":31.781150102107823},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","votes":12879,"share":9.293615915831403},{"id":"1511","name":"ACTIONSA","votes":10919,"share":7.8792602053702225},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","votes":10073,"share":7.26877809769157},{"id":"2028","name":"BAAGI","votes":6313,"share":4.555524285786447},{"id":"957","name":"PATRIOTIC ALLIANCE","votes":1659,"share":1.1971510834974997},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","votes":1620,"share":1.1690082912995474},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","votes":1338,"share":0.9655142554066634},{"id":"2079","name":"CONCERNED POTCHEFSTROOM RESIDENTS","votes":894,"share":0.6451193903838244},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","votes":855,"share":0.6169765981858724},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","votes":453,"share":0.32688935553005866},{"id":"2090","name":"SOLIDARITY ACTION COMMITTEE COLLECTIVE","votes":436,"share":0.314621984571977},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","votes":277,"share":0.19988598561109547},{"id":"1711","name":"BUILD ONE SOUTH AFRICA","votes":272,"share":0.19627793532930676},{"id":"1559","name":"DEFENDERS OF THE PEOPLE","votes":196,"share":0.1414355710461181},{"id":"1749","name":"ALL CITIZENS PARTY","votes":142,"share":0.10246862800279985},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","votes":130,"share":0.0938093073265069},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","votes":88,"share":0.0635016849594816},{"id":"1377","name":"PEOPLE'S FREEDOM PARTY","votes":50,"share":0.03608050281788727}],"seats":{"total":67,"majority":34,"correction":null,"parties":[{"id":"7","name":"AFRICAN NATIONAL CONGRESS","count":22,"grouped":false},{"id":"52","name":"DEMOCRATIC ALLIANCE","count":21,"grouped":false},{"id":"4","name":"VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS","count":6,"grouped":false},{"id":"1511","name":"ACTIONSA","count":5,"grouped":false},{"id":"945","name":"ECONOMIC FREEDOM FIGHTERS","count":5,"grouped":false},{"id":"2028","name":"BAAGI","count":3,"grouped":false},{"id":"18","name":"AFRICAN CHRISTIAN DEMOCRATIC PARTY","count":1,"grouped":false},{"id":"2079","name":"CONCERNED POTCHEFSTROOM RESIDENTS","count":1,"grouped":false},{"id":"957","name":"PATRIOTIC ALLIANCE","count":1,"grouped":false},{"id":"445","name":"SOUTH AFRICAN COMMUNIST PARTY","count":1,"grouped":false},{"id":"1748","name":"UMKHONTO WESIZWE PARTY","count":1,"grouped":false},{"id":"1740","name":"AFRICAN CONGRESS FOR TRANSFORMATION","count":0,"grouped":false},{"id":"1909","name":"AFRIKA MAYIBUYE MOVEMENT","count":0,"grouped":false},{"id":"1749","name":"ALL CITIZENS PARTY","count":0,"grouped":false},{"id":"1711","name":"BUILD ONE SOUTH AFRICA","count":0,"grouped":false},{"id":"1559","name":"DEFENDERS OF THE PEOPLE","count":0,"grouped":false},{"id":"8","name":"PAN AFRICANIST CONGRESS OF AZANIA","count":0,"grouped":false},{"id":"1377","name":"PEOPLE'S FREEDOM PARTY","count":0,"grouped":false},{"id":"2090","name":"SOLIDARITY ACTION COMMITTEE COLLECTIVE","count":0,"grouped":false},{"id":"1707","name":"UNITED AFRICANS TRANSFORMATION","count":0,"grouped":false}],"winner":null},"leader":{"id":"7","name":"AFRICAN NATIONAL CONGRESS","votes":45943,"share":33.1529308192439},"leaderScope":"published_vote_leader","reporting":{"completed":106,"expected":106,"percent":100},"source":{"url":"https://results.elections.org.za/dashboards/lge/MapsJason/2026/EEID1887Munic8826.js","snapshotId":"2026:municipality:8826:v3:pack1:81a4a34f84c043d670770a3ac4cb6da12f661e853dd4651636a491792e0874c7:bb82d6022381991d3e6f94229f13e45cbd7469268066b109ea7516f9d4e3f15b","reportedAt":"2026-11-08T19:16:44.583Z","checkedAt":"2026-11-11T07:03:47.221Z","successfulAt":"2026-11-11T07:03:47.221Z","error":null},"quality":{"source_anomalies":[],"vote_total_reconciliation":{"status":"matches_reported_total","sum_of_published_rows":138579,"source_reported_valid_ballots":138579,"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."]}