BetaThe Shuffler is in beta. Spot a bug or odd result? Report it.

What’s newv2.0

Shuffler changelog

  1. v2.0Jun 23, 2026
    • A brand-new map engine built on MapLibre GL: a smooth, full-width, vector map you can pan and zoom all the way into — replacing the old fixed SVG map.
    • New Precincts view — pick "Precincts" in the Map menu (alongside Counties, States, and Bubbles) to read results at the Census block-group level in full detail, right down to the neighborhood.
    • Demographic swings now reach the precinct: shuffle a group and each precinct responds to its OWN Census/ACS make-up (race, age, education, income) instead of a flat county-wide change — while every county still adds back up to its real total.
    • Cleaner geography: land-clipped county and state borders (no color bleeding into bays or the ocean) that line up exactly with each other.
    • More accurate income — each county's real spread across national income brackets, using the right ACS data for each election year.
    • Faster and smoother: the MapLibre renderer streams and pans the full-detail precinct layer efficiently, and your shuffle is remembered when you switch between map views.
    • Same controls and Electoral College model you know, now on a faster, modular engine.
  2. v1.3Jun 21, 2026
    • Draw brand-new states: select counties and turn them into a state of their own — it gets its own electoral votes, color and borders.
    • Redrawn and new states are now fully interactive on the state map — hover to see them, click to select them.
    • Borrowing a group’s numbers from another year now actually re-runs the result (it used to only move the slider).
    • Focus mode is cleaner: it isolates your selection, hides borders unless the selection spans states, and re-frames the map.
    • Polished the redraw controls and fixed the selection and hover outlines on redrawn states.
  3. v1.2Jun 21, 2026
    • Bug reports now go through the new contact page instead of email.
    • Added this changelog so you can see what’s changed.
  4. v1.1Jun 10, 2026
    • Added demographic groups for education, age, and income.
    • Faster live Electoral College tally — the count updates with no reloads.
  5. v1.0Jun 1, 2026
    • Launched the Shuffler: every U.S. presidential election from 1928 to 2024, re-runnable by demographic group, nationally or county by county.

Heads up: precinct detail is data-heavy and can be laggy, especially zoomed out — give it a moment to load.

Interactive electoral model

Election Shuffler

Pick any presidential election from 1928 to 2024, then re-run it — shuffle the electorate nationally by demographic group, or state by state and county by county. Zoom in for precinct-level (block-group) detail. The map and the Electoral College update live.

25 elections1928–20243,142 counties7 demographic dimensions

Loading the Shuffler…

About the Shuffler

Replay a century of American presidential maps

The Election Shuffler is an interactive map that replays every U.S. presidential election since 1928 and lets you ask "what if." Start from any year's real county-level result, then reshape the electorate and watch the outcome change.

You can shuffle nationally — shifting a demographic group's vote across the whole country — or work geographically, adjusting individual states and counties by hand. Each change ripples through the map and the Electoral College tally in real time, so you can see exactly where a shift would matter. Zoom into the county map and switch on the precinct layer to read results at the block-group level, with county swings flowing down to each neighborhood.

It is a tool for understanding realignment: how coalitions formed and came apart, why a state flipped, and how small movements among a single group of voters can swing a national result. Because every scenario is built on actual returns, the maps stay grounded in real geography rather than guesswork.

A century of maps

Every U.S. presidential election from 1928 to 2024, built on real county-level results.

Demographic swings

Shift groups by race, education, age, or income and see the map and Electoral College respond.

National or local

Reshape the whole country at once, or drill down state by state and county by county.

Live tally

The Electoral College count updates the instant you move a slider — no reloads.

How it works

Every group has an absolute Dem two-party vote share and turnout rate, preset to baselines inferred ecologically from county voting patterns (the tick marks). Groups overlap, so moving one shifts related groups across the other tabs for context; the county math applies the directly edited dimension or dimensions, averaging only those direct estimates so unrelated tabs do not dilute the edit. The National row reflects, and uniformly shifts, everything. All shifts carry over when you change the base election.

Notes & sources

County returns from Algara–Sharif (1928–1996), MIT Election Data + Science Lab (2000–2016), and official county canvasses (2020–2024), with pre-1972 state totals reconciled to official results (notably NY, where ALP/Liberal fusion votes for the Democratic nominee were coded third-party, and Alabama’s 1948/1964 Democratic-line slates). Counties created after an older election (La Paz AZ, Cibola NM, Broomfield CO, several Virginia independent cities) are retropolated from their parent county’s vote. Alaska and Hawaii appear from 1960 (statehood) and DC from 1964 (23rd Amendment).

Precinct (block-group) detail — shown when you zoom into the county map — is disaggregated to 2020 census block groups from precinct-level returns published by Dave’s Redistricting App (DRA) and The New York Times, then re-aggregated to each county’s shuffled result. It is a visual detail layer only and does not affect the Electoral College tally.

Race/age/sex from Census county estimates (2019); education and income from ACS via USDA ERS; Metro uses the USDA rural-urban continuum code vintage matched to the base year (1974, 1983, 1993, 2003, 2013 or 2023); ancestry from ACS 2021 self-reported ancestry plus Hispanic origin (people may report two ancestries, so groups overlap; Other includes everyone else plus non-reporters); religion from the 2020 U.S. Religion Census (congregation-reported — approximate). Most demographics are held fixed across years, so older elections with enabled demographic shuffling are read through today’s population; pre-1972 elections disable demographic shuffling.

Group-level third-party sliders move that group’s combined non-major vote share, shifting votes to or from both major parties in proportion. The 3rd-party candidates panel goes further: each named candidate has a vote-share slider whose changes follow the candidate’s real county pattern, plus a draws-from slider setting how much of the change comes from each major party. A state’s electors go gold only when a single candidate, not the combined bloc, leads its vote.

Group leans and turnout are inferred from county-level patterns by bounded ecological regression — estimates, not survey results, and they overstate group differences. Cross-group effects use a county-level independence approximation. Alaska borough results are estimates by RRH Elections / cinyc9 (anchored to official statewide totals). ME/NE district electoral votes are approximated from county composition. All margins are capped at ±100.

See the live 2026 forecast →