Traditional polls are slow, expensive, and harder to field every year. So we built a different instrument: simulate every real voter from the voter file with AI, then correct the result against certified election outcomes — for candidate races, starting from each county's own last certified result, the way any serious forecast does. Across three states it called the 2024 presidential margin in all 234 counties to an average of 1.7 points, and six Florida ballot measures to between 2 and 5. Then we took it past prediction: the same engine now tests which messages move your voters — and turns every poll into a ranked list of the specific voters worth contacting.
Modern survey research rests on a chain of assumptions that each passing decade has made harder to satisfy. Three gaps motivate a different kind of instrument.
Telephone response rates fell from about 36% in 1997 to roughly 6% by 2018, and keep sliding. When fewer than one in ten people respond, the estimate depends entirely on whether the people who answer resemble the people who don't, and they don't.
36% → 6% response rate, 1997–2018 Source: Pew Research CenterA single quality poll costs thousands of dollars and several days. Presidential and marquee races are polled constantly, while county offices, judgeships, school boards, ballot measures, and primaries number in the thousands and are almost never polled at all.
Granular + broad is priced out of reach Source: Roper Center for Public Opinion ResearchEven a perfect survey measures what people say, which diverges from what they do. In corruption research a roughly 30-point penalty in surveys falls to near zero in real-world behavior. Stated answers carry a built-in validity ceiling.
~30 pts in surveys → ~0 in the field Source: Incerti (2020), American Political Science ReviewThe unit of simulation is a single real voter. We build a short profile from public records, ask an AI to answer the question in that voter's voice, add up thousands of them, then apply a standard correction so the numbers line up with real results.
Start with real registered voters: registration, vote history, and donor records where they exist.
A short profile for each voter from public data: age, party, and other registration signals.
Ask an AI to answer the question in that voter's voice, a few times each to reflect uncertainty.
Add the answers up across the whole population into one synthetic poll: a margin, or a yes share.
Apply our standard correction — for candidate races, anchored to the county's last certified result — for the final number, with an honest range.
Throughout, the load-bearing ground truth is certified election results on the actual population we deploy on.
Every serious election forecast starts from how a place actually voted last time — public information, on the shelf before any election, for every county in America. Our candidate-race correction does the same: it takes each county's certified margin from the previous presidential election as the starting point, and the AI engine measures the shift from there — who has moved, in which direction, and by how much. Nothing private, nothing that wouldn't be public before election day. And the test stays closed-book: every county below is predicted with that county held out of the fit.
Each county is shaded by our prediction. Pick a question and a state, then hover or tap any county to compare it against the actual certified result and see the error.
“In the 2024 election for President, did you vote for the Democratic candidate (Kamala Harris), the Republican candidate (Donald Trump), or another candidate?”
Checked against official certified county results from the N.C. State Board of Elections, the Florida Division of Elections, and the Pennsylvania Department of State.
Blue = Democratic, red = Republican. One fixed scale across all three states.
Counties: NC 100, FL 67, PA 67 (234 total). 1,000 voters sampled per county. Every county predicted out of sample (leave-one-county-out), anchored to its own previous certified presidential result.
Every figure here is measured out of sample, on counties held out of the fit. Lower is better: the average distance from the certified result, in points.
Each county starts from its own last certified presidential result — public, pre-election information — and the engine measures the shift from there. Across all 234 counties, out of sample, the average miss on the 2024 presidential margin is 1.7 points; the statewide margin lands within 0.4 points in North Carolina, 0.7 in Florida, and 0.5 in Pennsylvania. These are 2024 presidential backtest figures, anchored; the full validation study is available on request.
On the six 2024 Florida ballot measures, our predicted yes share lands about 2 to 5 points from the certified result. Tap a measure to read it on Ballotpedia.
Certified results: Florida Division of Elections. Measure text via Ballotpedia.
The plus or minus we report comes from the method's own track record on held-out data, not a textbook sampling margin. Tested out of sample, the 95% range contained the truth about 96% of the time, narrower where the method is proven and wider where it's weaker.
The method is strongest at relative comparisons (which county leans more, how places rank) and at absolute levels where local ground truth exists. North Carolina is the hard case — the widest spread in the study: deep-blue urban, the rural Black Belt, deep-red rural — and the anchor carries it: the statewide margin lands within half a point. The clearest follow-up is cross-race validation — calling a different office from the same anchor.
A new state needs its own correction, fit only on Kansas results. We checked it on three settled 2022 amendments — now selectable on the map above — then used the validated pipeline to forecast a 2026 amendment that hasn't been voted on yet.
Out of the box the engine leaned Republican here, over-stating the Yes / conservative side by 13 to 23 points. The Kansas correction — fit on these real, certified results — pulls it back to within about 4 to 5 points per county.
On the August 4, 2026 primary ballot: a vote Yes gives Kansans the right to elect Supreme Court justices in partisan elections and abolishes the nominating commission (“whose membership consists of a majority of lawyers”); a vote No keeps today's system, in which that commission sends the governor a list of nominees and justices later face retention elections.
How we know the band isn't made up: we ran the same dialed model blind on four older Kansas measures whose certified results we already know but the correction never trained on.
| Kansas measure (held out) | We predicted | Certified | Off by |
|---|---|---|---|
| Census reapportionment (2019) | 51.4% | 59.7% | 8.3 |
| Watercraft tax classification (2012) | 60.4% | 53.5% | 6.9 |
| Voter qualification / mental illness (2010) | 45.0% | 62.4% | 17.4 |
| Charitable raffles (2014) | 68.9% | 74.6% | 5.7 |
| Average error — the honest band | 9.6 |
Three of the four landed within 6 to 8 points. The miss is the oddly framed 2010 voting-rights measure (off by 17) — we left it in rather than hide it, and it's what widens the band. The correction under-predicted Yes on three of four, so a true Yes near 57% is, if anything, the conservative read.
This is an AI simulation of Kansas voters answering the measure as written, corrected against real certified Kansas results — not a field poll. Because the band runs from about 47% to 67%, a narrow failure is possible, but both the central estimate and the model's tendency to under-state Yes point to passage. A brand-new topic like judicial selection can't reach the tighter ±3 to 5 points we get once a measure has its own voting history; only real field polling narrows it further. Sources: certified results from the Kansas Secretary of State; measure details via Ballotpedia.
Beyond vote choice and ballot measures, we tested character questions: “would you vote for a candidate who did X?” No certified result can grade these — people famously claim a scandal would change their vote, then don't — so we validate and sell the order (which attack hurts most), never the point swing.
Published experiments on real voters rank four scandals from most to least damaging: corruption, sexual harassment, financial impropriety, an affair. The simulator was never shown those studies — and produced the identical order.
Four for four, most to least damaging. Spearman rank correlation +1.00, where 1.00 means the exact same order. Benchmark: Doherty, Dowling & Miller (2014).
Gallup asked Americans whether they’d vote for a qualified candidate who is over 80, an atheist, a socialist — 12 traits in all — and published the share saying yes for each. Twelve real numbers to hit. Our simulated voters answered the same 12 questions on a 0–10 scale: the trait order came out nearly perfect, and the average miss was 8.3 points.
Gallup’s 12 candidate traits, 500 simulated national voters. We ask every question 0–10 rather than yes/no — a flat yes/no forces hesitant voters to a hard no and roughly doubles the miss.
Surveys say a corruption scandal costs a candidate about 41 points; in real elections it moves roughly zero. The simulator lives in the survey world, so its magnitudes run about 2 to 3 times too high. That makes it reliable for ranking which attacks and traits land hardest, and an upper bound — not a forecast — on the raw points.
A prediction tells you where the race stands. Campaigns get paid to change it. So we re-poll the same simulated electorate once per message and measure every voter’s movement against their own baseline — here on the live 2026 Kansas judicial amendment from the forecast above: 2,000 real registered Johnson County voters, five messages, and a no-message control.
“Electing judges in partisan races means campaign donors and party bosses in the courtroom. Judges would owe their seats to the special interests that fund their campaigns. Kansas courts should answer to the law, not to campaign cash.”
The quote above is one of five messages we tested, all written to sound like real campaign copy. Two argue for Yes, two argue for No, and the fifth makes no argument at all — it simply lists who has endorsed each side. Each of the 2,000 voters answered the same ballot question after reading each message, and once more with nothing shown — that last run is the “no message” control row in the table below.
| Message shown | All 2,000 | Toss‑ups (292) | Lean Yes (974) | Lean No (734) | Rep. (818) | Dem. (621) | Unaff. (531) |
|---|---|---|---|---|---|---|---|
| “Campaign cash in the courtroom” · for No | −12.6 | −25.1 | −13.3 | −6.6 | −10.2 | −4.2 | −25.0 |
| “60 years of merit selection” · for No | −11.8 | −23.4 | −12.3 | −6.6 | −9.8 | −4.2 | −23.8 |
| Endorsement lineup · names only, no argument | −4.3 | −12.3 | −1.3 | −5.1 | +0.2 | −4.2 | −10.9 |
| “Lawyers picking judges” · for Yes | +3.4 | +5.7 | +0.3 | +6.5 | +0.2 | +5.8 | +5.5 |
| “Your right to elect judges” · for Yes | +2.2 | +6.5 | +0.3 | +3.1 | +0.2 | +1.8 | +6.0 |
| No message · re-ask control | +0.2 | +0.1 | 0.0 | +0.5 | 0.0 | +0.5 | +0.1 |
Purple = toward No, green = toward Yes, grey = within re-ask noise. Toss-up and lean groups use each voter’s calibrated baseline; Libertarian and other small registrations (30 voters) are in the totals but not broken out. Full validation and caveats: in the complete study, available on request.
The two No arguments moved the electorate 12.6 and 11.8 points; the two Yes arguments managed 3.4 and 2.2. That asymmetry — attacks beat positives on ballot measures — is exactly what published experiments find, and the engine reproduced it blind in replication before we ever saw it live.
Toss-ups swung 25.1 points under the strongest attack — nearly twice the movement of Yes-leaners and four times that of No-leaners — and they moved first or a close second on all five messages. The persuasion opportunity concentrates exactly where the race is decided.
The fifth “message” made no argument at all — it just named each side’s backers. Republicans heard that their party leads the Yes side and didn’t move (+0.2). Unaffiliated voters heard the same list and broke 10.9 points toward No. Who stands behind a measure is a message.
Re-asking with no message moved voters by about 0.07 on the 0–10 scale — under a point. Every real message produced 4 to 19 times that. When a segment doesn’t move in this table, that’s a finding too: it means don’t spend there.
The unit of simulation is an individual registered voter — so the same run that produces the topline also scores every voter in it: how close they sit to the fence, how unstable their answers are across repeated asks, whether they’re cross-pressured against their registration, and which message moved them most.
Among Johnson County’s 2,000 scored voters, 292 sat genuinely on the fence. Every one of them moved toward No by double digits (upper bound) under their best message, and 152 were also movable toward Yes; across the full file, 265 voters could be pulled in both directions — the conflicted middle every campaign is guessing at. Each exported row carries a best-message tag: which argument moved that voter most.
Lists export ranked, by county and precinct, ready for calls, mail, and canvass. In this run a mailing address was on file for 100% of voters and a phone for 63% (the Kansas file carries no emails). And the per-voter scores must re-aggregate exactly to the published topline — 52.1% calibrated Yes here — or the run fails loudly. The list is never a different model from the poll.
| Started at (0–10) | Registration | Strongest pull toward No | Strongest pull toward Yes | Contact on file |
|---|---|---|---|---|
| 5.0 · toss-up | Libertarian, 30s | −37 pts · campaign cash | +3 · lawyers picking judges | address |
| 4.7 · toss-up | Unaffiliated, 30s | −23 pts · campaign cash | +7 · right to elect judges | address |
| 7.6 · leans Yes | Republican, 70s | −10 pts · campaign cash | 0 · none landed | address · phone |
| 2.2 · leans No | Democrat, 50s | −7 pts · campaign cash | +3 · right to elect judges | address |
| 1.6 · leans No | Democrat, 30s | 0 · none landed | +10 pts · right to elect judges | address |
Real rows from the Johnson County export with identity withheld — the delivered file carries name, mailing address, phone where on file, precinct, and district on every row, none of which belongs on a public web page. Per-voter movement is an upper bound; the ranking is the product.
Names and identities are never sent to the AI. Each stand-in is built from voter-file traits — age, party, registration signals — and identity is rejoined only inside our systems, at export time. Exports leave our hands with their permitted-use terms attached: voter-file use is restricted by state law (in Kansas, political use is permitted and commercial use is prohibited), and the limitations header travels with the file.
And because the ballot is secret, no individual ground truth exists — for anyone. Per-voter scores are validated at the aggregate level and rank-ordered at the individual level: a smarter ordering of the call sheet, not a claim to know any single person’s vote.
Synthetic polling is a complement to traditional polling, not a replacement. Where a high-quality field poll exists it remains a valuable anchor. We're deliberate about where the method is reliable and where it isn't.
Vote choice is checked across North Carolina, Florida, and Pennsylvania; policy only in Florida. Going further needs certified results we don't yet hold, which we treat as future work.
The direction of the correction is universal, but its size is state and topic specific. Borrowing one state's correction for another can do more harm than no correction at all.
For "would you vote for someone who did X" questions the engine reproduces the real ordering of scandals and traits very well, but the stated effect sizes run larger than real behavior, so we treat them as ceilings.
In production the service plans for free (scoring the question, expected accuracy, and projected effort), and nothing runs until the plan is explicitly approved.
Synthetic polling reaches the places and questions conventional polls can't — every county, every down-ballot race, every issue, in hours rather than weeks. And it no longer stops at the number: test your messages on your electorate, then walk away with the ranked list of voters to go move.