How votes become seats?

How votes become seats — and what would happen if things were different? Build scenarios, test coalitions, predict outcomes, learn how the system works.

Mandator

Guide to Mandator — what can you do?

Mandator gives you the tools to understand how votes become seats — and what would happen if things were different. Build scenarios, test coalitions, predict outcomes, learn how the system works.

📊Enter percentages or number of votes — you can adjust each list using a slider, percentage or exact number of votes. The total is tracked automatically.
Normalize to 100% — if the sum of percentages is off, one click fixes everything proportionally.
🏛️Add predefined blocs — the SNS bloc, EU5 coalition and Right bloc can run individually or as a joint list with one click.
🎓Student List — a special category, add it with one click.
🤝Form your own coalition — combine any parties and see how many seats a joint list would win.
Change the status of each list — mark who is the ruling majority, who is opposition, who abstains. The parliamentary display updates immediately.
🟢Visual display of seats — lists that passed the threshold get a green badge with the number of seats; lists below the threshold are greyed out.
📅Load historical elections — accurate results from 2008 to 2023. The threshold and coefficient for national minority lists automatically adjust to the year (5% until 2016, 3% from 2020).
🗳️Government formation vote — each historical preset shows how many MPs voted for the government.
📈Historical data — a tabular overview of registered voters, turnout, valid ballots, invalid ballots and votes that entered/did not enter seat allocation, for each election from 2008 to 2023.
📖Educational cards — explain the D'Hondt method, threshold, national minority lists, valid ballots and much more.
🔢D'Hondt table — beneath the parliamentary display lies a detailed table of all the quotients used to allocate seats. Click the button to reveal it — a true hidden gem for those who want to understand the system fully.
Export scenario to Excel (XLSX) — download a table with all votes, percentages and seats for the current scenario.
Reset and start over — return everything to the beginning with one click.
Voter Turnout
Turnout = %

Invalid ballots = % of turnout
Valid ballots = % of turnout
Threshold = 3% of valid ballots = votes
Electoral Lists
Distributed:0%
Add list
Studentska listaOpposition
SNS blokRuling majority
EU5 coalitionOpposition
DesnicaOpposition
Other parties
National minority parties
Custom electoral list
Custom coalitions
Form your own coalition — combine any parties and see how many seats a joint list would win.
Seats
250
Turnout
-
Valid ballots
-
Passed threshold
-
-
Below threshold
-
-
Parliamentary Seat Distribution
Ruling majority Abstaining Opposition N/A

The total votes for each list are divided by 1, 2, 3… up to 250. Quotients are sorted from largest to smallest — the top 250 win seats. Green = seat won.

The threshold is 3% of all valid ballots (from 2020; previously 5%). National minority lists receive a 35% increase in their coefficients (from 2020; previously no increase).

How does the electoral system work?
Click on a topic to learn more about the rules that turn votes into seats.
📊D'Hondt favours larger parties

The highest quotient system sounds neutral, but in practice it slightly favours larger lists. Result: a political actor with 40% of votes often wins more than 40% of seats, while an actor with 5% wins slightly less than 5%.

Concrete example — 2023 parliamentary elections: the list "Serbia Must Not Stop" won 46.75% of votes, but received 129 out of 250 seats, which is 51.6%. The "Serbia Against Violence" list with 23.66% of votes received 58 seats (23.2%) - nearly proportional, as they are also a large list. Smaller lists typically receive a slightly smaller share of seats than their share of votes.

⚖️Threshold: 3% or you're out

Each list must win at least 3% of the total valid ballots to participate in seat allocation. The exception is national minority parties — they participate regardless of percentage.

Important: the 3% threshold has been in effect since the 2020 parliamentary elections. In all previous elections (2008, 2012, 2014, 2016) the threshold was 5%. The 35% increase in D'Hondt coefficients for national minority lists also applies from 2020 — in earlier elections, minority parties did not have this increase.

🏛️National minority lists — natural threshold instead of electoral threshold

Serbia applies a natural threshold for national minority parties — they enter seat allocation regardless of the percentage of votes won. As compensation for their small electorate, the D'Hondt coefficients of minority lists are always increased by 35%. This has applied since 2020 — in earlier elections, minority parties did not have this increase.

🗑️Votes below the threshold simply disappear

If a list does not pass the threshold (3% of valid ballots), all votes that list received are excluded from seat allocation — as if those voters never voted. These votes do not just disappear for that list — they effectively increase the percentage won by parties that did pass the threshold.

A dramatic difference in practice: in the 2016 only 3.6% of valid ballots remained below the threshold (around 130,000). In the 2014, due to the then-applicable 5% threshold, as many as 20.1% of valid ballots — nearly 700,000 voters whose votes did not enter seat allocation. Dveri (3.69%), DSS (4.38%), LDP (3.48%) and United Regions of Serbia (3.14%) all passed 3% but not 5%, and received zero seats.

📋Valid ballots — not every vote counts equally

The threshold is calculated from valid ballots — not from the total number of voters who turned out. Invalid ballots (blank, incorrectly filled) do not count towards the threshold or seat allocation. In the 2023 elections there were about 104,000 invalid ballots (2.7% of turnout). This means the threshold was 3% of 3,710,978, not of the total turnout of 3,820,746.

🗳️You voted for a list, not a person

In Serbia, voters vote for an electoral list, not for individual candidates. Which candidates from a list win seats depends exclusively on their order on the list, determined by the party itself — there is no preferential voting. A voter cannot influence who specifically becomes an MP, only how many seats the list receives.

🏛️Seats are just the beginning — who actually governs?

Forming a government requires an absolute majority — 126 out of 250 MPs. But the number that votes for the government does not have to equal the number of seats won by the ruling parties in the election.

The reason: parliamentary seats in Serbia are free mandates, meaning an MP or even an entire parliamentary group can vote against the party line, support a government that their party nominally opposed, or leave their group and join another. In practice, it has happened that parties that were in opposition after the election supported the government during the vote, or that MPs crossed over to the ruling side during the term.

That is why Mandator displays the official data on how many MPs voted for the formation of each government — that number often differs from the total seats of the ruling coalition from the election. And that is why in Mandator you can change the status of any parliamentary group from ruling majority to opposition and vice versa — and judging by experience, it is more often the latter.

Historical Election Results
Load the actual results of previous elections as a starting point. Resets all current inputs.
Historical Data by Electoral Cycle (2008–2023)
Percentages: turnout of registered voters; valid/invalid of turnout; entered/did not enter of valid ballots.
📋 Registered voters
🗳️ Voters turned out
✅ Valid ballots
❌ Invalid ballots
✔️ Entered seat allocation (votes for lists that passed the threshold)
✖️ Did not enter seat allocation (votes for lists below the threshold)