Lula wins Brazil’s runoff after Polymarket made Flávio Bolsonaro a 79% favourite
Lula beat Flávio Bolsonaro 51.8% to 48.2% in Brazil’s 25 October runoff, a margin of about 4.4 million votes. Polymarket had Bolsonaro at about 79% on election morning; his price fell to zero within three hours of the polls closing. How the market moved, how it settled, and why Bolsonaro says he will ask for the result to be annulled.
In this article
President Luiz Inácio Lula da Silva has won a fourth term, beating Senator Flávio Bolsonaro in Brazil's runoff on Sunday, 25 October. With all votes counted, Lula had 51.79% of valid votes (64,256,232) to Bolsonaro's 48.21% (59,826,041), a margin of about 4.4 million votes. Prediction markets had expected the opposite: on the morning of the vote, Polymarket gave Bolsonaro about 79%.
How the market moved
Bolsonaro's price traded between about 76% and 82% for most of the final week and was 81.9% in the early afternoon of election day. It slipped as polls closed, then collapsed once results started to come in.
Source: Polymarket price history, 25 October 2026
Show the dataHide the data
| Flávio Bolsonaro | Lula | |
|---|---|---|
| 2:45 pm | 82% | 19% |
| 5 pm | 76% | 25% |
| 6 pm | 66% | 35% |
| 7 pm | 61% | 40% |
| 7:30 pm | 29% | 73% |
| 8 pm | 22% | 78% |
| 8:15 pm | 11% | 89% |
| 8:45 pm | 3% | 97% |
| 9:15 pm | 0% | 100% |
- 5 p.m., the scheduled close: Bolsonaro 75.8%.
- Two more hours of voting. Supreme Court Justice Cristiano Zanin ruled minutes before the scheduled close to keep polls open for two more hours, to 7 p.m., after requests from both campaigns. Bolsonaro's price fell to about 65% as the news spread.
- 7 p.m., the extended close: 60.6%.
- 7:30 p.m., the first results: 28.8%, with Lula above 70%.
- 9:15 p.m.: Bolsonaro 0.1%.
The money
Polymarket's presidential election event traded $249.1 million. Of that, $62.2 million traded on Bolsonaro and $48.5 million on Lula. The market resolved Yes for Lula at 12:12 a.m. Brasília time on Monday. Polymarket's margin market also settled: "Lula by less than 4%" paid out, with the final margin at 3.58 points.
On Kalshi, the winner market settled Yes for Lula as well. Its Bolsonaro contract was the more heavily traded of the two, at about 18.7 million contracts against about 10.2 million for Lula.
Live and settled prices: Brazil on Polymarket · on Kalshi.
Why the market got it wrong
The polls never showed Bolsonaro as a 79% favourite. Most runoff polls had him narrowly ahead, around 51–49, which is a lead well inside any poll's error. Our preview noted that gap between the polls and the price before the vote (Brazil runoff odds). Bolsonaro had also topped the first round on 4 October with 47.0% to Lula's 45.2%, which may have made traders more confident than the runoff polls justified.
A 79% favourite should still lose about one time in five. Over many markets, Polymarket's prices have been well calibrated: in our study of 358,236 resolved markets, contracts priced around 70¢ a day before resolution won about 75% of the time. A single upset does not show a market is broken, but this one was expensive for the traders on the wrong side.
Bolsonaro refuses to concede
Bolsonaro said on Sunday night that it was "impossible to recognise the result of this election" and that his side would ask for the election to be annulled, arguing that the two-hour extension changed "the rules of the game" in the middle of the vote. CBS News reported an evening of confusion at some polling places after the late decision; in Rio de Janeiro some voting machines had already been switched off and could not be turned back on. It is not yet clear whether a petition has been filed or on what grounds.
The prediction markets have already settled, and their rules make an annulment bid unlikely to change that: they resolve on the official result. Lula's new term begins in January 2027.



