Vučić conceded defeat before the count showed it. Our prediction confirmed it within half an hour

Aleksandar Vučić conceded defeat in Serbia's snap parliamentary election on Sunday at around half past nine in the evening, an hour and a half after polling stations closed. He relied on a sample of polling stations that his party had at its disposal. At that moment the official running count of the Republic Electoral Commission (RIK) covered a tenth of a per cent of voters, and it kept his list in the lead until 23:14.
The prediction by the data journalism duo Kateřina Mahdalová & Michal Škop, which we recalculated every minute from RIK's running data, confirmed the students' victory at 22:01, half an hour after Vučić's speech. From then on, the uncertainty intervals of the two lists no longer overlapped. According to RIK's results with 99.6% of voters counted, the Student List won 53.7% of valid votes and Vučić's list, Ujedinjena Srbija (United Serbia), 39.5%. By our calculation, the students have 141 of the 250 seats and thus a majority of their own. The Serbian Progressive Party (SNS), which has governed the country since 2012, is losing power.
We recalculated the prediction from 21:13 CET (which is also local time in Serbia), when the model received the first RIK results. The figures in the text reflect the state of the count at 7:18 on 29 October, when 8,338 of 8,392 polling stations, with 99.6% of registered voters, had been counted. We calculate shares from valid votes. On its results website, RIK gives shares of all ballots cast, including invalid ones, which is why it has the students at 53.04% and Vučić's list at 38.97%. The result is not yet final: under a RIK decision of 28 October, voting will be repeated at 53 polling stations on 1 November.

Vučić knew before the prediction, the count found out later

Serbian polling stations closed at 20:00. At around half past nine Vučić appeared before journalists: "Na osnovu uzorka stratifikovanog je jasno da smo ove izbore izgubili", that is, on the basis of a stratified sample it is clear that we have lost this election. The news site Telegraf published his words at 21:29, N1 at 21:33. He estimated that the students would get 135 to 140 seats. He did not say how his party had put together its sample of polling stations.
At that moment our prediction still showed the opposite. It relies only on the official results, which RIK publishes as they come in. It received the first of them at 21:13, and by half past nine it had results for a tenth of a per cent of voters. From these, the model gave SNS 55% and the students 36%, but with uncertainty intervals more than twenty percentage points wide: SNS 45–64%, the students 24–49%. An estimate like that mainly says that the model does not yet know who will win.
The order flipped in the prediction at 21:44, with 0.87% of voters counted: students 47.7%, Vučić's list 44.9%. But the uncertainty intervals still overlapped widely. At 22:01, with 3.2% of voters counted, the prediction gave the students 51.2% (interval 49.1–53.4%) and SNS 41.0% (37.6–44.5%). From then on the intervals of the two lists no longer overlapped, and the point estimate gave the students 134 seats. The prediction's point estimate had given them a majority of 126 seats since 21:46.
Yet the RIK running count showed the reverse order all evening. At 22:01, Vučić's list led it with 49.7% ahead of the students with 41.5%. The students did not take the lead in the running total until 23:14, when 14% of voters had been counted, 73 minutes after the intervals separated in the prediction. They did not pass half of the valid votes in the running total until 2:38 in the morning, with 63% of voters counted.
Vučić's party thus had the result first, our prediction a quarter to half an hour later, and the official running count roughly an hour and three quarters after the party. The independent organisations CeSID, working with the agency Ipsos, and CRTA calculated their own projections from samples of polling stations and arrived at similar figures: CeSID and Ipsos at 52.9% for the students and 38.8% for Vučić's list (Balkan Insight), CRTA at 52.45% and 39.2% (N1).
The prediction confirmed Vučić’s defeat within half an hour; the running count showed it only after 11 pm
Share of valid votes (%): prediction of the final result with 90% interval, and votes counted so far • 25–26 October 2026, CET
DataTimes.org

The solid line is the prediction of the final share, the band around it the 90% uncertainty interval, the dashed line the votes counted so far. Below each time is the share of voters already counted. The time axis is compressed from 23:30. The very first estimates, made when less than a hundredth of a per cent of voters had been counted, and values outside the axis are cut off. Final state = 07:18 CET on 29 Oct, 99.6% of voters counted.

The running count overstated Vučić's list by thirteen points

Polling stations do not report results in random order. The model therefore does not treat the running total as an estimate of the final result. For each polling station already counted, it looks for stations that voted similarly in previous parliamentary elections (2020, 2022 and 2023), estimates from the difference against the past how voters have shifted, and fills in the stations that have not yet reported. It derives the uncertainty interval from how similar estimates erred in the three previous elections.
When the first per cent of voters had been counted, Vučić's list had 52.5% in the running total. That is 13 percentage points more than it eventually received. Among the first to report were polling stations where SNS had strong support. At the same moment, the model estimated it at 44.6%, and within the next quarter of an hour at 41%.
The gap between the running total and the final result narrowed slowly. With a quarter of voters counted, shortly before one in the morning, the count still overstated Vučić's list by 5.2 points and understated the students by 7 points. At the same moment, the prediction differed from the final result by 0.9 points for SNS and 1.3 points for the students.
On the results map this looks like a paradox. RIK reports results for 191 municipalities and city districts, including voters abroad, prisons and 22 municipalities of Kosovo, whose voters on the Serbian rolls cast their ballots in southern Serbia. According to the prediction, Vučić's list leads in 95 of them, the students in 91. But the municipalities where the students lead have 4.96 million registered voters, those where SNS leads 1.35 million. The students won in all 17 Belgrade districts, in Novi Sad, Kragujevac, Čačak and Niš; Vučić's list mainly in small municipalities in the south and east of the country and among voters registered in Kosovo.

The prediction consistently underestimated the students

From 22:01 onwards, the prediction did not change the winner or the students' majority. But it underestimated the size of their victory throughout the night. With one to five per cent of voters counted, it gave them on average 3.2 percentage points less than they eventually received; with five to 25 per cent counted, 1.4 points less. Their final result of 53.7% lay outside the prediction's 90% interval in four fifths of the updates the prediction made between one and 25 per cent of voters counted. The interval contained the share of Vučić's list throughout the night.
So the interval was too narrow for the students. The model learns how large errors can be from only three previous elections, and it admitted as much on the results page, labelling its intervals and probabilities as experimental. Turnout offers a likely explanation for the underestimate. In 2023, 58.8% of voters went to the polls; this year, 69%. If new voters turned out mainly where the students were strong, and their numbers grew faster at the counted polling stations than in previous elections, a model that derives shifts from past elections would have missed some of their votes. This can only be verified with data for individual polling stations.
Once half of the voters had been counted, the prediction differed from the final result for the students by 0.4 points on average, and the interval contained it.

Fewer than seven thousand votes decide the last seat

In Serbia, seats are allocated using the D'Hondt method among lists that won at least three per cent of the ballots cast, including invalid ones. This year that amounts to 3.04% of valid votes. Lists of national minorities do not have to meet the threshold, and their shares are increased by 35 per cent when seats are allocated (N1, 2020 amendment to the law).
By our calculation from the votes counted so far, the students will win 141 seats, Vučić's list 103, the Alliance of Vojvodina Hungarians 2, the Albanian Coalition 2, and Rasim Ljajić's list and SDA Sandžak one each. Ivica Dačić's Socialist Party of Serbia, with 2.2% of valid votes, did not make it into parliament, nor did European Serbia of Marinika Tepić and Zdravko Ponoš with 0.3%.
The last, 250th seat goes to the students. If Vučić's list had roughly 6,700 more votes, it would have won it. The data are still missing 54 polling stations with 25,837 registered voters, and the repeat vote on 1 November will also decide about them. One seat may therefore still shift; the students' majority will not. For that they need 126 seats.
Why Vučić lost even though his list received almost as many votes as three years ago, we explain in our analysis of the election.

🔻🔻🔻

Vučić did not lose voters. A united opposition and higher turnout defeated him
Elections

Vučić did not lose voters. A united opposition and higher turnout defeated him

Almost as many people in Serbia voted for Vučić's list as three years ago: 1.73 million against 1.78 million. But the Student List received 2.35 million votes, 1.4 million more than the main opposition in 2023. Turnout rose by 612,000 people and the other parties all but disappeared. We look at how it happened, where the students won and what lies ahead for Serbia.

26 October 2026

Israel election: Netanyahu will not win a majority, prediction shows
Elections

Israel election: Netanyahu will not win a majority, prediction shows

Pre-election polls put Eisenkot's Yashar in the lead, and the overnight running tally overstated Likud. From the first hour of the count, the DataTimes.cz prediction showed a stalemate: Netanyahu's bloc will end up with 53 seats, Gadi Eisenkot's opposition with 48, and the 19 members of the Arab parties will decide whether anyone has a majority.

27 October 2026

Brazil's presidential election: Lula wins the runoff, prediction shows
Elections

Brazil's presidential election: Lula wins the runoff, prediction shows

Polls before the runoff had Flávio Bolsonaro slightly ahead, and during the night the running count briefly put him in front of Lula. From the first minutes of the count, however, the DataTimes.cz prediction pointed to a win for the incumbent president: Lula will finish on 51.8 per cent and beat the son of his predecessor by more than four million votes.

25 October 2026

Real-Time Predictions of Election Results: The New Normal
Elections

Real-Time Predictions of Election Results: The New Normal

Real-time predictions are reshaping election nights.

20 September 2024

Voter Shifts Between Elections: Insights from Statistical Analysis
Elections

Voter Shifts Between Elections: Insights from Statistical Analysis

Detailed data analysis reveal hidden changes between elections.

30 June 2024

German Elections: Did the Eastern Bloc Vote Radically? Not Exactly
Context

German Elections: Did the Eastern Bloc Vote Radically? Not Exactly

The German parliamentary elections were held on Sunday. At first glance, it may seem that former East Germany has become radicalized, but this is quite a distorted view.

28 February 2025