Thirty-five Senate seats are on the ballot in 2026, and 51 of the hundred decide who runs the chamber. Click any state with a seat up to change who wins it; the count moves with you. It starts where the polling starts — and where there is no polling, it starts where the seat already sits.
These carry a purple ring above. The ring means the polled margin is small relative to the error a race shaped like this one has historically carried — thin polling, or an average sitting far from how the state actually votes, or simply a lead inside the noise. It does not mean the race will flip, and it does not say which way. That distinction is the main finding of this whole project: magnitude is partly predictable, direction is not.
Of the 35 seats on the ballot, 10 have general-election polling and the other 25 do not. The polled ones open on whoever leads the average of the final polls; the rest open on the party that holds the seat. Both are starting points for you to argue with, which is what the map is for.
No candidate is named anywhere here. Matchups are still settling, and this page identifies races by state — the same rule the forward panel follows in the Cloud Room. The seat counts reconcile to 100 at build time or the page does not build.
This is not the registered call. The pre-registered 2026 forecast freezes its spec on 2026-10-20 and its call on 2026-11-02. This is a toy for thinking with, built on polling that is still arriving.
Seat composition verified 2026-09-10. Built 2026-09-10 from
data/senate2026/seats.json and forecast2026.json.
Polling averages are our own unweighted mean of each race's final polls, not a
published model's average.