I Ran the Democratic Primary 10,000 Times. Five Variables Decided Almost Everything
None of them has happened yet.
I like to start with the markets, not the polls. Kamala Harris leads current national polling because polls right now mainly measure name recognition. The money in the markets is more honest. As of mid-June, Polymarket and Kalshi both have Gavin Newsom around 23% to win the nomination, AOC and Jon Ossoff are tied just under 10%, and there’s a long list of senators and governors behind them.
Recently, I started to do something slightly unhinged. I built a simulator based on my assumptions about the field, calibrated it against live market prices and ran the 2028 primary 20,000 times.
This is math being applied to my opinions. It’s not a forecast. It does two useful things: shows which of your beliefs actually moves the outcome. And it keeps you honest.
What the machine told me was pretty simple. This race won’t really be a competition of the politicians who end up running. Personalities will have an impact, but this year the candidates will be more downstream than in years past. It’ll be a contest between four coalitions.
There’s the Restoration pool: the Black political establishment, party loyalists, the South Carolina firewall: Kamala Harris, Raphael Warnock, Jon Ossoff.
The Populist-left pool: young voters, the movement, anti-oligarchy. AOC, Ro Khanna, Chris Murphy, James Talarico, Graham Platner, Shawn Fain.
Then there’s the Electability pool, which is quite large this year: suburban moderates and regulars who care most about winning: Gavin Newsom, Josh Shapiro, JB Pritzker, Andy Beshear, Mark Kelly, Mayor Pete, Rahm Emanuel and more.
And the Outsider pool. Jon Stewart? And someone so out of nowhere that they’re not listed here.
This machine asks what would have to happen for one candidate to get ahead and ultimately win the nomination. What variables and conditions need to be set for X or Y to win the nomination?
I’ve identified 5 variables that decide almost everything.
Does AOC run? She’s the center of gravity for the Populist-left lane. If she runs, she likely locks up that pool and the race collapses into a binary choice between her and the Electability frontrunner. If she passes, the populist energy needs a home and who knows what happens. AOC running produces a more predictable primary in my simulations. AOC passing produces chaos. See what breaks if she passes →
Who votes first? The DNC will set the early-state order over the next weeks and months. It will be a massive decision that dramatically impacts the outcome of the nomination fight. South Carolina could help candidates in the Restoration pool and could help Kamala Harris or her heir. New Hampshire helps Mayor Pete and others in the Electability pool. Nevada, dominated by unions, helps the Populist-left. The campaign event happening right now is happening inside a rules committee. Watch the rules committee pick the nominee →
Does Gavin Newsom survive scrutiny? Newsom is the Electability pool’s frontrunner (and overall frontrunner). He’s pretty durable against every calendar decision but fragile under fire. He’s also the only leading candidate that has no kill switch. There’s nothing on the calendar that can stop him from running before voting starts. He’ll be taking fire from everywhere and when he slips in the model, the Electability pool transfers to Pritzker. Put Newsom under fire →
Will Georgia go early? Jon Ossoff is the Restoration pool’s swing-state weapon but he’s gotta win re-election in November first. If he romps to victory and then the DNC hands Georgia an early slot, the party will have built a draft-Ossoff machine while he still says he’s not running. Not a bad spot to be. Build the draft-Ossoff machine →
What’s 2028 about? Affordability and anti-oligarchy vibes arm the Populist-left. In the model, AI and the future of work arm Ro Khanna specifically. Fighting Trumpism arms the Electability pool. Make it an AI election and watch Khanna move →
The simulator immediately changed three of my beliefs. The worlds where AOC runs are the orderly ones. The worlds where she doesn’t run are the volatile ones. Because the Populist-left group has no obvious second person. The single most disruptive setting in the model is the world where the Electability pool doesn’t consolidate. This would be the opposite of 2020, when the establishment candidates withdrew en masse and endorsed Joe Biden. Across every reasonable variable, the chance that the nominee is a person who’s not on anyone’s list remained stubbornly large.
Now let’s look at the candidates and how their outcomes play out.
Gavin Newsom:
My read. He reads like Hillary in 2008 and 2016. Will he peak too early? He’s seen by the left as too moderate, the center as too left and by the country as just left. He’s extremely talented, well funded and in a weak field he could coast the way Biden did in 2020. He could cut deals with the Populist-left as Biden did. He was seen getting lunch with Elizabeth Warren a few months ago. That lunch, and the leak, was not an accident.
The machine’s read. He’s the Electability pool’s frontrunner and my first model handed him the race, because I had quietly given him an edge in every scenario: he’s the foil if AOC runs and could coast via plurality if she doesn’t. He’s everyone’s plausible second choice but almost nobody’s first love. The one real, big variable is scrutiny. I asked a single question (that you can toggle), does Newsom hold up under fire, his number fell from 29% to the low 20s.
AOC:
My read. The best political athlete in the party. I don’t know if she runs, and that is the point. Schumer’s seat is up in 2028, the same cycle, and the Senate is the “long game” move. Going for the White House is the move you make when the lane is open, and the Obama lesson, which I’m sure she’s familiar with, is that you go when the moment exists.
The machine’s read. Her entry hands Newsom his foil and collapses the race into a binary. Her absence leaves the Populist-left wide open and makes her endorsement worth a lot. The machine really likes AOC.
Jon Ossoff:
My read. People compare his speeches to early Obama. I see it, but differently… to me it’s imitation. It feels like he’s watched old YouTube clips on a loop. In my eyes, he’s a VP option and a remarkable public figure, not a POTUS contender.
The machine’s read. If he wins big in November and the DNC rules committee hands Georgia an early slot, the board will be moving in his favor. My imitation gripes won’t matter if things fall into place.
Kamala Harris:
My read. Harris is the Restoration pool’s main player. I think she’s a poor fit for the moment: she’s shaky on her feet, gets easily flustered and is prone to saying the wrong thing. But she was the Vice President, has universal name recognition (she’s filling arenas) and is the strongest in the field with Black voters, the constituency that decides this primary.
The machine’s read. She’s the most calendar-sensitive candidate in the simulation. She leads in 15% of worlds where South Carolina goes first and only 9% under a traditional calendar.
Pete Buttigieg:
My read. Mayor Pete is the retail end of the Electability pool. People know him and they know he’s smart… but that’s not enough. He needs a massive breakout moment where the country connects to him in a new, authentic way.
The machine’s read. His number nearly doubles under a retail-state calendar (New Hampshire, etc).
Josh Shapiro:
My read. He’s the Electability pool’s strongest pure talent. He’s got a great record in Pennsylvania but is probably too moderate for this electorate. I still think he’s underrated in the markets. But the consensus number two has no launchpad. Pennsylvania isn’t applying for an early slot, he’s no New Hampshire retail creature, and he has no claim on South Carolina.
The machine’s read. He needs Newsom to go away and for this election to be about normalcy.
JB Pritzker:
My read. I think he’s the Electability pool’s most underrated figure. He’s quietly built a machine, spending 2 years funding ballot initiatives across the country.
The machine’s read. He’s the cleanest substitution for Newsom.
Ro Khanna:
The Populist pool’s sleeper. He’s apparently being advised by Ron Klain and is staffed with Bernie 2016 people. He’s always four steps ahead. If the nominee is someone surprising, it could be Ro.
The machine’s read. He’s the most conditional candidate in the field. He needs AOC not to run and for AI / the future of work to be the top issue.
Chris Murphy:
My read. He’s my senator, so read this with that disclosure attached. He keeps surfacing in the model and it’s not because I put my thumb on the scale. He’s merging the Populist-left pool with the Electability pool from inside the Senate, with a strong anti-oligarchy message that breaks through on traditional and new media.
The machine’s read. In the worlds where AOC stays out and the race turns on affordability, Murphy does very well.
The wildcards:
If AOC stays out, the Populist-left energy goes looking for someone. It could be Jon Stewart, the Outsider pool’s loudest option. But for 25 years he’s said over and over again that he has no interest. It honestly could be the lightning rod Graham Platner. If he beats Susan Collins big in November, the Populist-left coalition could morph behind him.
What the machine taught me: I figured out the market has hidden power rankings. If you divide each candidate’s nomination price by their probability of running, you get what the money thinks about them if they enter. Newsom 29, AOC 20, Ossoff 15, Harris 13, Jon Stewart 9.
Also, 1 in 5 of the simulated primaries ends in a contested convention. It’s going to be a historically large field.
The point of this is to show that the candidates are downstream of three things: AOC’s decision, the calendar, and what the country decides 2028 will be about.
Democrats still don’t agree on why they lost in 2024. Whoever finds that answer, and provides a vision for where the country should go, will win. That answer doesn’t exist yet.
The machine doesn’t predict who wins. But what’s cool about it is that it shows which of your assumptions actually change the result. Have fun with it.
The 2028 Machine is live here.




