P(control) = runs won ÷ 20,000, all 506 races drawn together in each run.- Whether these probabilities have come true (calibration): Can you trust it.
Every seat, in order
Where does the majority fall, and which seats sit on it?
- Order — median margin, safest Democratic to safest Republican. Hatched: not on the ballot.
- Colour —
P(D wins); amber where an independent is favoured. - Outlined — where control changes hands. Independents sitting out: where Democrats first out-number Republicans. Free to choose: where each party reaches its number, D from the left and R from the right; a split between two outlines leaves the independents deciding.
Seat totals
How many seats, and not just who wins?
Both chambers at once
Can one party take both?
One mark per outcome: a run's House and Senate totals. Each quadrant is one way the night ends.
Seats that could change hands
Which seats are most likely to flip, in any chamber?
P(flip) = P(the party holding the seat loses it)
- Expected flips —
Σ P(flip); the 80% range is counted from the simulations. - Net —
Σ P(flip → D) − Σ P(flip → R). Independents' gains are listed apart. - Redrawn — new lines for 2026, so part of that flip is the map.
What to watch
Which races is this resting on?
- House, Senate — ranked by tipping-point share: the share of 20,000 runs in which the race casts the majority-making vote.
- Governors — no majority, so ranked by distance from 50%.
The House, by district
Where are the seats, and how much does the model know about each one?
- Suppress uncertain colour — grey where the model knows least (uncertainty suppression).
- Play simulations — one simulated election night per frame.
Every race
What does the whole field look like, race by race?
One dot per race at its median margin, Democrats left. Click any dot or row for its working.
What moved it
Why is this number different from last time?
Each cause is priced by re-running the forecast with only that input changed. The causes sum to each card's movement.
Which races moved
The chamber shifted — where did that come from?
The most decisive seats by tipping-point share, on one shared scale. Zero is a tie.
Forecast history
How has this forecast moved over time?
One point per published run. Solid: same method at both ends. Dashed: the method changed, so the step is partly the model.
What is still to come
How much more will the model learn before November?
The national polling
What happens to the forecast if the polls are off?
The generic ballot is the largest single input, and it leans:
- Correction — 2.74 pts toward Democrats, subtracted; overstated in 10 of 13 past cycles.
- Leverage — 13 pts of House control per point it is wrong.
The slider re-runs the whole forecast at another assumed lean.
Shared error
When the model is wrong about one race, is it wrong about the others?
Usually yes. Each race's error is four terms, three of them shared:
σtotal = √(σnat² + σreg² + σstate² + σidio²)
- σnat — a national miss, shared by every race in the country.
- σreg — shared across the region.
- σstate — shared across the state. Worth 3.39 points.
- σidio — this contest alone. Student-t, 5 degrees of freedom.
The House map
How far is the map from the country it is drawn on?
lean = district margin − national margin, 2024 presidential
The 218th district sits 3.26 points right of the country: Democrats need to win the national vote by about that much to carry it.
The state borders
And how far are the Senate and the governorships?
The same 2024 lean, scored by state. Unlike district lines, state borders are not redrawn.
The model, end to end
What happens between a poll and a seat count?
- Two estimates of each margin — a corrected poll average, and a prior built without polls. Every race has a prior; most have no polls.
- Blended by how much polling there is, then simulated with errors shared nationally, by region and by state, and counted.
Each box links to the section that shows what was fitted for it.
Pollster ratings
How much does each pollster count, and which way is it corrected?
poll′ = margin − hpollster − s · sponsor
Polling error
How wrong is a poll, and how much of that can more polls fix?
- One poll
√(σ_nat² + σ_reg² + V_race(d) + V_house(d) + V_noise(d)) - Floor
√(σ_nat² + σ_reg² + V_race(d)). No number of polls goes below it. - d: days between fieldwork and the election. Shaded: past the corpus, extrapolated.
Sponsored polls
Do polls paid for by a party lean toward it?
One race, step by step
How does a single seat get its number?
Every race goes through the same seven steps. Pick one and step through.
Checks against past elections
Has this model been right before?
- Refitted without the scored election — pollster ratings, house effects and the polling error curve.
- Fitted with it — the prior's width, the state error term, elasticity and the generic-ballot correction, each pooled over the same cycles the House replays score. Those replays are partly in sample, and read slightly kinder than a clean hold-out would.
What could be wrong
What does this model say is wrong with it?
- Alarms — recomputed every run; they come and go with the data.
- Limitations — structural; they clear only when the model changes.
What the model is working from
How much of this is polling, and how much is inference?
Mostly inference: almost nobody polls a safe district. An unpolled race runs on its prior, with a wider error bar.
Payload diagnostics
Is the page showing what the engine actually computed?
Every total here is recounted in your browser from who won each race in each of 20,000 draws. These checks confirm it matches the engine.