When Brazil’s polling stations closed at 5 p.m. Brasília time on 25 October, the two largest prediction markets agreed on who would win the run-off, and they were wrong. In our pull of hourly price data, a “Lula wins” contract closed that hour at 22 cents on Kalshi and 24.5 cents on Polymarket. Flávio Bolsonaro traded at about 76 cents on both. A few hours later the Superior Electoral Court (TSE) declared Lula re-elected with 51.79% of valid votes to 48.21%.
A 22% outcome is not a freak event. It should happen about once in five tries, so one upset says little about whether the markets were badly calibrated. What the data does show is when the markets made up their minds, and how much money traded once the answer was known.
The first round set the price
Before the first round on 4 October, Lula was priced at 37 to 37.5 cents on both venues. Then the first-round count put Flávio Bolsonaro ahead with 47.03% to Lula’s 45.16%, and the Lula contract fell to 14 to 18 cents within the hour. It kept sliding to a low of 10.5 cents on Polymarket and 11 cents on Kalshi on 9 October.
From 15 October the price climbed back to a range of roughly 20 to 25 cents and stayed there for the last ten days of the campaign. The two venues tracked each other closely: across 591 matching hours, their Lula prices were within two cents of each other 86% of the time. On election day itself the Lula price stayed between about 18 and 25 cents until the polls shut.
Most of the trading came after the polls closed
Kalshi’s public market data shows 18.71 million contracts traded on Flávio Bolsonaro and 10.17 million on Lula over the life of the market. Adding up Kalshi’s hourly candles, 14.38 million of the Flávio contracts and 4.64 million of the Lula contracts changed hands after 5 p.m. Brasília time. That is 19.0 million of 28.9 million, or 66% of all contracts on the two finalists, traded once counting had started.
On Polymarket, the main winner market drew $249.1 million in volume across all candidates since it opened in September 2025. The Flávio Bolsonaro contract alone took $62.2 million and the Lula contract $48.5 million. A separate run-off margin market with about $10.3 million in volume settled on “Lula by less than 4%”. His actual margin was 3.58 points.
Key facts
Run-off result (TSE): Lula 51.79%, Flávio Bolsonaro 48.21%, 25 Oct 2026.
Lula price at poll close: 22¢ on Kalshi, 24.5¢ on Polymarket.
Lula price before first round: 37 to 37.5¢; low after it: 10.5 to 11¢ (9 Oct).
Kalshi volume: 28.9M contracts on the two finalists, 66% traded after polls closed.
Polymarket winner market: $249.1M in total volume.
Data: Polymarket and Kalshi public APIs, pulled 27 Oct 2026; hourly prices, UTC.
Why it matters for GambleFi
The result lands a week before the US midterms on 3 November, where election contracts on Kalshi and Polymarket are drawing heavy trading. We compared their midterm prices contract by contract in our 31-contract check and looked at another national vote in Israel’s election markets. Brazil is a reminder that a favourite at 76 cents still loses about a quarter of the time, and that two venues agreeing does not make them independent forecasts. The same result also kept Brazil’s betting ban in place, as we covered in our report on the Supreme Court challenges. For how event contracts and onchain betting differ from iGaming tokens, see the GambleFi FAQ. This is a review of market data, not a recommendation to trade.
