Counted.co.zaPlay game

2021 · Municipal council

JB Marks

Ward results

ANC loses its majority

2021

Council seats

ANC33 seats
DA17 seats
FF+9 seats
EFF6 seats
PA2 seats
JB Marks · 2021 · Reported council seats
Party / entrySeatsShare of seats (%)
AFRICAN NATIONAL CONGRESS3349,2537
DEMOCRATIC ALLIANCE1725,3731
VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS913,4328
ECONOMIC FREEDOM FIGHTERS68,9552
PATRIOTIC ALLIANCE22,9851
ABANTU BATHO CONGRESS00
AFRICAN TRANSFORMATION MOVEMENT00
BLACK FIRST LAND FIRST00
FORUM 4 SERVICE DELIVERY00
INDEPENDENTS00

67 seats; 34 needed for a majority.

IEC source

Combined ballot votes

Combined ballot votes

AFRICAN NATIONAL CONGRESS
48.0%48 911 votes
DEMOCRATIC ALLIANCE
25.4%25 837 votes
VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS
13.5%13 800 votes
ECONOMIC FREEDOM FIGHTERS
9.0%9 200 votes
Other: show remaining parties: hide remaining parties4.1%4 141 votes
PATRIOTIC ALLIANCE
2.3%2 389 votes
INDEPENDENTS
0.4%450 votes
BLACK FIRST LAND FIRST
0.4%428 votes
ABANTU BATHO CONGRESS
0.3%340 votes
AFRICAN TRANSFORMATION MOVEMENT
0.3%330 votes
FORUM 4 SERVICE DELIVERY
0.2%204 votes
JB Marks · 2021 · Combined ballot votes
Party / entryCandidateVotesVote share (%)
AFRICAN NATIONAL CONGRESS—48 91148,0042
DEMOCRATIC ALLIANCE—25 83725,358
VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS—13 80013,5442
ECONOMIC FREEDOM FIGHTERS—9 2009,0294
PATRIOTIC ALLIANCE—2 3892,3447
INDEPENDENTS—4500,4417
BLACK FIRST LAND FIRST—4280,4201
ABANTU BATHO CONGRESS—3400,3337
AFRICAN TRANSFORMATION MOVEMENT—3300,3239
FORUM 4 SERVICE DELIVERY—2040,2002

101889 valid votes. Shares use this ballot’s party totals. All published entries are included.

IEC source

How the vote changed

Other

Council seats by election

Swipe to see history

2016Seats
ANC34—
DA22—
FF+4—
EFF5—
INDEPENDENT COUNCILLORS2—

34 for a majority · 67 seats

2021Seatsvs 2016
ANC33
DA17
FF+9
EFF6

34 for a majority · 67 seats

NW405 - JB Marks · Council seats by election
ElectionParty / entrySeatsCouncil totalMajority needed
2 016AFRICAN NATIONAL CONGRESS346734
2 016DEMOCRATIC ALLIANCE226734
2 016ECONOMIC FREEDOM FIGHTERS56734
2 016VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS46734
2 016INDEPENDENT COUNCILLORS26734
2 016CONGRESS OF THE PEOPLE06734
2 016INDEPENDENTS06734
2 016PAN AFRICANIST CONGRESS OF AZANIA06734
2 021AFRICAN NATIONAL CONGRESS336734
2 021DEMOCRATIC ALLIANCE176734
2 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS96734
2 021ECONOMIC FREEDOM FIGHTERS66734
2 021PATRIOTIC ALLIANCE26734
2 021ABANTU BATHO CONGRESS06734
2 021AFRICAN TRANSFORMATION MOVEMENT06734
2 021BLACK FIRST LAND FIRST06734
2 021FORUM 4 SERVICE DELIVERY06734
2 021INDEPENDENTS06734

Ward + municipal PR votes. Missing and grouped entries are not assumed to be zero. Published boundaries may differ between elections.

All history data (JSON)

Ward + municipal PR votes by election

Swipe to see history

2016Vote %
ANC50.9%—
DA32.2%—
FF+5.4%—
EFF7.5%—
INDEPENDENT COUNCILLORS3.2%—
Other0.9%—
2021Vote %vs 2016
ANC48.0%
DA25.4%
FF+13.5%
EFF9.0%
INDEPENDENT COUNCILLORS0.0%
PA2.3%
Other1.7%
NW405 - JB Marks · Ward + municipal PR votes by election
ElectionPartyVotesVote share (%)Valid ballot totalAvailability
2 016AFRICAN NATIONAL CONGRESS66 68950,8641131 112Reported
2 016DEMOCRATIC ALLIANCE42 23132,2099131 112Reported
2 016VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS7 0575,3824131 112Reported
2 016ECONOMIC FREEDOM FIGHTERS9 8127,4837131 112Reported
2 016INDEPENDENT COUNCILLORS4 1373,1553131 112Reported
2 016PATRIOTIC ALLIANCE00131 112No votes recorded in the complete party list.
2 016CONGRESS OF THE PEOPLE5950,4538131 112Reported
2 016BLACK FIRST LAND FIRST00131 112No votes recorded in the complete party list.
2 016ABANTU BATHO CONGRESS00131 112No votes recorded in the complete party list.
2 016AFRICAN TRANSFORMATION MOVEMENT00131 112No votes recorded in the complete party list.
2 016FORUM 4 SERVICE DELIVERY00131 112No votes recorded in the complete party list.
2 016PAN AFRICANIST CONGRESS OF AZANIA1950,1487131 112Reported
2 021AFRICAN NATIONAL CONGRESS48 91148,0042101 889Reported
2 021DEMOCRATIC ALLIANCE25 83725,358101 889Reported
2 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS13 80013,5442101 889Reported
2 021ECONOMIC FREEDOM FIGHTERS9 2009,0294101 889Reported
2 021INDEPENDENT COUNCILLORS00101 889No votes recorded in the complete party list.
2 021PATRIOTIC ALLIANCE2 3892,3447101 889Reported
2 021CONGRESS OF THE PEOPLE00101 889No votes recorded in the complete party list.
2 021BLACK FIRST LAND FIRST4280,4201101 889Reported
2 021ABANTU BATHO CONGRESS3400,3337101 889Reported
2 021AFRICAN TRANSFORMATION MOVEMENT3300,3239101 889Reported
2 021FORUM 4 SERVICE DELIVERY2040,2002101 889Reported
2 021PAN AFRICANIST CONGRESS OF AZANIA00101 889No votes recorded in the complete party list.

Ward + municipal PR votes. Missing and grouped entries are not assumed to be zero. Published boundaries may differ between elections.

All history data (JSON)

History data & sources

Ward + municipal PR votes. Connecting bands show the same party’s share or seats between elections, not individual voters moving between parties. Select a year to inspect its values; use the election-year selector to explore its results and places.

The chart names the five largest parties across these elections. The vote list also names parties gaining at least 2 percentage points since the previous election; remaining votes are combined under Other. Other’s change compares the same group of parties in both elections. Missing values remain unavailable.

  • All points use the same ballot basis. Ballot totals are not counts of individual voters.
  • 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.
All parties & exact values

Council government

Who governed after 2021

ANC + PAFeb 2026
Administrations & sources

MISTRA records the administrations that governed after the 2021 election, through 28 February 2026. The latest recorded administration is shown below, followed by its predecessors. Party roles and officeholders are recorded at formation; later changes may appear in the notes.

ANCPA

Members at formation · majority coalition · 22 Nov 2021 · recorded active at source cutoff

Inaugural mayor: G. K. Qhele (ANC)

1 recorded administration · 2021–February 2026
  1. ANC + PA

    22 Nov 2021 → Active at cutoff · 28 Feb 2026

    Members at formation. Inaugural mayor: G. K. Qhele.

MISTRA, 2026 edition v1.0

Original coalition coding: CC BY 4.0. IEC seat figures and municipal identifiers retain their original terms. Dates and party labels have been normalised. Counted clarifications are labelled and sourced; original wording and source issues are retained in the data.

Ward results

Browse wards

Wards in JB Marks

34 wards

Ward 1
ANC71.7%Leading candidate: Rabodiba David Maloganye
EFF12.3%
Lead: 1 961 votes
Ward 2
FF+43.5%Leading candidate: Everhardus Johannes Jacobus Laing
DA40.8%
Lead: 110 votes
Ward 3
DA61.4%Leading candidate: Anne Van Onselen
FF+27.9%
Lead: 1 932 votes
Ward 4
DA44.9%Leading candidate: Ludwig Johannes Zerwick
ANC24.6%
Lead: 761 votes
Ward 5
DA53.6%Leading candidate: Heinricha Hodgson
FF+42.6%
Lead: 467 votes
Ward 6
ANC62.7%Leading candidate: Mafinki Stephen Tloome
DA17.9%
Lead: 1 011 votes
Ward 7
DA68.9%Leading candidate: Johanna Steenkamp
FF+26.5%
Lead: 1 259 votes
Ward 8
ANC77.8%Leading candidate: Rapuleng Hodge Mokgeti
EFF14.1%
Lead: 1 352 votes
Ward 9
ANC65.2%Leading candidate: Mantwa Mathilda Kasale
EFF18.0%
Lead: 1 279 votes
Ward 10
ANC79.5%Leading candidate: Albert Lepadile Hennicks
EFF13.0%
Lead: 1 382 votes
Ward 11
ANC77.2%Leading candidate: Ramotshegare Richard Buti
EFF10.4%
Lead: 1 214 votes
Ward 12
ANC81.3%Leading candidate: Gontse Nathaniel Molotsi
EFF11.0%
Lead: 1 997 votes
Ward 13
ANC57.5%Leading candidate: Lorêal Tesnia Abrahams
PA16.6%
Lead: 1 427 votes
Ward 14
ANC79.6%Leading candidate: Ivan Clarde Derbyshire
EFF13.1%
Lead: 1 244 votes
Ward 15
DA58.5%Leading candidate: Madra Dirkie De Bruin
FF+33.2%
Lead: 881 votes
Ward 16
ANC82.1%Leading candidate: Tshepiso David Charity Moalusi
EFF11.2%
Lead: 2 004 votes
Ward 17
ANC74.9%Leading candidate: Ghadi Rebecca Kgobane
EFF17.6%
Lead: 1 646 votes
Ward 18
ANC80.3%Leading candidate: William Moshimanegape Manzini
EFF10.9%
Lead: 1 829 votes
Ward 19
ANC83.7%Leading candidate: Simon Molefi Moretsi
EFF12.2%
Lead: 2 262 votes
Ward 20
ANC71.2%Leading candidate: Muthuphei Richard Ramalisa
EFF17.7%
Lead: 1 685 votes
Ward 21
ANC43.9%Leading candidate: Rufane Alistair Makousa
PA29.7%
Lead: 458 votes
Ward 22
DA68.6%Leading candidate: Sandra Britz
FF+23.4%
Lead: 1 000 votes
Ward 23
DA66.3%Leading candidate: Werner Nicor Van Onselen
FF+31.8%
Lead: 1 621 votes
Ward 24
DA71.1%Leading candidate: Jeanne Marguerite Adriaanse
FF+23.7%
Lead: 1 207 votes
Ward 25
DA61.6%Leading candidate: Abraham Albertus Le Roux
FF+30.2%
Lead: 717 votes
Ward 26
ANC75.5%Leading candidate: Tau Huddleston Mogorosi
EFF16.0%
Lead: 1 973 votes
Ward 27
ANC67.8%Leading candidate: Kenewang Ruddy Manja
EFF17.1%
Lead: 1 275 votes
Ward 28
ANC41.9%Leading candidate: Mogorosi John Moyo
DA27.4%
Lead: 349 votes
Ward 29
ANC83.9%Leading candidate: Matumelo Pauline Mokone
EFF13.5%
Lead: 1 737 votes
Ward 30
ANC76.9%Leading candidate: Jan Lumkile Links
EFF13.7%
Lead: 1 530 votes
Ward 31
ANC80.2%Leading candidate: Leon Musa Mkhabela
EFF12.0%
Lead: 1 820 votes
Ward 32
ANC49.9%Leading candidate: Tshepang Tsamai
FF+27.5%
Lead: 699 votes
Ward 33
ANC76.6%Leading candidate: Isaac Thomson Meya
EFF18.0%
Lead: 2 124 votes
Ward 34
ANC60.3%Leading candidate: Ishmael Moilwa
FF+21.5%
Lead: 1 148 votes
Wards in JB Marks ·
WardElectionParty / entryVotesVote share (%)
Ward 12 021AFRICAN NATIONAL CONGRESS2 36871,7141
Ward 12 021ECONOMIC FREEDOM FIGHTERS40712,3259
Ward 22 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS1 78043,5208
Ward 22 021DEMOCRATIC ALLIANCE1 67040,8313
Ward 32 021DEMOCRATIC ALLIANCE3 54361,4038
Ward 32 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS1 61127,9203
Ward 42 021DEMOCRATIC ALLIANCE1 68344,9159
Ward 42 021AFRICAN NATIONAL CONGRESS92224,6064
Ward 52 021DEMOCRATIC ALLIANCE2 28253,6058
Ward 52 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS1 81542,6357
Ward 62 021AFRICAN NATIONAL CONGRESS1 41362,7442
Ward 62 021DEMOCRATIC ALLIANCE40217,8508
Ward 72 021DEMOCRATIC ALLIANCE2 04468,8911
Ward 72 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS78526,4577
Ward 82 021AFRICAN NATIONAL CONGRESS1 65177,804
Ward 82 021ECONOMIC FREEDOM FIGHTERS29914,0905
Ward 92 021AFRICAN NATIONAL CONGRESS1 76565,2495
Ward 92 021ECONOMIC FREEDOM FIGHTERS48617,9667
Ward 102 021AFRICAN NATIONAL CONGRESS1 65179,4896
Ward 102 021ECONOMIC FREEDOM FIGHTERS26912,9514
Ward 112 021AFRICAN NATIONAL CONGRESS1 40377,2152
Ward 112 021ECONOMIC FREEDOM FIGHTERS18910,4018
Ward 122 021AFRICAN NATIONAL CONGRESS2 30981,2742
Ward 122 021ECONOMIC FREEDOM FIGHTERS31210,982
Ward 132 021AFRICAN NATIONAL CONGRESS2 00857,5193
Ward 132 021PATRIOTIC ALLIANCE58116,6428
Ward 142 021AFRICAN NATIONAL CONGRESS1 49079,6366
Ward 142 021ECONOMIC FREEDOM FIGHTERS24613,148
Ward 152 021DEMOCRATIC ALLIANCE2 03658,4721
Ward 152 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS1 15533,1706
Ward 162 021AFRICAN NATIONAL CONGRESS2 32082,0948
Ward 162 021ECONOMIC FREEDOM FIGHTERS31611,1819
Ward 172 021AFRICAN NATIONAL CONGRESS2 15174,9477
Ward 172 021ECONOMIC FREEDOM FIGHTERS50517,5958
Ward 182 021AFRICAN NATIONAL CONGRESS2 11780,3416
Ward 182 021ECONOMIC FREEDOM FIGHTERS28810,9298
Ward 192 021AFRICAN NATIONAL CONGRESS2 64883,7445
Ward 192 021ECONOMIC FREEDOM FIGHTERS38612,2075
Ward 202 021AFRICAN NATIONAL CONGRESS2 24371,229
Ward 202 021ECONOMIC FREEDOM FIGHTERS55817,7199
Ward 212 021AFRICAN NATIONAL CONGRESS1 41143,929
Ward 212 021PATRIOTIC ALLIANCE95329,67
Ward 222 021DEMOCRATIC ALLIANCE1 51768,6115
Ward 222 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS51723,3831
Ward 232 021DEMOCRATIC ALLIANCE3 11666,2556
Ward 232 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS1 49531,7882
Ward 242 021DEMOCRATIC ALLIANCE1 81271,0867
Ward 242 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS60523,7348
Ward 252 021DEMOCRATIC ALLIANCE1 40761,5755
Ward 252 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS69030,1969
Ward 262 021AFRICAN NATIONAL CONGRESS2 50375,4825
Ward 262 021ECONOMIC FREEDOM FIGHTERS53015,9831
Ward 272 021AFRICAN NATIONAL CONGRESS1 70567,8202
Ward 272 021ECONOMIC FREEDOM FIGHTERS43017,1042
Ward 282 021AFRICAN NATIONAL CONGRESS1 00741,906
Ward 282 021DEMOCRATIC ALLIANCE65827,3824
Ward 292 021AFRICAN NATIONAL CONGRESS2 06983,9351
Ward 292 021ECONOMIC FREEDOM FIGHTERS33213,4686
Ward 302 021AFRICAN NATIONAL CONGRESS1 86176,8691
Ward 302 021ECONOMIC FREEDOM FIGHTERS33113,672
Ward 312 021AFRICAN NATIONAL CONGRESS2 14080,1798
Ward 312 021ECONOMIC FREEDOM FIGHTERS32011,9895
Ward 322 021AFRICAN NATIONAL CONGRESS1 55949,872
Ward 322 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS86027,5112
Ward 332 021AFRICAN NATIONAL CONGRESS2 77576,594
Ward 332 021ECONOMIC FREEDOM FIGHTERS65117,9685
Ward 342 021AFRICAN NATIONAL CONGRESS1 78360,2568
Ward 342 021VRYHEIDSFRONT PLUS | FREEDOM FRONT PLUS63521,46

The two largest published entries shown on each ward card. Open a ward for all entries.

Source data

Sources & result details

IEC: 15 Jan 2022, 17:50 SAST · checked 05 Nov 2026, 15:39 SAST

Historical comparisons use published area results. Boundaries may change between elections. Vote shares use the ballot labelled on each chart; ballots are not individual voters.

Vote percentages beside council seats combine ward and municipal PR ballots. Seat counts include both ward and PR councillors.

Seat calculation & source

These are the ward and PR seats published by the IEC. The totals add up to all 67 council seats. This is the historical election allocation, not a record of government changes during the term. Any grouped “Other” seats remain grouped.

IEC result time: 15 Jan 2022, 17:50 SAST · Source figures ↗

Ward vs PR ballots

Ward: choose a person. PR: choose a party.

Ward ballot

The candidate with the most votes in the whole ward wins one seat. They do not need more than 50%.

Municipal PR ballot

PR means proportional representation. Party-list seats balance the council’s overall party representation.

Two ballots work together

Party ward votes and municipal PR votes both count towards the party’s overall seat allocation.

Outside metros, voters also have a separate district PR ballot. An independent can stand in a ward but not on a party PR list.

Understanding the results

IEC guide to council seats
IEC source figures

Give something back

Found Counted useful? Support the South African non-profits holding power to account.

Donations go directly to each organisation.

Share results