Baselines for Election-Night Forecasting

The 2026 Senate map, and how to tell a real shift from the order of the count

Democracy’s Data

Last updated September 15, 2026 at 4:42p EDT

On election night the returns do not arrive in a random order. Small rural precincts finish counting first and large urban counties finish last. Ballots cast in person are usually counted before ballots that arrived by mail, and several states keep counting mail for days. So the lead a candidate holds at nine o’clock is partly a fact about the electorate and partly a fact about which places have finished.

That produces a predictable pattern rather than noise. The law professor Edward Foley measured a shift toward Democratic candidates during the canvass, the official count that continues after election night, in every presidential election since about 2000.1 A number that is still moving is not a result. So how do you tell a real shift from the order of the count?

The answer is a baseline: a number written down beforehand saying what each place is expected to do. A county that reports is then compared against its own expectation rather than a running statewide total, and the gap is the only thing carrying information. Here the expectation for every state is its 2024 presidential result.

The test

The baseline tested here is one sentence. A state elects the senator of the party whose presidential candidate carried it. No candidates appear in that sentence, and no money, polls or campaigns — nothing that happened after the previous presidential election was counted.

A rule cannot be graded on the election it was written for, because that election has not happened. So it is rehearsed one level down, on the 433 congressional districts of 2024 with the presidential vote counted inside each one and the party of the member elected there beside it. That file offers 433 chances to be wrong instead of 35, which makes accuracy measurable at each level of competitiveness rather than only overall. The presidential returns, by state and by district, are the researcher Jason Timm’s compilation of the certified state counts, downloadable at https://github.com/jaytimm/PresElectionResults. No federal agency publishes American election returns, so every national file is somebody’s assembly of fifty-one state publications.

Two joins build it — a join being the step that lines two tables up on a column they share, the join key — and both keys are geography. The 2026 landscape joins a roster of sitting senators to each state’s 2024 presidential margin on the two-letter state abbreviation. The rehearsal joins the presidential vote inside a district to the House result there on the district identifier, GA-05 for Georgia’s fifth. Every join takes on the assumptions of both files plus one more about how they line up, which is the subject of Join Keys and Crosswalks. That chapter also covers the crosswalk, a table that translates one set of areas into another.

The data

Three files, and only two of them exist yet.

senate_2026_landscape.csv has 35 rows, one per Senate seat on the 2026 ballot. It carries state, senator_last, party, pres24_margin and ev from the sources, and pres24_winner, abs_margin and hostile_turf computed here by comparison. The last is a definition rather than a measurement: a seat is on hostile turf when the party holding it is the party that lost the state for president.

The roster it starts from is the list of current members of Congress maintained by the @unitedstates project, a volunteer group that publishes public-domain data about Congress, downloadable as legislators-current.csv at https://unitedstates.github.io/congress-legislators/legislators-current.csv. It is two tables wearing one layout: its representatives carry a district and its 100 senators carry a senate_class instead, each side leaving the other’s column blank. One row is a person, and this brief needs a list of contests.

Stage Rows
Members of Congress in the roster 537
Senators 100
Senate seats on the 2026 ballot (33 Class 2 terms ending, plus 2 special elections) 35

Senate terms run six years, and the Senate is divided into three classes so that one class’s terms end in each even-numbered year; the class says whose is expiring. Both Georgia senators appear in the roster and only one is in this brief, because Jon Ossoff’s seat is Class 2 and Raphael Warnock’s is not. Nothing about a senator’s name, party or state distinguishes them; one digit does.

Class 2 is not the whole ballot, and this matters on the night. A seat vacated mid-term is filled at the next general election whatever class it belongs to, and 2026 has 2 such seats: Ohio and Florida, where Marco Rubio and JD Vance left the Senate in January 2025 to become Secretary of State and Vice President. The appointees now holding them, Jon Husted and Ashley Moody, face special elections for the remainder of the terms, so both states have a Senate race on 3 November and both appear in the 35 rows here. Two cautions. Each of those states also has a Class 1 senator who is not on the ballot, so the seat, not the state, is what was selected. And a list built from the class digit alone would have 33 rows and nowhere to put 2 of the night’s results; that is what the results template below guards against.2

State Incumbent Party 2024 presidential winner 2024 margin Hostile turf?
GA Ossoff Democrat Trump 2.2 TRUE

Two things to notice in that row. pres24_margin is not about this election. It is information from 2024 carried forward, and it is the only predictive column in the file. And senator_last is whoever held the seat in August 2026, because a roster of current members describes today and is overwritten tomorrow. Retirement, primary defeat, appointment and death each break that column, and by election day several will have. Finding a name in these 35 rows that is on no ballot is one of the more instructive things you can do here.

rehearsal_house_2024.csv is the opposite kind of object, an election that is finished. It holds district, state, cd, the Democratic share of the district’s two-party presidential vote in dem_share, the house_rep elected there with house_rep_party, and the three columns computed here: baseline, actual and as_expected. Nobody tallies a presidential vote by congressional district, so dem_share is less official than it looks. Somebody has to lay precinct returns over district lines and split the precincts the lines cut through, which makes it a careful reconstruction rather than a canvass.

The third file is results_senate_2026_TEMPLATE.csv: 35 rows, one per race including the 2 special elections, and two empty columns waiting for the night. winner_party takes the party of the candidate a results page has called the winner, Democrat or Republican; dem_pct takes the Democratic candidate’s share of the vote as reported at the moment you look. A row for a race not yet called stays blank, because a blank is honest and a guess is not. What fills the first column will not be a count. A called race is a judgment, made by analysts who decide that the ballots still outstanding cannot reorder the ones already in, and the file will not remember who made it or when unless you write that down beside it.

Little cleaning was needed. The two files are joined on the state abbreviation, the senators not on the ballot are dropped, and the remaining columns are comparisons. No missing value was guessed at and filled in.

Before you read on, commit to an answer. The rule above gets some districts wrong. Where do those districts sit? Not geographically — where on the range from the safest Republican seat to the safest Democratic one. Scattered evenly across it, as a rule that is wrong now and then everywhere would put them? Or bunched somewhere? If bunched, write down where, and how tightly, before you look.

What it says about democracy

Start with what is on the ballot.

Quantity Value
Seats up 35
Republican seats being defended 22
Democratic seats being defended 13
Seats where the other party’s presidential candidate won in 2024 3

35 seats, 22 Republican and 13 Democratic. That asymmetry is an accident of 2020, because it is whichever class of senators happened to be elected six years earlier. Only 3 seats sit on hostile turf.

State Incumbent Party 2024 winner 2024 margin
MI Peters Democrat Trump 1.42
GA Ossoff Democrat Trump 2.20
ME Collins Republican Harris -6.94

One square per state. The letter is the party defending the seat and the number is that state's 2024 presidential margin. Hover for the incumbent.

Figure 1. The 35 seats up in 2026, one square per state. Equal squares fit because the Senate gives every state two seats regardless of population, so a geographic map would size the states by the one quantity that does not matter. Coloured squares have a seat on the ballot and are filled by the party defending it; grey squares have no Senate election. The letter and number in each contested square give the defending party and that state’s 2024 presidential margin, and the 3 heavily outlined squares are where those two disagree.

Quantity Value
Seats where the 2024 margin was 15 points or more 16
Share of the seats up 46%
Median 2024 margin, absolute value 14.3 points
Seats where the 2024 margin was under 5 points 5

16 of 35 seats sit in states decided by fifteen points or more in 2024, and the median seat is in a state decided by 14.3. Before anybody raised a dollar, roughly half the class was out of reach. Applied to this map, the baseline makes a falsifiable prediction without knowing who is running.

Outcome Value
Seats the baseline gives Republicans 23
Seats the baseline gives Democrats 12
Seats where the baseline implies a party change 3

The rule expects 3 of 35 seats to change hands, precisely the 3 on hostile turf. Now rehearse it on districts already counted.

Quantity Value
Districts 433
Where the presidential winner’s party won the seat 418
Accuracy 96.5%

418 of 433 — 96.5%. A rule whose only input is two years stale calls 96.5% of a national election. So 15 districts broke it: few enough to list, and enough to ask a question of.

Districts… How many Rule correct in Accuracy (%)
within 2 points of even 35 26 74.3
within 5 points of even 90 75 83.3
within 10 points of even 175 160 91.4
within 15 points of even 268 253 94.4

And the complement.

Districts… How many Rule correct in Accuracy (%)
more than 2 points from even 398 392 98.5
more than 5 points from even 343 343 100.0
more than 10 points from even 258 258 100.0
more than 15 points from even 165 165 100.0

The same rule, scored twice at every cut-off. Hover for the district counts behind each pair of percentages.

Figure 2. The rule’s accuracy is a function of competitiveness and of almost nothing else. The same rule is scored twice at every cut-off. The red line is its accuracy among districts within that many points of an even presidential split; the blue line, among districts further out. The two separate at the first cut-off and never come back together. Beyond 4.0 points from even the blue line reaches 100% and stays there, across 357 districts where the rule did not miss once.

Outside five points of even the rule was right in 343 districts of 343. Inside five points it was right 83.3% of the time. Every one of the 15 misses lies within 3.7 points of an even split.

One of them shows how a miss is scored. Nebraska’s second district, around Omaha, gave Harris 52.3% of its two-party presidential vote, so the baseline for the seat was a Democrat. The seat went to Don Bacon, a Republican, so as_expected is FALSE. The district sits 2.3 points from an even split, well inside the zone where the rule is guessing; the same miss in a district Trump carried by thirty would have been a shock, and there were none.

District Democratic % (president) Presidential winner Member elected Member’s party
TX-28 46.31 republican Henry Cuellar democrat
OH-09 46.61 republican Marcy Kaptur democrat
CA-13 47.21 republican Adam Gray democrat
NY-03 47.33 republican Thomas R. Suozzi democrat
TX-34 47.77 republican Vicente Gonzalez democrat
WA-03 48.30 republican Marie Gluesenkamp Perez democrat
NC-01 48.44 republican Donald G. Davis democrat
MI-08 48.99 republican Kristen Mcdonald Rivet democrat
NM-02 49.03 republican Gabe Vasquez democrat
CA-09 49.08 republican Josh Harder democrat
NJ-09 49.41 republican Nellie Pou democrat
NV-03 49.62 republican Susie Lee democrat
PA-01 50.16 democrat Brian K. Fitzpatrick republican
NY-17 50.28 democrat Michael Lawler republican
NE-02 52.34 democrat Don Bacon republican

Every failure of the rule sits in the middle of the distribution. Hover for counts.

Figure 3. The failures against the whole distribution they came from. Grey bars count all 433 districts by the Democratic share of their two-party presidential vote; red bars, on the same axis and scale, count the 15 the rule got wrong. The red is not thinly spread across the grey. It occupies one narrow column in the middle, and the two long tails holding most of the House are empty of it.

The rule is not 96.5% accurate. It is 100% accurate where nothing was at stake and a coin-flip-plus where something was. Both readings of that percentage were available and only one is useful. “A rule this simple forecasts a national election” is true and misleading; “it forecasts every uncompetitive election, which is most of them” is true and usable.

That second reading is what makes the baseline work on the night. Beyond five points the expectation is close to certain, so a place reporting far from it is either a real shift or a partial count. Ask what is still outstanding there and you can tell which. Inside five points the baseline knows nothing, so a lead that moves is neither evidence of a shift nor evidence against one.

Take the two ends of the map. Wyoming went for Trump by 45.8 points, and Lummis is defending a Republican seat, so the baseline says Republican; in the rehearsal the rule never missed a district that far from even. If at nine o’clock the Republican leads there by only ten, the baseline says partial count, not shift: ask which counties have yet to report and expect the margin to widen as they do. If the certified result were a ten-point Republican win, that would be the night’s news, a departure a baseline exists to catch. Georgia went for Trump by 2.2, and Ossoff is defending a Democratic seat, so the baseline says Republican but the rehearsal says a call this close to even is a coin flip plus. A Democratic lead at nine o’clock there means nothing, and neither does a Republican one; the only useful question is what is still out.

Zone Seats What the rehearsal says
More than 15 points from even in 2024 16 rule was 100.0% right here
Between 5 and 15 points 14 rule was 100.0% right here
Within 5 points 5 rule was 83.1% right here
State Incumbent Party 2024 winner 2024 margin
MI Peters Democrat Trump 1.42
GA Ossoff Democrat Trump 2.20
NH Shaheen Democrat Harris -2.78
NC Tillis Republican Trump 3.21
MN Smith Democrat Harris -4.24

5 seats of 35 are in the zone where the rule stopped working. Those are the races to watch, and the rest are the yardstick you watch them against. Two caveats before treating that as a forecast. A House district is not a Senate state, because Senate races have larger and better-known candidates, which should make a presidential baseline less accurate. And a midterm is not a presidential year, because the electorate is smaller and differently composed.

What does not follow is that campaigns do not matter. The baseline holding is consistent with two very different worlds: one where nothing happened, and one where enormous effort made the expected thing happen.

What to do on the morning of 4 November. Open results_senate_2026_TEMPLATE.csv beside a results page. For each of the 35 rows, Ohio and Florida included, write the called winner’s party in winner_party and the Democratic share reported at that hour in dem_pct, and leave uncalled races blank. In a notes column of your own, record where each call came from and at what time. Then set winner_party beside pres24_winner in senate_2026_landscape.csv, the baseline, and count the agreements separately for seats more than five points from even and seats within five, the way the rehearsal did. The rehearsal says the first group should agree almost everywhere; any seat there that disagrees is either the night’s real story or a state still counting, and the way to tell is to ask how many ballots it has left. The second group is where the baseline knew nothing, so a disagreement there is not a surprise and an agreement is not a vindication.

What this brief cannot tell you

Whether the baseline has become more accurate over time. Daniel Hopkins argues that American political behaviour has nationalised, with local contests increasingly decided by national party loyalties,3 and Alan Abramowitz and Steven Webster put the tightening down to negative partisanship, voting against the other party rather than for one’s own.4 Both predict that the same rehearsal run on 1980 would score far lower. This file holds one election and cannot test it.

What is still outstanding anywhere. Nothing here records how many ballots a jurisdiction has left to count, which is what you need to separate a real shift from a partial one. The baseline says what to expect; it does not say how much of the answer has arrived.

Who will be on the ballot. The landscape is a snapshot from August 2026, so retirements, primary defeats and appointments after that date are absent, and an open seat behaves very differently from an incumbent defending one.

Anything about candidates, turnout, money or polling. There is exactly one predictor in either file by construction, which makes it a clean baseline and useless for anything else. 2 House districts are also missing from the rehearsal, and every accuracy figure above is computed over 433.

What you should have learned

Extensions

None of these is answered above, and every one can be answered from the tables the Sources section hands over.

Sources

Data

The data itself

Every figure above is drawn from these plain CSV tables.

rehearsal_house_2024.csv, senate_2026_landscape.csv, results_senate_2026_TEMPLATE.csv

Also cited

Rebuild this data yourself, with an AI assistant
I want to rebuild a public dataset from its original sources, without
any starting files. Please do the following and show your work.

THE FIRST SOURCE. The @unitedstates project's roster of current
members of Congress, a plain CSV at
https://unitedstates.github.io/congress-legislators/legislators-current.csv
One row per sitting member, with chamber, state, party, and -- for
senators -- the class that says which election year the seat faces.
Open, maintained by volunteers, no account or key needed.

THE SECOND SOURCE. The 2024 presidential result by state and by
congressional district. Any careful public compilation will do: the
jaytimm/PresElectionResults collection on GitHub carries the state
results, and The Downballot publishes district-level presidential
calculations as freely exported spreadsheets.

WHAT TO BUILD. This was assembled before a November 2026 election
night, in two halves: the map that exists in advance, and a
rehearsal of the method on an election that has already happened.
1. The 2026 Senate landscape: every Class 2 seat up in 2026, who
   holds it today, and how the state voted for president in 2024 --
   flagging seats where the holding party lost the state.
2. The rehearsal: each 2024 House result beside the presidential
   result in the same district, marking where the seat went against
   the district's presidential winner.

CHECK YOUR WORK. The copies this book used were downloaded in August
2026. If your rebuild matches them, you should find:
- 35 Senate seats on the 2026 ballot: 33 Class 2 terms ending, plus the Florida and Ohio special elections for the Class 3 seats Rubio and Vance vacated
- 3 of them held by the party that lost the state for president
- 433 districts in the rehearsal table, out of the House's 435; in
  all but 15 the seat went to the party that carried the district
The seat landscape moves as members resign, die, or are appointed,
so the roster file changes week to week; a different holder for a
seat means the world moved, not that you made an error.

  1. Edward B. Foley, “A Big Blue Shift: Measuring an Asymmetrically Increasing Margin of Litigation,” Journal of Law and Politics 28, no. 4 (2013): 501–546, SSRN working paper 2353352.↩︎

  2. The Senate’s own list of seats by class is at https://www.senate.gov/senators/Class_II.htm; the two special elections are Class 3 seats, listed at https://www.senate.gov/senators/Class_III.htm.↩︎

  3. Daniel J. Hopkins, The Increasingly United States: How and Why American Political Behavior Nationalized (Chicago: University of Chicago Press, 2018), https://press.uchicago.edu/ucp/books/book/chicago/I/bo27596045.html.↩︎

  4. Alan I. Abramowitz and Steven Webster, “The Rise of Negative Partisanship and the Nationalization of U.S. Elections in the 21st Century,” Electoral Studies 41 (2016): 12–22, https://doi.org/10.1016/j.electstud.2015.11.001.↩︎