Analysis · Prediction game · results
@cmelectionprediction is the CTM Oracle 2026
With 473 of 489 races scored, @cmelectionprediction has 251.16 points, 8.83 ahead of @jeb_bungus, and nothing left to count can close that gap.
The top three, so far
- First@cmelectionprediction251.16 points
453 of 473 winners right; margins off by 4.4 points on average in the close races.
CTM Oracle 2026 - Second@jeb_bungus242.33 points
452 of 473 winners right; margins off by 4.5 points on average in the close races.
- Third@combatwombat13238.58 points
449 of 473 winners right; margins off by 5.1 points on average in the close races.
First place is settled: no result in the 16 open races can change it. Second and third can still change.
How the field did
Scored as if it were a ballot, our forecast has 217.79 points: 442 of 473 winners, with the close races' margins off by 6.2 points on average. 31 ballots did better. The average of everyone’s margins, scored the same way, has 225.22.
Points per ballot
Each column counts the ballots in a 20-point band. The scores run from 13.10 to 251.16; the middle ballot has 219.61.
- Our forecast: 217.79 points
- Readers’ average: 225.22 points
Right winners, by office
The share of scored races each got right. A race left blank counts as a miss.
- The average ballot
- Our forecast
The hardest races
The competitive races the fewest ballots called, with what the average ballot and our forecast expected.
| Race | Result | Had the winner | Readers’ average | Our forecast |
|---|---|---|---|---|
| TX-09 | Gutierrez +15.1 | 1 of 50 | Mealer +4.4 | Mealer +5.9 |
| NV-02 | Benitez-Thompson +5.8 | 4 of 50 | Flippo +2.7 | Flippo +3.7 |
| IN-05 | Ford +3.3 | 4 of 50 | Spartz +4.1 | Spartz +5.1 |
| OH-15 | Leonard +6.6 | 6 of 49 | Carey +2.4 | Carey +3.1 |
| WI-01 | Berman +3.9 | 6 of 50 | Steil +1.4 | Steil +2.0 |
| OH-10 | Knickerbocker +1.6 | 6 of 49 | Turner +2.4 | Turner +3.4 |
| FL-09 | Soto +0.5 | 7 of 49 | Green +2.2 | Green +3.1 |
| MI-10 | Hines +7.2 | 8 of 50 | Bouchard +2.3 | Bouchard +4.2 |
The race that cost the most ballots: TX-09, where 49 of 50 had the wrong winner.
Calls against our forecast that came in
Across the scored races, players picked against our favorite 626 times and were right 352 times. The loneliest right calls:
- TX-09: Gutierrez won by 15.1; our forecast had the other side.One ballot of 50 had it: @cheyinka (margin off by 24.9).
- NJ-02: Mullock won by 2.7; our forecast had the other side.One ballot of 48 had it: @rickityricksanchez (margin off by 1.6).
- NV-02: Benitez-Thompson won by 5.8; our forecast had the other side.4 ballots of 50 had it: @bluewave2026 (margin off by 0.8), @azlawyer04 (margin off by 2.1), @jeb_bungus (margin off by 3.7) and @reddtrain (margin off by 5.4).
- IN-05: Ford won by 3.3; our forecast had the other side.4 ballots of 50 had it: @bluewave2026 (margin off by 1.3), @humdrum (margin off by 1.7), @azlawyer04 (margin off by 1.8) and @combatwombat13 (margin off by 2.8).
- Mississippi Senate: Colom won by 0.8; our forecast had the other side.4 ballots of 52 had it: @azlawyer04 (margin off by 0.3), @mcbarndt (margin off by 0.3), @cheyinka (margin off by 0.5) and @wifemento (margin off by 2.2).
- OH-10: Knickerbocker won by 1.6; our forecast had the other side.6 ballots of 49 had it: @bluewave2026 (margin off by 0.4), @reddtrain (margin off by 0.7), @cmelectionprediction (margin off by 1.2), @donato (margin off by 1.8), @humdrum (margin off by 1.8) and 1 more.
Readers against our forecast
Every ballot could start from our forecast, so the average ballot sits close to it. In the 71 competitive races scored so far, the readers’ average margin landed closer to the result than ours in 54 and ours landed closer in 16. The readers’ average missed by 5.7 points a race and ours by 6.2; it had the winner in 49 of them, ours in 46.
Where readers and our forecast disagreed most
The 12 competitive races with the widest gap between the readers’ average margin and ours, and how each turned out.
- Result
- Readers’ average
- Our forecast
Readers’ average: Abbott +2.1
Our forecast: Abbott +4.6
Readers’ average: Kotek +0.9
Our forecast: Drazan +1.4
Readers’ average: Lombardo +0.7
Our forecast: Lombardo +2.9
Readers’ average: Graham +1.6
Our forecast: Graham +3.8
Readers’ average: Ricketts +1.0
Our forecast: Ricketts +3.0
Readers’ average: Bouchard +2.3
Our forecast: Bouchard +4.2
Readers’ average: Jackson +0.1
Our forecast: Jackson +2.0
Readers’ average: McGuire +3.1
Our forecast: McGuire +4.9
Readers’ average: Huizenga +1.7
Our forecast: Huizenga +3.3
Readers’ average: Mealer +4.4
Our forecast: Mealer +5.9
Readers’ average: Gruters +3.0
Our forecast: Gruters +4.4
Readers’ average: Fitzpatrick +0.7
Our forecast: Fitzpatrick +2.1
Every ballot 54 entries, 473 races scored
| Rank | Player | Points | Winners right | Senate | Governor | House | Avg. margin miss | Close races |
|---|---|---|---|---|---|---|---|---|
| 1 | @cmelectionpredictionCTM Oracle 2026 | 251.16 | 453 of 473 | 31/34 | 32/35 | 390/404 | 4.4 | 101.02 |
| 2 | @jeb_bungus | 242.33 | 452 of 473 | 30/34 | 33/35 | 389/404 | 4.5 | 99.01 |
| 3 | @combatwombat13 | 238.58 | 449 of 473 | 32/34 | 33/35 | 384/404 | 5.1 | 94.55 |
| 4 | @kmurphy798 | 237.83 | 452 of 473 | 31/34 | 32/35 | 389/404 | 5.2 | 93.15 |
| 5 | @reddtrain | 237.05 | 448 of 473 | 30/34 | 33/35 | 385/404 | 4.8 | 92.48 |
| 6 | @donato | 233.73 | 448 of 473 | 32/34 | 30/35 | 386/404 | 5.3 | 91.79 |
| 7 | @nix666 | 232.16 | 451 of 473 | 31/34 | 32/35 | 388/404 | 5.7 | 91.26 |
| 8 | @trebach | 231.63 | 448 of 473 | 31/34 | 32/35 | 385/404 | 5.1 | 89.68 |
| 9 | @tfatf68 | 230.67 | 448 of 473 | 33/34 | 34/35 | 381/404 | 5.6 | 86.51 |
| 10 | @humdrum | 228.60 | 446 of 473 | 30/34 | 29/35 | 387/404 | 5.6 | 90.58 |
| 11 | @cheyinka | 228.52 | 436 of 473 | 31/34 | 34/35 | 371/404 | 6.1 | 90.57 |
| 12 | @putinnuri | 227.91 | 449 of 473 | 32/34 | 35/35 | 382/404 | 5.8 | 86.89 |
| 13 | @mwt87 | 227.08 | 445 of 473 | 32/34 | 32/35 | 381/404 | 5.6 | 85.37 |
| 14 | @rduran23 | 225.76 | 446 of 473 | 30/34 | 34/35 | 382/404 | 5.8 | 85.47 |
| 15 | @coolhandheel | 225.40 | 446 of 473 | 29/34 | 33/35 | 384/404 | 5.7 | 84.63 |
| 16 | @ringmybell | 224.62 | 446 of 473 | 32/34 | 33/35 | 381/404 | 5.9 | 82.41 |
| 17 | @ovidarch | 224.39 | 443 of 473 | 32/34 | 32/35 | 379/404 | 5.8 | 81.94 |
| 18 | @azlawyer04 | 223.64 | 448 of 473 | 32/34 | 31/35 | 385/404 | 6.0 | 86.33 |
| 19 | @joey07701 | 222.36 | 442 of 473 | 32/34 | 31/35 | 379/404 | 5.8 | 82.95 |
| 20 | @sonnymarchbanks | 222.30 | 445 of 473 | 32/34 | 32/35 | 381/404 | 6.0 | 81.49 |
| 21 | @dmurphymcgraw14 | 221.77 | 445 of 473 | 31/34 | 33/35 | 381/404 | 6.1 | 80.95 |
| 22 | @ics91 | 221.56 | 444 of 473 | 30/34 | 32/35 | 382/404 | 6.0 | 81.62 |
| 23 | @gnys | 221.33 | 441 of 473 | 32/34 | 30/35 | 379/404 | 5.9 | 80.74 |
| 24 | @drfrfr | 220.94 | 443 of 473 | 32/34 | 31/35 | 380/404 | 6.0 | 80.54 |
| 25 | @mcbarndt | 220.73 | 443 of 473 | 34/34 | 30/35 | 379/404 | 6.2 | 78.61 |
| 26 | @efro121506 | 220.50 | 453 of 473 | 32/34 | 33/35 | 388/404 | 4.9 | 96.68 |
| 27 | @kamikazee333 | 219.78 | 443 of 473 | 32/34 | 32/35 | 379/404 | 6.2 | 78.50 |
| 28 | @nightowl925 | 219.43 | 446 of 473 | 30/34 | 32/35 | 384/404 | 6.2 | 82.24 |
| 29 | @turquoisepaladin | 218.98 | 442 of 473 | 31/34 | 32/35 | 379/404 | 6.1 | 78.16 |
| 30 | @guidoj_ger | 218.55 | 442 of 473 | 32/34 | 31/35 | 379/404 | 6.2 | 77.95 |
| 31 | @rickityricksanchez | 218.05 | 442 of 473 | 30/34 | 32/35 | 380/404 | 6.2 | 76.74 |
| 32 | @mammacass505nj | 217.79 | 442 of 473 | 31/34 | 30/35 | 381/404 | 6.2 | 76.51 |
| 32 | @steudo31 | 217.79 | 442 of 473 | 31/34 | 30/35 | 381/404 | 6.2 | 76.51 |
| 34 | @bruceismybigdog41 | 217.76 | 442 of 473 | 31/34 | 30/35 | 381/404 | 6.2 | 76.51 |
| 35 | @meghanplatt | 216.81 | 441 of 473 | 30/34 | 30/35 | 381/404 | 6.4 | 76.16 |
| 36 | @sausage123 | 216.19 | 443 of 473 | 30/34 | 33/35 | 380/404 | 6.3 | 78.94 |
| 37 | @h0pegulle | 216.14 | 439 of 473 | 31/34 | 29/35 | 379/404 | 6.8 | 75.88 |
| 38 | @tester | 215.93 | 440 of 473 | 31/34 | 30/35 | 379/404 | 6.3 | 75.08 |
| 39 | @from_the_dirt | 215.63 | 433 of 473 | 28/34 | 27/35 | 378/404 | 6.7 | 78.39 |
| 40 | @mghhdy | 215.57 | 440 of 473 | 31/34 | 30/35 | 379/404 | 6.3 | 74.91 |
| 41 | @hz58 | 215.01 | 439 of 473 | 28/34 | 31/35 | 380/404 | 6.3 | 74.38 |
| 42 | @kangjack | 214.06 | 439 of 473 | 29/34 | 31/35 | 379/404 | 6.4 | 73.28 |
| 43 | @acphantom | 213.83 | 426 of 473 | 14/34 | 32/35 | 380/404 | 6.0 | 80.66 |
| 44 | @paul | 212.05 | 438 of 473 | 30/34 | 30/35 | 378/404 | 6.5 | 71.86 |
| 45 | @wildrose | 210.25 | 436 of 473 | 27/34 | 31/35 | 378/404 | 6.5 | 69.87 |
| 46 | @bluewave2026 | 207.69 | 432 of 473 | 30/34 | 30/35 | 372/404 | 6.4 | 71.84 |
| 47 | @jac0731 | 195.44 | 423 of 473 | 26/34 | 30/35 | 367/404 | 7.0 | 55.62 |
| 48 | @jacobrobben | 187.62 | 436 of 473 | 27/34 | 31/35 | 378/404 | 6.6 | 69.11 |
| 49 | @wifemento | 151.49 | 282 of 473 | 28/34 | 29/35 | 225/404 | 10.3 | 57.92 |
| 50 | @masonscaggs1 | 87.31 | 68 of 473 | 11/34 | 13/35 | 44/404 | 6.6 | 69.49 |
| 51 | @propez1845 | 41.53 | 60 of 473 | 28/34 | 32/35 | 0/404 | 16.5 | 19.20 |
| 52 | @pol | 19.03 | 29 of 473 | 29/34 | 0/35 | 0/404 | 18.2 | 8.84 |
| 53 | @dou | 18.00 | 29 of 473 | 29/34 | 0/35 | 0/404 | 18.4 | 7.78 |
| 54 | @dinunzioa12 | 13.10 | 9 of 473 | 9/34 | 0/35 | 0/404 | 18.2 | 11.05 |
| Our forecast (not ranked) | 217.79 | 442 of 473 | 31/34 | 30/35 | 381/404 | 6.2 | 76.51 | |
| Readers’ average (not ranked) | 225.22 | 446 of 473 | 32/34 | 31/35 | 383/404 | 5.7 | 83.01 |
“Avg. margin miss” is the average distance, in points, between a ballot’s margin and the result in the Toss-up, Tilt and Lean races. “Close races” is the points earned in those races alone.
The game
54 ballots came in between October 28 and the lock at 6:00 pm Eastern on November 3, when the first polls closed. 15 ballots arrived on the last day. Each one picked a winner and a margin in up to 489 Senate, governor and House races.
Ballots entered per day
By the Eastern calendar.
How it was scored
Each race scores 1 point for the right winner, plus up to 1 more for the margin: a full point when it is exact, nothing when it is 10 or more points off.
Races are weighted by how our forecast rated them when picks lock: a Toss-up, Tilt or Lean race counts in full, a Likely race half and a Solid race a fifth.
If two ballots tie on points, the one with the smaller average margin error in the competitive races ranks higher.
The results are the official counts on our results pages, as of November 13. A race is scored once it is called there; a race still being counted is not. The weights are our ratings at the lock, fixed that evening and not changed since. The 17 contests the ballot itself decided (an unopposed candidate, or two from one party) were never picked and are not scored.
16 races not scored yet
- AK-AL: ranked-choice count to come
- AZ-02: still being counted
- CA-23: still being counted
- CO-04: still being counted
- FL-27: still being counted
- Alaska governor: still being counted
- LA-05: goes to a runoff on December 12
- LA-06: goes to a runoff on December 12
- MN-01: still being counted
- NC-03: still being counted
- NC-05: still being counted
- NC-07: still being counted
- NC-10: still being counted
- Alaska Senate: ranked-choice count to come
- TN-04: still being counted
- WA-05: still being counted
LeaderboardWhat readers predicted2026 results
Usernames and scores are public here, as on the leaderboard. Nothing else about a player is shown or stored. You can delete your entry at any time from the game, in the browser where you entered.