Weighted aggregator · probabilistic model · 2026 presidential election
Placar 2026
The first-round result (Oct 4), compared with the polls and the model's forecast, and what the polls and the counted vote say about the runoff (Oct 25). The dashboard combines 221 runoff polls and 75 first-round polls from 22 pollsters, corrects each one's known deviation, discounts the group's historical error and simulates the election 400,000 times. First come the two results; then, what drives the race; finally, what's under the hood.
Updated Oct 25, 2026, 1:23 p.m. 1st round Oct 4 · 2nd round Oct 25 Daniel Pessini Sobreira · model, data and dashboard
In 30 seconds: each candidate's chance in the runoff, what happened in the first round and how the race might end. The numbers are model estimates, presented the same way for both candidates.
Runoff · October 25 · who wins?
Flávio is ahead on election day. Chance of winning: Lula 18%, Flávio 82%.
The first-round counted vote, with the transfer declared by other candidates' voters (PoderData Oct 12; PoderData Oct 21; Quaest Oct 20), gives a starting margin of -2.7 for Lula. 57 polls conducted after Oct 4 are already in the margin. In 2014 and 2018 the left-wing candidate gained 6 to 10 points in the polls over the runoff campaign; the campaign is over.
Lula18%82%Flávio
Lula by more than 4 points2%Lula by up to 416%Flávio by up to 457%Flávio by more than 425%
Each candidate's chance of winning, in 100 elections simulated from today's scenario. Each band is a slice of the 400,000 simulations; the two light bands in the middle, close results, add up to 73%.
Adjusted marginTwo weeks ago: -2.0. Today: -0.9 in the polls (-1.3 including the first-round counted vote). A 1.1-point move toward Lula. Last week's trend: Toward Lula, slowing.
Latest pollsGerp (fieldwork through Oct 24): Lula 46 × Flávio 49 Palver (calibration v3) (fieldwork through Oct 24): Lula 49 × Flávio 50 Datafolha (fieldwork through Oct 24): Lula 47 × Flávio 48
Betting marketsPolymarket: Lula 20.5% on Oct 25, 8 a.m. (Flávio 79.5%, US$197 million). Since Sep 8: 59% → 40% (Sep 21) → 41% (Sep 30) → 38% (Oct 1) → 36% (Oct 3) → 15% (Oct 4, after the result) → 16% (Oct 5, evening) → 12% (Oct 10, after Datafolha, AtlasIntel and PoderData) → 12% (Oct 11, steady after Vox Brasil and Ipespe). → 17% (Oct 15) → 22% (Oct 16, after Datafolha 47 x 45, Quaest 46 x 44 and PoderData 50 x 50). → 23% (Oct 17, evening) → 20% (Oct 18, before the Band debate). → 23.5% (Oct 19, after PoderData, AtlasIntel, BTG/Nexus and Futura). → 21.5% (Oct 20, 1 p.m., after Real Time Big Data, Alfa and França). → 20.5% (Oct 21, 7:20 a.m., after Meio/Ideia; 19.5% overnight). → 21.5% (Oct 21, 4:34 p.m., after Quaest, Palver and Futura; 22.5% at 12:03 p.m.). → 21.5% (Oct 22, 9 a.m., after Gerp, Veritá and PoderData 51 x 49; 20.5% on the night of Oct 21). → 22.5% (Oct 22, 5 p.m., after Indexa 50.6 x 49.4; 21.5% to 22.5% through the day). → 22.5% (Oct 23, 3 a.m., after Datafolha 50 x 50 and Vox 50.6 x 49.4; steady since the afternoon of Oct 22). → 23.5% (Oct 23, 11 a.m., after Real Time Big Data 52 x 48, Alfa 52 x 48 and Ipespe 50.5 x 49.5). → 23.5% (Oct 23, 3 p.m., steady in the afternoon, after Vox, Real Time Big Data, Alfa, Ipespe and Veritá). → 20.5% (Oct 24, 3 a.m., after the Globo debate and Veritá 51.3 x 48.7). → 18% (Oct 24, 11 a.m., before Datafolha, AtlasIntel and Quaest; only Instituto França 51.4 x 48.6 and DataTrends 51.9 x 48.1 in valid votes). → 17.5% (Oct 24, 6 p.m., after CNT/MDA 50.7 x 49.3, Gerp 52 x 48 and Palver 50 x 49; 83.7% for Flávio at 5 p.m.; still without Datafolha, AtlasIntel and Quaest). → 20.5% (Oct 25, 8 a.m., election day, after Datafolha 51 x 49, Quaest 51 x 49, AtlasIntel 50.8 x 49.2, BTG/Nexus 50.5 x 49.5, Futura 50.1 x 49.9, Veritá 51.6 x 48.4, PoderData 51 x 49 and Colectta 49.7 x 50.3; 83.7% for Flávio on the afternoon of Oct 24).
What happened on October 4 · first round · official TSE result
Flávio finished the first round ahead, 47.03% to 45.16%: the polls had Lula +2.7 and the model expected Flávio in first with a 59% chance
The eve-of-election polls had Lula 2.7 points ahead on average. The model, which discounted their historical error, expected Flávio 0.7 ahead and gave him a 59% chance of finishing first. The actual gap was 1.9 points. Why Flávio pulled ahead and how far off the polls were is covered in the Comeback and Polls vs. ballots sections.
Counted by the TSE
Flávio 47.03% · Lula 45.16%
56,104,503 × 53,879,538 votes · gap of 2,224,965 · final count (100% of polling stations), read at 2:58 a.m. on Oct 5
What the model forecast (Oct 3)
Flávio in first: 59%
expected margin −0.7 (80% between −5.3 and +3.8); the result landed at the 37th percentile of the forecast
What the polls showed
Lula +2.7 on average
error of +4.6 points on the margin: Lula measured almost without error (+0.3), Flávio −4.2
Turnout and other results
Abstention 21.1%
2022: 20.9% · Cury 2.89% in third (the model gave a 49% chance) · blank 1.8% and spoiled 2.9% of votes
Candidate by candidate: votes, eve-of-election polls and model forecast
Candidate
Votes
Counted (valid)
Polls (Oct 3)
Model: median (80%)
Poll error
Model error
Within the 80%?
Lula (PT)
53,879,538
45.16%
45.5
45.0 (42.3–47.6)
+0.3
−0.2
yes
Flávio Bolsonaro (PL)
56,104,503
47.03%
42.8
45.7 (42.9–48.5)
−4.2
−1.3
yes
Augusto Cury (Avante)
3,448,569
2.89%
3.8
2.8 (1.7–4.5)
+0.9
−0.1
yes
Renan Santos (Missão)
2,675,887
2.24%
3.2
2.4 (1.4–3.9)
+1.0
+0.2
yes
Ronaldo Caiado (PSD)
2,605,148
2.18%
3.0
2.3 (1.3–3.7)
+0.8
+0.1
yes
Romeu Zema (Novo)
326,488
0.27%
0.7
0.4 (0.1–1.1)
+0.4
+0.1
yes
Others (6 candidates)
260,655
0.22%
1.1
0.7 (0.3–1.6)
+0.9
+0.5
no
Margin Lula − Flávio
−2,224,965
−1.87
+2.7
−0.7 (−5.3 to +3.8)
+4.6
+1.2
yes
Error = forecast minus counted, in points of valid votes. Source: TSE, resultados.tse.jus.br, election 6257, final count, read at 2:58 a.m. on Oct 5 (100.00% of polling stations). Forecast: previsoes_1turno_congeladas.json, final run of Oct 3. "Others" came in below the interval (0.22 vs. a floor of 0.3): it is the only candidate outside the 80% band.
Live count · runoff · October 25
On the night of October 25, this dashboard will project the result from the first ballot boxes
Starting at 5 p.m., the dashboard reads the TSE results CDN every minute and compares each municipality and zone with its own first round. With about 2% of polling stations counted, the projection stabilizes; in the 2022 replay it called the winner at 6:00 p.m., with 28% counted, while the TSE partial count still showed the loser ahead.
TSE partial countprojection80% intervalPlacar prior (before the first ballot box)
By state: counted, partial and projection
State
Counted
Partial (L − F)
Projection
80% CI
P(Lula)
Acre
—
—
—
—
—
Alagoas
—
—
—
—
—
Amazonas
—
—
—
—
—
Amapá
—
—
—
—
—
Bahia
—
—
—
—
—
Ceará
—
—
—
—
—
Federal District
—
—
—
—
—
Espírito Santo
—
—
—
—
—
Goiás
—
—
—
—
—
Maranhão
—
—
—
—
—
Minas Gerais
—
—
—
—
—
Mato Grosso do Sul
—
—
—
—
—
Mato Grosso
—
—
—
—
—
Pará
—
—
—
—
—
Paraíba
—
—
—
—
—
Pernambuco
—
—
—
—
—
Piauí
—
—
—
—
—
Paraná
—
—
—
—
—
Rio de Janeiro
—
—
—
—
—
Rio Grande do Norte
—
—
—
—
—
Rondônia
—
—
—
—
—
Roraima
—
—
—
—
—
Rio Grande do Sul
—
—
—
—
—
Santa Catarina
—
—
—
—
—
Sergipe
—
—
—
—
—
São Paulo
—
—
—
—
—
Tocantins
—
—
—
—
—
Abroad
—
—
—
—
—
Color: projected margin in the municipality (slate = Lula, terracotta = Flávio; darker = larger margin). Municipalities with no ballot box counted are gray. The municipal projection is the sum of the model's collection units.
—
Starts at 5 p.m.
Oct 25
the TSE releases the count once polls close; this section then updates every minute
Starting point
−2.2
Placar forecast frozen on the eve, Oct 24 (Lula − Flávio in valid votes); before the first ballot box, this is the projection
Replay: 2022 runoff
0.26 p.p.
mean projection error from 5% counted onward; result called at 6:00 p.m. with 28% counted (correct)
Replay: 2026 first round
0.13 p.p.
mean projection error from 5% counted onward; result called at 6:48 p.m. with 52% counted (correct)
Read the full analysis≈ 5 min read
How the model projects
It is not the average of what has come in
The TSE partial count is not a sample of the country: small municipalities and the South and Center-West finish first; state capitals and the Northeast, later. In 2022, the runoff partial count showed Bolsonaro ahead until 68% was counted, and Lula won by 1.8. The model does not use the partial count as an estimate: it compares what has come in with what the same unit did in the first round, 3 weeks earlier, and projects the difference (the swing) onto what remains.
Unit: municipality or zone, with a baseline from the polling stations already in
The TSE publishes votes by municipality and, in the 190 municipalities with more than one electoral zone, by zone. Within a municipality, the polling stations that report first are not random either. So the baseline for a partially counted municipality is the first-round result in the stations that have probably already come in: polling places in the order they arrived in the first round, until they cover the same share of the electorate. The error of this rule was measured in the 2022 replay and enters as uncertainty, larger when the unit is just starting.
National → region → state, automatically
Each unit's swing is modeled as a national effect + region + state + profile (first-round vote, size, third way, turnout), with Bayesian shrinkage: with few units the national rule holds, anchored on Placar's own forecast; as states accumulate data, the state effects loosen. It is the progression that Rodrigo Mahlmeister's model applied in the first round, here estimated from the data instead of set by hand.
Uncertainty and the call
Intervals by bootstrap of the counted units (resampling states and, within them, municipalities), plus the uncertainty of the national level and the noise of units not yet in, with a calibration factor from the 2022 replay. The dashboard "calls" the result when the probability exceeds 99.5% for three consecutive cycles and the 95% interval lies entirely on one side. Below 2% of polling stations the projection is shown as unstable.
In the replay of the 2022 runoff, with the actual arrival order of the tallies, the TSE partial count showed Bolsonaro ahead until about two-thirds of the count; this model's projection had a mean error of 0.26 pp from 5% counted onward, covered the final result in 84% of readings with the 80% interval and would have called the winner at 6:00 p.m., with 28.3% of polling stations counted. In the 2026 first round, reproduced with the 2022 baseline, the mean error was 0.13 pp and the call would have come at 6:48 p.m. (51.8% counted); the TSE partial count took until about 92% counted to get within 1 point of the result.
2022 runoff (Oct 30), baseline 2022 first round
Gray line: TSE partial count (Lula − Flávio/Bolsonaro in valid votes). Dark line: model projection; band: 80% interval. Dashed: final result (+1.80). Comparison baseline: margin +5.7; model prior: +4.0 (prior = average of the final 2022 polls (Lula +4 in valid votes; result +1.8)).
2026 first round (Oct 4), baseline 2022 first round
Gray line: TSE partial count (Lula − Flávio/Bolsonaro in valid votes). Dark line: model projection; band: 80% interval. Dashed: final result (−1.99). Comparison baseline: margin +5.7; model prior: +2.7 (prior = average of first-round polls on the eve (Lula +2.7 head-to-head; result −1.9)).
Calibration, data and limits
Polling-station base: TSE polling-station tallies (open data) from the 2022 first and second rounds and the 2026 first round, with the time each tally was received, which gives the actual order of the count. Live: JSON files from the TSE results CDN (election 6258), national, by state, by municipality and by zone, read every minute with ETag. The TSE's list of tallied polling stations does not record the tally time (in the first round, the time recorded was when the voting-machine files were published, in a batch, hours later), so the composition of the partial count is inferred from the first-round order.
Share of the unit counted
Typical error of the proxy baseline (logit)
up to 10%
0.355
up to 25%
0.191
up to 50%
0.117
up to 75%
0.075
up to 90%
0.045
up to 100%
0.016
up to 100%
0.007
Similar initiatives in 2026: Rodrigo Mahlmeister (polling place, hierarchical regression; nailed the first round at 5:32 p.m. with 2.2% counted), Luís Meloni/FEA-USP (municipality and zone, delta by state; mean error of 0.2 pp on the night of Oct 4), Agulha 2026 (Burgarelli, Duarte and Bramatti), Tinfoil/e26 and the open project open-apuracao. This model belongs to the same family; the difference lies in the baseline of the polling stations already counted and in the explicit calibration through the replay.
Limits: the model assumes that the structure of the vote between the first and second rounds changes smoothly and predictably with the unit's profile; an event that shifts the vote of a specific group (a region, a type of city) is only captured once that region starts counting. The official and definitive source is always the TSE.
Today's numbers
Adjusted poll margin
-1.3 points
Positive = Lula ahead · negative = Flávio ahead, in valid votes. Uncertainty ±2.3 (95%) · 2 weeks ago, polls only: -2.0 · average of the latest poll from each pollster: -1.0
Chance of winning (ensemble)
Lula 18% · Flávio 82%
Poll model (75%) and betting markets (25%; Polymarket: Lula 20%). Track record of incumbent presidents: reference only (53%)
Polls only
Lula 17% · Flávio 83%
Discounts the polls' historical error (+0.8 pp pro-PT). Without the discount: Lula 27% · result within ±1.5 pp: 34%
Two-week trend
Toward Lula, slowing
7 days: +0.3 · 14 days: +1.1 · polls vs. the same pollster's previous one: 20 toward Lula, 10 toward Flávio, 7 unchanged
In four sentences
First round (Oct 4), official result: Flávio 47.03% × Lula 45.16% of valid votes. The polls had Lula +2.7 on average; the model, after discounting the historical first-round error, expected -0.7. The actual margin was -1.9.
Runoff (Oct 25), today's margin: the adjusted margin is at -1.3 points (Lula − Flávio, in valid votes). With uncertainty of ±2.3, it is a statistical tie; last week's trend is toward Lula, slowing.
Runoff, chance of winning: combining polls, betting markets and track record (ensemble), Lula 18% · Flávio 82%. Polls only, after discounting their historical error, Lula 17% · Flávio 83%.
What moves the margin most is government approval, followed by Flávio's evangelical base and where the third-way voters end up; they currently break about 1.3 to 1 for Flávio. The model shows both candidates' chances side by side in every section.
How to read this dashboard: four ideas in one minute
A poll is not the result. Each one interviews about 2,000 people, and polls conducted in the same week can differ by 3 to 5 points. That's why the dashboard combines them all and looks at the trend, never at a single poll.
"Margin" here is the difference between the two, in points of valid votes (excluding blank and spoiled ballots, as in the TSE count). +3 = Lula 3 points ahead; −3 = Flávio 3 points ahead.
Chance is not the result. "Lula 18% · Flávio 82%" means that, in 100 elections played out from today's scenario, each would win in that proportion. The candidate with the lower chance wins often: a 1-in-3 event happens as often as rolling a 1 or a 2 on a die.
The details are at the end. Words with a dotted underline have an explanation when you hover or tap; the icon explains charts and numbers. Part 3 covers the method, each pollster's biases and a glossary.
Runoff simulation history
Lula's headline chance went from 40% on Sep 17 to 30% on the eve of the first round, fell to 17% with the counted vote and stands at 18%
In one sentence: 80 model runs have been published since Sep 17. After the first round, Lula's headline chance ranged between 11% (Oct 13) and 21% (Oct 22); polls only, without the market, it is at 17% today, and Polymarket at 20%.
How to read. Each point is a model run published on the dashboard, at the time it was published, with Lula's chance of winning the runoff against Flávio. The solid line is the headline chance (ensemble: 75% the model, 25% the betting market). The thin line is the chance from polls only, the main model; the dashed line is the parallel MCMC model (since Oct 5), and the dotted gold line is the Polymarket price used in each run. Points with a ring mark method changes (6 in the period): there the chance changed because of the model, not because of new polls. Hover over or tap the chart to see each run and what changed in it.
Includes PoderData (Oct 23-24), Futura (Oct 23-24), Veritá (Oct 19-23) and Colectta (Oct 23); Polymarket as of Oct 25, 8 a.m.
Oct 25 12:04 a.m.
16%
16%
22%
18%
Includes AtlasIntel/Bloomberg (Oct 18-23)
Oct 24 7:22 p.m.
18%
18%
22%
18%
Includes BTG/Nexus (Oct 23-24)
Oct 24 7:20 p.m.
18%
18%
22%
18%
Includes Quaest (Oct 23-24)
Oct 24 6:37 p.m.
17%
17%
21%
18%
Includes Datafolha (Oct 23-24)
Oct 24 6:07 p.m.
17%
17%
22%
18%
Includes CNT/MDA (Oct 21-23), Gerp (Oct 22-24) and Palver (Oct 22-24); Polymarket as of Oct 24, 6 p.m.
Oct 24 11:32 a.m.
16%
16%
18%
18%
Includes Instituto França (Oct 21-23) and DataTrends (Oct 19-21); Polymarket as of Oct 24, 11 a.m.
Oct 23 5:06 p.m.
20%
18%
22%
24%
Includes Veritá (Oct 18-22); Polymarket as of Oct 23, 3 p.m.
Oct 23 12:56 p.m.
19%
18%
20%
24%
Includes Real Time Big Data, Alfa and Ipespe (rounds through Oct 22); Polymarket as of Oct 23, 11 a.m.
Oct 23 7:28 a.m.
21%
20%
29%
22%
Includes Vox Brasil (Oct 20-22) and new "Votes up for grabs" section by segment
Oct 22 7:14 p.m.
21%
20%
25%
22%
Includes Datafolha (Oct 20-22): 46 x 47, 50 x 50 in valid votes
Oct 22 7:02 p.m.
21%
20%
25%
22%
Includes Indexa/Broadcast (Oct 20-21); Polymarket as of the afternoon of Oct 22
Oct 22 10:40 a.m.
21%
21%
27%
22%
method v56: the runoff discount no longer inherits the first-round error (tactical voting)
Oct 22 9:23 a.m.
15%
13%
18%
22%
Includes PoderData (Oct 19-21) and Veritá (Oct 15-19); Polymarket as of the morning of Oct 22
Oct 21 7:33 p.m.
15%
12%
14%
22%
Includes Gerp (Oct 19-21) and Quaest DF (Oct 17-20); Polymarket as of the afternoon of Oct 21
Oct 21 10:50 a.m.
14%
12%
15%
20%
Includes Futura/100% Cidades (Oct 19-20) in the runoff database as a new series (v2)
Oct 21 10:20 a.m.
14%
12%
15%
20%
Includes Quaest (Oct 17-20) and Palver (Oct 18-20) in the runoff database
Oct 21 7:52 a.m.
14%
12%
15%
20%
Includes Meio/Ideia (Oct 15-19) in the runoff database; Polymarket and events of Oct 20-21
Oct 20 7:16 p.m.
15%
13%
15%
22%
Includes Gerp (tracking Oct 15-19) in the runoff database
Oct 20 3:01 p.m.
15%
13%
15%
22%
Includes Alfa (Oct 15-19) and Instituto França (Oct 16-20) in the runoff database; Polymarket and events of Oct 20
Oct 20 9:02 a.m.
16%
14%
19%
24%
Includes Real Time Big Data (Oct 15-19) and DataTrends (Oct 15-17) in the runoff database
Oct 19 9:38 p.m.
18%
16%
25%
24%
Full update of Oct 19: Futura with totals, 4 state polls, Polymarket, events and runoff issues
Oct 19 9:19 p.m.
17%
16%
25%
20%
Includes Futura/100% Cidades (Oct 16-17) in the runoff database
Oct 19 10:37 a.m.
16%
15%
23%
20%
Includes PoderData/Aya (Oct 16-18) and AtlasIntel/Bloomberg (Oct 13-18) in the runoff database
Oct 19 7:14 a.m.
18%
17%
33%
20%
"Polls since the first round" section: trend chart with selector and summary line; includes BTG/Nexus (Oct 16-18)
Oct 18 12:02 p.m.
18%
17%
34%
20%
method Audit of Oct 18: fixes the logic of the model, the gauge and the dashboard text
Oct 18 11:47 a.m.
17%
16%
34%
20%
Includes Vox Brasil (Oct 15-17) in the runoff database and updates Polymarket
Oct 17 7:38 p.m.
18%
16%
26%
22%
Includes Ipespe/Abrapel (Oct 13-15) and Veritá (Oct 12-16) in the runoff database
Oct 16 8:15 p.m.
17%
16%
21%
22%
Includes Gerp (Oct 14-16) in the runoff database
Oct 16 3:27 p.m.
17%
16%
23%
22%
Includes CNT/MDA and Futura from Oct 13-15 and confirms PoderData against its report
Oct 16 9:58 a.m.
16%
15%
21%
22%
Audits the post-first-round polls against the technical reports and includes PoderData from Oct 13-15
Oct 15 7:02 p.m.
16%
18%
21%
12%
Includes Indexa/Broadcast (Oct 13-14) in the runoff database
Oct 15 6:40 p.m.
17%
18%
26%
12%
Includes Datafolha (Oct 13-14) in the runoff database
Oct 15 9:37 a.m.
17%
19%
32%
12%
Includes Palver (Oct 10-13) and checks the post-first-round database against the official reports
Oct 14 6:20 p.m.
15%
16%
18%
12%
Includes national Quaest/Globo (Oct 10-13) and Quaest state polls for AC, AM and RN (Oct 9-12)
Oct 13 10:34 p.m.
15%
16%
18%
12%
Includes DataTrends (Oct 7-9), PoderData-AM (Oct 8-11) and AtlasIntel state polls (Sep 27-Oct 2)
Oct 13 12:05 p.m.
16%
17%
19%
12%
Includes Gerp (Oct 8-12) and Futura/Apex (Oct 7-10) in the runoff database
Oct 13 9:42 a.m.
15%
16%
19%
12%
Uses PoderData's post-first-round transfer in the third-way migration
Oct 13 9:00 a.m.
12%
12%
15%
12%
Includes PoderData/Aya (Oct 10-12) in the runoff database
Oct 13 8:52 a.m.
11%
10%
10%
12%
Includes BTG/Nexus (Oct 10-12) and Quaest-DF (Oct 8-11) in the database
Oct 11 5:22 p.m.
11%
11%
12%
12%
Updates the Oct 11 run and Polymarket as of Oct 11
Oct 10 5:49 p.m.
12%
12%
11%
12%
Updates with Ipespe (Oct 6-8) and Polymarket as of Oct 10
Oct 9 3:42 p.m.
14%
13%
12%
16%
Includes Instituto França (Sep 28-Oct 2) in the runoff database
Oct 9 1:26 p.m.
14%
13%
11%
16%
Updates with post-first-round Vox Brasil (Oct 5-7)
Oct 9 9:35 a.m.
12%
11%
10%
16%
Updates with AtlasIntel (Oct 3-8) and runoff scenarios generated from the data
Oct 8 6:53 p.m.
14%
13%
13%
16%
Updates with post-first-round AtlasIntel (Oct 3), PoderData and Datafolha
Oct 8 10:38 a.m.
15%
14%
14%
16%
Updates with post-first-round PoderData and adds the map of the vote abroad
Oct 6 8:45 a.m.
18%
19%
20%
16%
Adds a vote-migration model using a Markov chain + Monte Carlo
Oct 5 10:26 p.m.
19%
20%
21%
16%
Updates the day after the first round: endorsements, market and municipalities
Oct 5 3:47 p.m.
19%
20%
21%
15%
Adds a parallel MCMC runoff model and Vercel Analytics
Oct 5 6:48 a.m.
19%
20%
—
15%
Updates the first-round result with the TSE's final count (100%)
Oct 4 11:13 p.m.
18%
18%
—
15%
Updates the first-round result with the TSE count at 99.99% (11:12 p.m.)
Oct 4 11:02 p.m.
17%
18%
—
15%
Official first-round result, analysis of the comeback, model accuracy and methodological history
Oct 3 8:47 p.m.
30%
28%
—
36%
Adds eve-of-election Datafolha, Quaest and Futura (evening) and freezes the first-round forecast
Oct 3 6:34 p.m.
32%
30%
—
38%
method Statistical audit of the model and update time on the dashboard
Oct 3 6:12 p.m.
34%
30%
—
38%
Adds CNT/MDA, Palver and DataTrends (eve, afternoon)
Oct 3 11:11 a.m.
35%
31%
—
38%
method Audit of the aggregator and state map with pollster selector
Oct 3 11:11 a.m.
48%
50%
—
38%
Adds PoderData and Gerp from Oct 3 (eve of the first round)
Oct 3 11:11 a.m.
46%
47%
—
38%
Adds first-round map by state (Quaest Sep 20-28) and Vox Brasil Oct 1
Oct 1 7:11 p.m.
47%
48%
—
38%
Adds Datafolha Sep 28-Oct 1 (Lula 48 x Flávio 45; first round 42 x 38)
Oct 1 12:09 p.m.
45%
45%
—
38%
Updates market (Polymarket 38%) and checks news from Sep 26-29
Oct 1 9:20 a.m.
46%
45%
—
41%
Adds Real Time Big Data Sep 26-30 and updates news (Globo debate)
Sep 30 8:06 p.m.
46%
45%
—
41%
Adds Futura Sep 25-29 and updates market (Polymarket 41%)
Sep 30 11:42 a.m.
47%
47%
—
42%
method Model v3: aggregator audit, anchored state space, recalibrated bias, first-round section
Sep 30 10:46 a.m.
38%
24%
—
42%
Adds Meio/Ideia Sep 25-28
Sep 29 1:22 p.m.
38%
25%
—
42%
Adds American Analytics/Times Brasil-CNBC Sep 15-20
Sep 29 9:17 a.m.
38%
25%
—
42%
Adds AtlasIntel Sep 23-28 and the escalation of the Aparecida case
Sep 28 3:02 p.m.
39%
27%
—
42%
Adds BTG/Nexus Sep 25-27 and Quaest negatives Sep 24-27
Sep 28 10:53 a.m.
38%
24%
—
42%
Adds Quaest Sep 24-27 (42x42) and updates scandals from Sep 26-28
Sep 26 10:42 a.m.
38%
25%
—
43%
Adds Real Time Big Data from Sep 19-23 and analyzes betting, Aparecida and Carbono Oculto
Sep 24 8:00 p.m.
39%
27%
—
42%
method Model v2: state polls, Kalman filter and new factors
Sep 24 7:06 p.m.
37%
24%
—
42%
Adds Datafolha from Sep 22-23 and improves responsiveness (laptop/phone)
Sep 24 11:28 a.m.
36%
23%
—
42%
Adds PoderData/Aya poll from Sep 20-23 and updates markets
Sep 23 9:13 a.m.
36%
22%
—
41%
Adds AtlasIntel/Bloomberg poll from Sep 17-22 (statistical tie) and updates markets
Sep 21 8:24 p.m.
36%
24%
—
40%
Adds Quaest and Palver polls from Sep 17-20
Sep 21 8:30 a.m.
37%
25%
—
41%
Adds BTG/Nexus poll from Sep 18-20
Sep 18 9:08 p.m.
38%
26%
—
43%
Adds Gerp and Futura/Apex polls from Sep 14-16
Sep 17 8:39 p.m.
40%
29%
—
45%
Adds Datafolha poll from Sep 15-16 and updates negatives/approval
Sep 17 12:54 p.m.
40%
28%
—
45%
First version: 2026 election poll aggregator
Polls since the first round
Since the first round, 57 polls from 19 pollsters: the aggregate went from Flávio +2.4 to Flávio +0.9 in valid votes
In one sentence: the summary line combines all polls with each pollster's correction and today stands at Lula 49.5% × Flávio 50.5% of valid votes (Flávio +0.9, ±1.3 on the margin), vs. Flávio +2.4 on Oct 7 — 1.5 points toward Lula. In the simple average of recent polls, without correction, the margin is Flávio +2.0: the pollsters that polled most in this phase show Flávio doing better than those with a calibrated track record.
How to read. Each poll with fieldwork after Oct 4 appears twice, on the date its fieldwork ended: the slate dot is Lula, the terracotta dot is Flávio, in valid votes. The solid lines are the summary: the model's day-by-day adjusted margin, with each pollster's house effect correction, and the band around it is the 95% uncertainty. Use the buttons to choose pollsters: the summary doesn't change (it always uses all polls), but a dashed line appears with the simple average of the selected ones only, uncorrected. With up to four pollsters selected, each one's waves are shown connected. Hover over or tap a dot to see the poll; anywhere else on the chart, to see that day's aggregate.
Polls on the chart
57 of 57
19 pollsters · fieldwork from Oct 7 to Oct 24
Summary today
49.5% Lula
Flávio 50.5% · Flávio +0.9 (±1.3)
Since Oct 7
+1.5 on the margin
from Flávio +2.4 to Flávio +0.9
Simple average of selected
Flávio +2.0
today, all polls
Lula · pollFlávio · pollsummary (adjusted margin, 95% band)simple average of selected
Runoff polls are moving toward Lula: 1.2 points per week
In one sentence: with the 57 polls conducted after Oct 4, the Lula − Flávio margin is moving +1.2 points per week (±0.4; a strong signal, with the prior that holds the line steady while there are few polls). Three days ago the reading was +1.4 (45 polls); it is election day: Lula goes to the ballot box starting from −0.9 at poll level, and what decides it now is poll error, not pace.
How to read. The gauge doesn't say who is ahead: it says where the polls are heading. It is the slope of the Lula − Flávio margin (valid votes) in polls with fieldwork after Oct 4, in points per week, estimated within each pollster: the line has one intercept per series, so each poll is compared only with the same firm's other waves and the house effect cancels out without having to be estimated (pollsters with a single wave don't tilt the line). Left: the movement favors Flávio, who leads; right: it favors Lula. While there are few polls over few days, the slope is pulled toward zero by a prior of ±3 points per week (the size of the moves in the 2014 to 2022 runoffs); each new poll loosens that brake. The faded needle is the reading from 3 days ago, with the polls available then: the distance between the two needles is the direction of the gauge itself. The gray band outside the arc is the uncertainty (±1 standard error) and the dashed amber mark is the pace Lula would need to sustain through Oct 25 to pull ahead.
Today's reading
+1.2 pp/week
Lula closing in · ±0.4 · 57 polls since Oct 5
3 days ago
+1.4 pp/week
Lula closing in · 45 polls
Pace needed to pull ahead
— pp/week
Lula starts from −0.9 at poll level and has reached election day
Same series, latest change
6 → Lula · 6 → Flávio
16 series with two waves after the first round (change panel)
The polls behind the gauge
poll (margin adjusted for house effect, for the drawing only; size = weight)— trend line (slope with fixed effects per series)
Daily trend-pointer reading: Oct 8: +0.0 · Oct 9: +0.0 · Oct 10: +0.0 · Oct 11: +0.0 · Oct 12: +1.7 · Oct 13: +1.7 · Oct 14: +1.8 · Oct 15: +2.7 · Oct 16: +3.0 · Oct 17: +2.4 · Oct 18: +2.0 · Oct 19: +2.1 · Oct 20: +1.8 · Oct 21: +1.7 · Oct 22: +1.4 · Oct 23: +1.3 · Oct 24: +1.2 · Oct 25: +1.2. With few polls the slope is sensitive to each new wave; the uncertainty band says by how much.
See the polls since the first round, with the house correction and repeated waves
Change panel · differences within each pollster, post-first-round waves only
Wave by wave, runoff polls have stopped moving: +0.4 point per week within each pollster
In one sentence: across the 30 differences between consecutive waves in 16 series with fieldwork after Oct 4, the Lula − Flávio margin (valid votes) moves +0.4 point per week (±0.9; sign indistinguishable from zero), with more weight on the newest difference and on the one with the smallest error. Movement slowing down (long window +0.8, short +0.4). 17 of 30 differences toward Lula, 8 toward Flávio, 5 flat. In the literal version, using only the latest difference for each of the 16 pollsters, the average is −0.0 per wave (+0.0 with more weight on the newest).
How to read it. This panel does not look at the level of any poll, only at the difference between two consecutive waves from the same pollster. The difference cancels out whatever is constant within a pollster (method, weighting, question wording, house effect), so it measures direction better than level; in exchange, it adds up the sampling error of both waves (two polls of 2,000 yield a difference with an error of ~3 points in valid votes). That is why each difference is weighted by its error and by recency (3-day half-life: each pollster's newest wave is what counts, and one from a week ago weighs 10%). Series that changed their yardstick (Futura v2, Palver v3, CNT/MDA v2) are not paired with the old series; Gerp's tracking only pairs waves 5 or more days apart, because neighboring waves share interviews. The aggregate is the mean of the drift prior in the hero's "with momentum" reading, shrunk by half. Nothing here changes the headline.
Aggregate of the differences
+0.4 pp/week
±0.9 · 3-day half-life · 30 differences from 16 series
Long window
+0.8 pp/week
10-day half-life · slowing down (long window +0.8, short +0.4)
Only each pollster's latest difference
+0.0 pp/wave
simple mean −0.0 · 16 pollsters
Agreement
17 → Lula · 8 → Flávio
5 flat (|Δ| < 0.5) · differences included in the aggregate
difference toward Lulatoward Flávioflat— daily weighted average (±1 standard error) · size = weight · dashed = outside the aggregate
Daily aggregate (pp per week, using the differences that existed on each day): Oct 16: +3.1 · Oct 17: +1.8 · Oct 18: +1.7 · Oct 19: +1.7 · Oct 20: +1.2 · Oct 21: +1.2 · Oct 22: +0.8 · Oct 23: +0.5 · Oct 24: +0.4 · Oct 25: +0.4. It is election day: the campaign is over and the pace no longer moves the margin.
See all 37 differences, pollster by pollster
Pollster
Waves
Days
Lula × Flávio
Δ margin
pp/week
Error
In the aggregate
BTG/Nexus
18/10 → 24/10
6
46 × 46 → 46 × 47
−0.4
−0.5
±3.3
yes
Datafolha
22/10 → 24/10
2
46 × 47 → 47 × 48
+0.0
+0.1
±2.6
yes
Futura (v2)
20/10 → 24/10
4
47 × 49 → 48 × 48
+1.9
+3.3
±3.2
yes
Gerp
21/10 → 24/10
3
45 × 50 → 46 × 49
+2.1
+4.9
±3.0
no: tracking: waves 3 days apart share interviews (minimum 5)
Palver (v3)
20/10 → 24/10
4
48 × 50 → 49 × 50
+1.0
+1.8
±3.4
yes
PoderData
21/10 → 24/10
3
48 × 49 → 47 × 49
−1.1
−2.5
±2.3
yes
Quaest
20/10 → 24/10
4
44 × 45 → 45 × 46
+0.0
+0.0
±2.9
yes
AtlasIntel
18/10 → 23/10
5
48 × 50 → 48 × 50
+0.7
+1.0
±2.9
yes
Instituto França
20/10 → 23/10
3
40 × 41 → 43 × 46
−1.2
−2.8
±3.4
yes
CNT/MDA (v2)
15/10 → 23/10
8
46 × 47 → 45 × 46
−0.5
−0.4
±3.3
yes
Veritá
22/10 → 23/10
1
48 × 50 → 46 × 49
−0.3
−2.4
±2.0
no: tracking: waves 1 day apart share interviews (minimum 5)
Alfa
19/10 → 22/10
3
46 × 49 → 46 × 50
−1.0
−2.3
±2.8
yes
Datafolha
14/10 → 22/10
8
45 × 47 → 46 × 47
+1.1
+1.0
±2.9
yes
Ipespe
15/10 → 22/10
7
46 × 48 → 47 × 48
+1.1
+1.1
±3.8
yes
Real Time Big Data
19/10 → 22/10
3
45 × 48 → 45 × 49
−1.0
−2.4
±3.3
yes
Veritá
19/10 → 22/10
3
48 × 50 → 48 × 50
−1.2
−2.9
±2.0
no: tracking: waves 3 days apart share interviews (minimum 5)
Vox Brasil
17/10 → 22/10
5
46 × 45 → 45 × 44
−0.8
−1.1
±3.2
yes
DataTrends
17/10 → 21/10
4
46 × 49 → 46 × 50
−1.0
−1.8
±3.2
yes
Gerp
19/10 → 21/10
2
45 × 50 → 45 × 50
+0.0
+0.0
±3.0
no: tracking: waves 2 days apart share interviews (minimum 5)
Indexa
14/10 → 21/10
7
42 × 44 → 44 × 45
+1.1
+1.1
±3.4
yes
PoderData
18/10 → 21/10
3
46 × 49 → 48 × 49
+2.1
+5.0
±2.5
yes
Palver (v3)
13/10 → 20/10
7
49 × 50 → 48 × 50
−1.0
−1.0
±3.4
yes
Quaest
13/10 → 20/10
7
44 × 46 → 44 × 45
+1.1
+1.1
±3.2
yes
Gerp
16/10 → 19/10
3
45 × 50 → 45 × 50
+0.0
+0.0
±3.0
no: tracking: waves 3 days apart share interviews (minimum 5)
Veritá
16/10 → 19/10
3
48 × 50 → 48 × 50
+0.5
+1.2
±2.0
no: tracking: waves 3 days apart share interviews (minimum 5)
AtlasIntel
8/10 → 18/10
10
46 × 51 → 48 × 50
+3.3
+2.3
±2.9
yes
BTG/Nexus
12/10 → 18/10
6
45 × 48 → 46 × 46
+2.6
+3.0
±3.3
yes
PoderData
15/10 → 18/10
3
47 × 47 → 46 × 49
−3.2
−7.4
±2.7
yes
DataTrends
9/10 → 17/10
8
44 × 50 → 46 × 49
+3.2
+2.8
±3.2
yes
Futura
15/10 → 17/10
2
48 × 49 → 48 × 48
+0.7
+2.5
±3.2
yes
Vox Brasil
7/10 → 17/10
10
44 × 43 → 46 × 45
+0.3
+0.2
±3.3
yes
Gerp
12/10 → 16/10
4
44 × 53 → 45 × 50
+4.0
+7.0
±2.9
no: tracking: waves 4 days apart share interviews (minimum 5)
Futura
10/10 → 15/10
5
47 × 50 → 48 × 49
+2.0
+2.8
±3.2
yes
Ipespe
8/10 → 15/10
7
44 × 49 → 46 × 48
+3.2
+3.2
±3.8
yes
PoderData
12/10 → 15/10
3
46 × 48 → 47 × 47
+2.1
+5.0
±2.7
yes
Datafolha
7/10 → 14/10
7
45 × 49 → 45 × 47
+2.1
+2.1
±2.9
yes
PoderData
7/10 → 12/10
5
44 × 49 → 46 × 48
+3.2
+4.5
±2.7
yes
Rejection, wave by wave
In one sentence: the gap "rejection of Flávio − rejection of Lula" moves +1.0 point per week (±1.0) across the 14 differences in 8 series with rejection measured after Oct 4; positive favors Lula. Rejection tends to move ahead of the vote: it measures the ceiling, not the choice. Available room (people who neither vote for the candidate nor reject him) in the latest wave from the most recent pollsters: Datafolha Oct 24: Lula 7%, Flávio 7%; Futura (v2) Oct 24: Lula 6%, Flávio 5%; Alfa Oct 22: Lula 9%, Flávio 6%; Ipespe Oct 22: Lula 6%, Flávio 4%; Vox Brasil Oct 22: Lula 10%, Flávio 9%; Gerp Oct 21: Lula 6%, Flávio 4%. Excluded from the base: Real Time Big Data asks "whom would you not vote for" with an "I reject both" option (28% on Oct 15–19), which is not comparable to the others.
Pollster
Waves
Rejection of Lula
Rejection of Flávio
Δ of the gap
Lula's room
Flávio's room
Datafolha
22/10 → 24/10
45 → 46
46 → 45
−2.0
9 → 7
7 → 7
Futura (v2)
20/10 → 24/10
47 → 46
45 → 47
+2.5
6 → 6
6 → 5
Alfa
19/10 → 22/10
46 → 45
45 → 44
+0.0
8 → 9
6 → 6
Datafolha
14/10 → 22/10
47 → 45
49 → 46
−1.0
8 → 9
4 → 7
Vox Brasil
17/10 → 22/10
45 → 45
45 → 47
+2.3
8 → 10
10 → 9
Gerp
19/10 → 21/10
49 → 49
46 → 46
+0.0
6 → 6
4 → 4
PoderData
18/10 → 21/10
48 → 47
44 → 45
+2.0
6 → 5
7 → 6
Quaest
13/10 → 20/10
53 → 47
54 → 52
+4.0
3 → 9
0 → 3
Gerp
16/10 → 19/10
49 → 49
46 → 46
+0.0
6 → 6
4 → 4
BTG/Nexus
12/10 → 18/10
51 → 48
47 → 47
+3.0
4 → 6
5 → 7
PoderData
15/10 → 18/10
46 → 48
45 → 44
−3.0
7 → 6
8 → 7
Futura
15/10 → 17/10
47 → 47
46 → 46
−0.5
5 → 5
5 → 6
Vox Brasil
7/10 → 17/10
45 → 45
44 → 45
+1.0
11 → 8
13 → 10
Gerp
12/10 → 16/10
53 → 49
42 → 46
+8.0
3 → 6
5 → 4
PoderData
12/10 → 15/10
46 → 46
44 → 45
+1.0
8 → 7
8 → 8
Datafolha
7/10 → 14/10
46 → 47
49 → 49
−1.0
9 → 8
2 → 4
PoderData
7/10 → 12/10
46 → 46
43 → 44
+1.0
10 → 8
8 → 8
Votes up for grabs · who is still deciding and how each candidate fares in each segment
Between 10 and 14 million votes are still in play, 8 times Flávio's current lead; the contest is concentrated among women, high-school-educated voters and pardos
In one sentence: averaging the latest wave from 19 pollsters with fieldwork between Oct 19 and Oct 24, 2.0% are undecided and 4.0% vote blank or spoiled; adding the share who say they could still change (PoderData and Quaest), 7.9% to 11.2% of those who will vote are in play, 10 to 14 million voters, against a gap of ~1.5 million valid votes in Flávio's favor in the model's adjusted margin (−1.3 pp). The segments where neither candidate leads by more than 6 points in valid votes (Datafolha Oct 22): women (49 × 44); high school (44 × 49); pardos (46 × 47); 60 or older (49 × 44); 45 to 59 (47 × 48).
How to read it. "Up for grabs" is arithmetic, not a model: undecided + the blank/spoiled voters who say they could still change (42%) + those who have already chosen Lula or Flávio and say they could still change (PoderData: 6% and 3%, the floor; Quaest: 9% and 7%, the ceiling), applied to first-round turnout (125.3 million). In the chart, each row is a segment: the dot is Lula's margin over Flávio in valid votes in the Oct 22 Datafolha, the gray line starts from the Oct 7 wave (only when it moved half a point or more), the ring is PoderData from Oct 19–21 and the yellow band is the ±6-point zone, where neither side is comfortable. On the right, the bar shows who has no candidate (blank, spoiled or undecided) and the number estimates the votes up for grabs in the segment. The margin of error for each breakdown is 3 to 6 points.
Undecided + blank/spoiled
6.0%
average of the latest wave from 19 pollsters (Oct 19–Oct 24): 2.0% undecided, 4.0% blank/spoiled
Declared vote that could change
6–9% Lula · 3–7% Flávio
of each candidate's voters (PoderData Oct 19–21 · Quaest Oct 17–20); 42% of blank/spoiled voters could also change
Votes for candidates eliminated in the first round
9.3 million
Cury, Renan, Caiado, Zema and others; today they give Flávio a net −1.2M (PoderData and Quaest average)
Non-aligned (Datafolha)
32 × 40
Lula × Flávio · 28% without a candidate; ~16% of the electorate (estimated)
Lula aheadFlávio aheadbattleground zone (±6)— from Oct 7 to Oct 22 · ○ PoderData · % = share of the electorate
What has moved since the first runoff wave (Datafolha Oct 7 → Oct 22, valid-vote margin): toward Lula among 16 to 24-year-olds (−8 → +6), high school (−15 → −5), Northeast (+27 → +37), Center-West/North (−22 → −13); toward Flávio among 35 to 44-year-olds (−4 → −12), college (−3 → −9). Lula's largest net gains come from the Northeast (+12.0M), Catholics (+8.8M), up to 2 minimum wages (+8.6M); Flávio's, from evangelicals (+16.2M), 2 to 5 minimum wages (+6.2M), Southeast (+5.2M) (net = segment size × Lula − Flávio difference × first-round turnout; the breakdowns overlap and do not add up).
See the table of all segments
Segment
Electorate
Datafolha Oct 7
Datafolha Oct 22
Blank/spoiled · undecided
Valid-vote margin
Δ since Oct 7
PoderData Oct 21
Up for grabs (M)
Net Lula − Flávio (M)
Sex · size: TSE 2026
Female
53%
50 × 44
49 × 44
5 · 2
+5
−1
55 × 41
6.6
+3.3
Male
47%
41 × 53
44 × 50
5 · 1
−6
+6
39 × 57
5.3
−3.5
Age · size: TSE 2026
16 to 24
12%
43 × 50
47 × 42
10 · 1
+6
+13
52 × 43
1.6
+0.8
25 to 34
19%
42 × 50
46 × 47
7 · 1
−1
+8
—
2.3
−0.2
35 to 44
20%
45 × 49
42 × 53
4 · 1
−12
−7
—
2.1
−2.7
45 to 59
26%
45 × 48
47 × 48
3 · 2
−1
+2
45 × 51
2.9
−0.3
60 or older
24%
50 × 46
49 × 44
5 · 2
+5
+1
46 × 50
2.9
+1.5
Education · size: PoderData sample
Primary school
37%
55 × 41
53 × 40
5 · 2
+14
−1
55 × 40
4.7
+6.0
High school
46%
39 × 53
44 × 49
6 · 1
−5
+10
44 × 53
5.3
−2.9
College
17%
46 × 49
43 × 51
5 · 1
−9
−5
47 × 50
1.9
−1.7
Household income · size: PoderData sample
Up to 2 min. wages
46%
52 × 41
54 × 39
5 · 2
+16
+4
54 × 41
5.8
+8.6
2 to 5 min. wages
33%
38 × 56
39 × 54
6 · 1
−16
+3
44 × 54
3.8
−6.2
Over 5 min. wages
21%
39 × 55
40 × 54
5 · 1
−15
+2
41 × 57
2.3
−3.7
Religion · size: PoderData sample
Catholic
44%
53 × 41
55 × 39
5 · 2
+17
+4
52 × 45
5.6
+8.8
Evangelical
30%
25 × 69
26 × 69
4 · 1
−45
+2
32 × 65
3.0
−16.2
Region · size: TSE 2026
Southeast
42%
42 × 50
41 × 51
6 · 2
−11
−2
43 × 52
5.3
−5.2
South
14%
35 × 58
33 × 58
7 · 2
−27
−3
36 × 60
1.9
−4.5
Northeast
27%
61 × 35
65 × 30
4 · 1
+37
+10
64 × 33
3.1
+12.0
Center-West/North
16%
37 × 58
41 × 53
4 · 1
−13
+9
41 × 57
1.7
−2.4
Race · size: Census 2022
White
44%
39 × 55
43 × 51
4 · 2
−9
+9
—
5.2
−4.4
Pardo (mixed-race)
45%
47 × 48
46 × 47
5 · 1
−1
−0
—
5.1
−0.6
Black
10%
56 × 37
57 × 37
5 · 1
+21
+1
—
1.2
+2.6
Political identification · size: derived from Datafolha
Bolsonaro supporters
40%
3 × 95
1 × 96
2 · 1
−98
−4
—
3.4
−47.5
Non-aligned
16%
32 × 45
32 × 40
23 · 5
−11
+6
—
3.7
−1.6
PT supporters
44%
91 × 7
92 × 6
2 · 1
+88
+2
—
5.0
+47.8
The votes that were outside the runoff
How many voters chose another candidate, voted blank or spoiled, or did not vote on Oct 4 (TSE), and what they say now (Lula × Flávio, with blank/spoiled and undecided; margins of error of 6 to 24 points in these breakdowns). The net multiplies the size by the side that takes more, without discounting those who will not vote; for those who stayed home on Oct 4 there is no net, because abstention tends to repeat between rounds (20.9% and 20.6% in 2022) and only part of it swaps places with those who will stop showing up.
In the first round
Voters
PoderData Oct 19–21
Quaest Oct 17–20
Net Lula − Flávio
Cury
3.4M
48 × 42, 8 bl/sp, 2 dk
48 × 33, 16 bl/sp, 3 dk
+0.36M
Renan
2.7M
34 × 49, 17 bl/sp, 1 dk
25 × 51, 24 bl/sp, 0 dk
−0.55M
Caiado
2.6M
30 × 49, 20 bl/sp, 1 dk
21 × 57, 22 bl/sp, 0 dk
−0.72M
Zema and others
0.6M
20 × 70, 6 bl/sp, 4 dk
—
−0.29M
Blank or spoiled
6.0M
46 × 23, 7 bl/sp, 24 dk
40 × 36, 21 bl/sp, 3 dk
+0.81M
Did not vote
33.5M
48 × 39, 11 bl/sp, 3 dk
40 × 36, 21 bl/sp, 3 dk
depends on who turns out
Who might not vote
If each voter turns out with the probability they report (certain = 1, maybe = ½), Flávio's voters turn out at 98.0% and Lula's at 96.5%: the valid-vote margin would go from −1.8 to −2.6 (−0.8 pp). Certainty about voting is lower precisely in the groups where Lula does best: 90% among 16 to 24-year-olds and 93% among those earning up to 2 minimum wages, versus 97% among those 45 or older (PoderData Oct 19–21). Among those who did not vote in the first round, only 69% say they will definitely vote; among those currently voting blank or spoiled, 56%. That is why Sunday mobilization matters more for Lula than for Flávio, and abstention in the 2022 runoff (20.6%) stayed close to the first round's (20.9%): it rarely changes much between rounds.
What to watch on election Sunday
The tied groups decide: women, high school, pardos, 60 or older, 45 to 59, 25 to 34 and 16 to 24 are within ±6 points in valid votes.
Non-aligned voters (neither PT supporters nor Bolsonaro supporters) are ~16% of the electorate and 28% of them have no candidate (Datafolha); in Quaest, independents are 31% undecided in the unprompted question.
Potential: 5% say they could vote for Lula and 5% for Flávio without him being their only option (PoderData): these are the voters still listening to both.
Scenarios
Four scenarios for October 25: the most likely is a narrow Flávio win, in 57% of simulations; Lula wins in 18%
In one sentence: today's adjusted margin (Flávio +1.3) falls in the "Narrow Flávio win" card; adding the polls' historical error and the uncertainty until Oct 25, 82% of simulations end with Flávio ahead. Polls taken after the first round, in valid votes: Futura (education weighted by PNAD) Oct 24, Flávio +0.3; PoderData Oct 24, Flávio +2.1; BTG/Nexus Oct 24, Flávio +1.1; Quaest Oct 24, Flávio +1.1; Datafolha Oct 24, Flávio +1.1; Palver (v3 calibration) Oct 24, Flávio +1.0; Gerp Oct 24, Flávio +3.2; Colectta Oct 23, Lula +0.5 (the 8 most recent of 57).
How to read it. Each card is a slice of the simulations, and the four add up to 100%. The "Signals" list says what to watch in upcoming polls to tell which scenario the election is heading into.
Probabilities derived directly from the distribution of the ensemble (not qualitative estimates). The two central scenarios — a result within 4 pp either way — add up to 73%; within them, 30% end with a margin under 1.5 pp, the zone where results get contested, as in 2022.
Lula by more than 4 pp2%
Clear Lula lead
Full comeback by Oct 25: Lula wins back third-way voters and first-round abstainers, and the polls stop erring against Flávio. A 52 × 48 result or wider for Lula.
Signals
Adjusted margin at +4 or more at the ballot box: a 5.3-point swing from today's
Lula wins the battle for third-way voters (in the Oct 6–7 Datafolha: 46% Flávio × 32% Lula)
Turnout rises in the Northeast, where Lula leads 61% to 35% (Datafolha)
Lula by 0 to 4 pp16%
Narrow Lula win
Lula recovers the few points he lost in the first round and the polls get it right. A result between 50 × 50 and 52 × 48 for Lula.
Signals
Adjusted margin above +0.8 (the break-even point) in the final week
Government approval above today's 34% (excellent + good)
Cury's and the Centrão's endorsements of Flávio do not translate into votes
Flávio by 0 to 4 pp57%
Narrow Flávio win
The first-round picture repeats: Flávio keeps the lead, but the third way splits and part of it votes blank. A result between 50 × 50 and 52 × 48 for Flávio.
Signals
Adjusted margin between −4 and +0.8: today it is at -1.3 (Flávio +1.3)
Post-first-round polls stable around today's range (Futura (education weighted by PNAD) Oct 24, Flávio +0.3 · PoderData Oct 24, Flávio +2.1 · BTG/Nexus Oct 24, Flávio +1.1 · Quaest Oct 24, Flávio +1.1 · Datafolha Oct 24, Flávio +1.1 · Palver (v3 calibration) Oct 24, Flávio +1.0 · Gerp Oct 24, Flávio +3.2 · Colectta Oct 23, Lula +0.5 (the 8 most recent of 57))
Third-way blank and spoiled voters (15% in Datafolha) do not migrate
Flávio by more than 4 pp25%
Clear Flávio lead
The right consolidates around Flávio with the Centrão's endorsements, and polling error once again underestimates him, as in the 2014 and 2022 runoffs and in this year's first round. A 52 × 48 result or wider for Flávio.
Signals
Adjusted margin below −4
Third-way transfer consolidates: Cury (Oct 8), União Brasil, PP, Republicanos and Novo with Flávio
Polls repeat the first-round error, when they overestimated Lula
2
What drives the race
In one minute: the conclusion of each analysis. The What drives it page has the charts, tables and full text of each one.