an electorate with no ballot
The Ninety-One
The 91 Census places with at least 250,000 residents cast more presidential votes in 2024 than any state. Across six elections — added, never averaged — the Democratic map inside them expanded by 18 cities while the combined margin moved 5.5 points.
There is no election in which the Ninety-One vote.
They share no governor, no legislature, no election authority, no metropolitan government, and no name they answer to together. Winston-Salem and Anchorage have never once been counted as a single electorate. Nothing in American law asks them to be. The country keeps their returns in 91 separate drawers, in 32 states and the District of Columbia, filed under 91 different canvassing authorities.
Join the drawers anyway, and something appears that no ballot has ever contained.
Ninety-one American Census places hold at least 250,000 residents. Together they contain 62,818,017 people. In 2024 they cast 24,420,418 presidential ballots — more than California, the largest state electorate, which cast 15,865,475. Kamala Harris carried this assembled geography by 8,440,784 votes, a margin of D+34.6.
It is an electorate with no institution, no seal, and no returning officer. It exists only in the joining.
And the first thing it says is not what twenty years of urban-vote commentary would predict.
The map grew faster than the weight
Between 2004 and 2024 the Democratic candidate went from carrying 60 of these places to carrying 78. Nineteen places crossed from Republican to Democratic across those twenty years, and one — Laredo — crossed the other way: a net gain of 18 boundaries.
Over those same twenty years, the combined Democratic margin moved from D+29.0 to D+34.6. Five and a half points.
Both numbers are correct, and they are not the same story. One counts how many boundaries a coalition crossed. The other counts how many ballots it carried once inside them. The distance between those two measures is what this record is about, and almost everything else here is an elaboration of it.
Call the first reach and the second weight. A map shows reach. Only a ledger shows weight.
Ninety-one places, one field
Every symbol is one Census place, drawn with an area proportional to its 2024 population. Nothing here is averaged: the map shows where the ballots are, not how much land a boundary covers.
Filled blue: Democratic all six. Filled red: Republican all six. Hollow: mixed history.
Fifty-nine of these places voted Democratic in all six elections; eight voted Republican in all six; 24 have mixed histories.
Six passes through the same ground
The cohort is fixed before it is measured. The threshold — 250,000 residents on the 2020–2024 American Community Survey — is applied once, and the same 91 places are then followed backward through all six elections. The geography does not shift when the politics does. What changes across these six passes is everything except the boundaries: candidates, coalitions, turnout, and the country around them.
One electorate, six elections
The pooled all-ballot margin across all 91 places, against the national margin in the same elections. The combined result jumped 10.7 points in 2008, held a plateau through 2020, and fell 7.7 points in 2024 without returning to where it started.
The six elections, in full
| Election | Democratic | Votes | Republican | Votes | Other | Total | Margin | Cities D–R |
|---|---|---|---|---|---|---|---|---|
| 2004 | 12757951 | 12,757,951 | 6974353 | 6,974,353 | 193,562 | 19,925,866 | D+29.0 | 60–31 |
| 2008 | 15048366 | 15,048,366 | 6447297 | 6,447,297 | 195,902 | 21,691,565 | D+39.7 | 74–17 |
| 2012 | 14685057 | 14,685,057 | 6237083 | 6,237,083 | 386,516 | 21,308,656 | D+39.6 | 72–19 |
| 2016 | 15587108 | 15,587,108 | 5902685 | 5,902,685 | 1,211,091 | 22,700,884 | D+42.7 | 74–17 |
| 2020 | 18388177 | 18,388,177 | 7329677 | 7,329,677 | 450,243 | 26,168,097 | D+42.3 | 82–9 |
| 2024 | 16153020 | 16,153,020 | 7712236 | 7,712,236 | 555,162 | 24,420,418 | D+34.6 | 78–13 |
2004 sets the original outline. John Kerry carries 60 places and loses 31, including Phoenix by R+1.9 and San Antonio by R+4.8. The pooled result is D+29.0 while the national popular vote is R+2.5 — the first of two elections in which this geography and the country disagree about the winner.
2008 is the one large break in the series. The pooled margin widens 10.6 points and the Democratic count jumps from 60 to 74. Fourteen places change hands at once. No later election moves the combined margin even half that far.
2008 through 2020 is a plateau, not a climb. The margin sits between D+39.6 and D+42.7 for four consecutive elections — a range of 3.0 points across twelve years. The Democratic city count keeps rising during the plateau, reaching 82 in 2020, which is precisely the divergence this record is built to show. Reach kept expanding while weight held nearly still.
2024 breaks the plateau without restoring 2004. The margin falls 7.7 points to D+34.6, its lowest since 2004, and the Democratic count falls from 82 to 78. The cohort remains 5.6 points more Democratic than it was twenty years earlier, and it again disagrees with a country that voted R+1.5.
One more measure travels with these: the cohort supplied between 16.3% and 16.6% of all national presidential ballots in every election from 2004 through 2020, and 15.7% in 2024. Its share of the country moved less than three-tenths of a point across those sixteen years, then fell by eight-tenths in one election.
The core and the hinge
Sorting the 91 places by their six-election histories does something a map cannot. It separates the places that were never in question from the places that decided the outline.
59 places voted Democratic all six times. 8 voted Republican all six times. The remaining 24 produced nine other distinct sequences between them.
Those three groups are not three equal thirds of anything.
- The 59 always-Democratic places hold 75.4% of the cohort’s population — 47,377,459 residents. As a pooled electorate they went from D+41.6 in 2004 to D+44.7 in 2024. Over twenty years, through six elections, they moved 3.0 points.
- The 24 mixed-history places hold 19.2% — 12,071,356 residents. They went from R+11.8 in 2004 to D+7.2 in 2024, a 19.0-point crossing, and every one of the 18 added Democratic wins came from inside this group.
- The 8 always-Republican places hold 5.4% — 3,369,202 residents. They went from R+27.7 to R+9.7, moving 18.0 points toward the Democratic candidate without a single one of them crossing.
This is the mechanism behind the paradox, and it is almost arithmetic. Three-quarters of the cohort’s population was already inside the always-Democratic core in 2004. Nothing the following two decades did to the map could add that population again, because it was never available to be added. The expansion had to come from the 19.2%, and it did.
The core carried the electorate. The hinge redrew its outline.
The always-Republican edge deserves its own sentence, because a winner map erases it completely. Eight places voted Republican six times in a row and look identical in every one of those elections. Inside them, the margin closed by 18.0 points. Colorado Springs went from R+30.6 to R+2.0. Oklahoma City went from R+26.9 to R+2.9. Neither ever changed color, and neither is the same place it was.
Three electorates inside one
The width of each band is its share of the cohort’s 62,818,017 residents. The markers are where that group stood in 2004 and where it stood in 2024. The core holds three-quarters of the population and barely moved; the hinge holds a fifth and crossed.
- the core
Democratic all six times
59 places · 47,377,459 residents · 75.4% of the cohort
- 2004
- D+41.6
- 2024
- D+44.7
- Change
- 3.1 pts toward D
- the hinge
Mixed history
24 places · 12,071,356 residents · 19.2% of the cohort
- 2004
- R+11.8
- 2024
- D+7.2
- Change
- 19.0 pts toward D
- the edge
Republican all six times
8 places · 3,369,202 residents · 5.4% of the cohort
- 2004
- R+27.7
- 2024
- R+9.7
- Change
- 18.0 pts toward D
Bands are population shares, not vote shares. Each margin is the group’s summed ballots, not an average of its cities’ margins.
Cities with memory
Read each sequence from left to right, 2004 to 2024. D means the Democratic candidate carried the place; R means the Republican candidate did. Six letters is the whole political memory of a city in this record — and 11 sequences hold all 91 places, with 67 of them sitting in the two unbroken buckets.
Every place, every election
Each row is one Census place and each column one election, read left to right from 2004 to 2024. The rows are grouped into the 11 sequences the cohort actually produced.
Showing 91 of 91 places across 11 sequences.
| Place | '04 | '08 | '12 | '16 | '20 | '24 | Population | 2024 | 2020 → 2024 |
|---|---|---|---|---|---|---|---|---|---|
| New YorkNY | D | D | D | D | D | D | 8,483,844 | D+38.1 | moved 15.2 points toward the Republican candidate |
| Los AngelesCA | D | D | D | D | D | D | 3,857,263 | D+43.6 | moved 11.5 points toward the Republican candidate |
| ChicagoIL | D | D | D | D | D | D | 2,711,226 | D+57.7 | moved 9.0 points toward the Republican candidate |
| HoustonTX | D | D | D | D | D | D | 2,328,253 | D+24.0 | moved 7.9 points toward the Republican candidate |
| PhiladelphiaPA | D | D | D | D | D | D | 1,579,706 | D+58.6 | moved 5.0 points toward the Republican candidate |
| San DiegoCA | D | D | D | D | D | D | 1,389,526 | D+33.6 | moved 5.8 points toward the Republican candidate |
| DallasTX | D | D | D | D | D | D | 1,307,930 | D+30.2 | moved 11.2 points toward the Republican candidate |
| San JoseCA | D | D | D | D | D | D | 990,138 | D+35.9 | moved 8.4 points toward the Republican candidate |
| AustinTX | D | D | D | D | D | D | 979,539 | D+50.1 | moved 5.3 points toward the Republican candidate |
| Columbus, OHOH | D | D | D | D | D | D | 914,802 | D+38.1 | moved 5.1 points toward the Republican candidate |
| CharlotteNC | D | D | D | D | D | D | 903,844 | D+39.9 | moved 3.4 points toward the Republican candidate |
| IndianapolisIN | D | D | D | D | D | D | 885,860 | D+28.8 | moved 1.8 points toward the Republican candidate |
| San FranciscoCA | D | D | D | D | D | D | 830,235 | D+64.8 | moved 7.8 points toward the Republican candidate |
| SeattleWA | D | D | D | D | D | D | 754,195 | D+78.1 | moved 1.3 points toward the Republican candidate |
| DenverCO | D | D | D | D | D | D | 718,877 | D+56.0 | moved 5.6 points toward the Republican candidate |
| NashvilleTN | D | D | D | D | D | D | 690,130 | D+28.6 | moved 4.8 points toward the Republican candidate |
| WashingtonDC | D | D | D | D | D | D | 681,294 | D+83.8 | moved 2.9 points toward the Republican candidate |
| El PasoTX | D | D | D | D | D | D | 680,130 | D+17.7 | moved 18.2 points toward the Republican candidate |
| BostonMA | D | D | D | D | D | D | 666,442 | D+56.4 | moved 10.7 points toward the Republican candidate |
| Las VegasNV | D | D | D | D | D | D | 660,400 | D+4.7 | moved 5.9 points toward the Republican candidate |
| Portland, OROR | D | D | D | D | D | D | 641,165 | D+71.2 | moved 0.7 points toward the Democratic candidate |
| DetroitMI | D | D | D | D | D | D | 638,530 | D+81.7 | moved 7.3 points toward the Republican candidate |
| MemphisTN | D | D | D | D | D | D | 618,980 | D+51.7 | moved 3.7 points toward the Republican candidate |
| BaltimoreMD | D | D | D | D | D | D | 573,243 | D+73.0 | moved 4.6 points toward the Republican candidate |
| MilwaukeeWI | D | D | D | D | D | D | 566,973 | D+56.4 | moved 2.7 points toward the Republican candidate |
| AlbuquerqueNM | D | D | D | D | D | D | 562,218 | D+23.4 | moved 3.1 points toward the Republican candidate |
| TucsonAZ | D | D | D | D | D | D | 547,073 | D+29.6 | moved 4.9 points toward the Republican candidate |
| SacramentoCA | D | D | D | D | D | D | 528,706 | D+45.6 | moved 7.1 points toward the Republican candidate |
| Kansas City, MOMO | D | D | D | D | D | D | 510,612 | D+33.8 | moved 5.1 points toward the Republican candidate |
| AtlantaGA | D | D | D | D | D | D | 505,268 | D+65.8 | moved 0.8 points toward the Republican candidate |
| RaleighNC | D | D | D | D | D | D | 481,031 | D+40.6 | moved 2.3 points toward the Republican candidate |
| MiamiFL | D | D | D | D | D | D | 459,745 | D+0.7 | moved 18.0 points toward the Republican candidate |
| Long BeachCA | D | D | D | D | D | D | 455,548 | D+40.2 | moved 6.9 points toward the Republican candidate |
| OaklandCA | D | D | D | D | D | D | 439,418 | D+76.2 | moved 7.8 points toward the Republican candidate |
| MinneapolisMN | D | D | D | D | D | D | 427,246 | D+73.3 | moved 1.8 points toward the Republican candidate |
| TampaFL | D | D | D | D | D | D | 401,618 | D+11.8 | moved 12.8 points toward the Republican candidate |
| Aurora, COCO | D | D | D | D | D | D | 394,432 | D+23.1 | moved 7.8 points toward the Republican candidate |
| New OrleansLA | D | D | D | D | D | D | 371,853 | D+67.0 | moved 1.1 points toward the Republican candidate |
| ClevelandOH | D | D | D | D | D | D | 366,097 | D+56.2 | moved 4.9 points toward the Republican candidate |
| Urban HonoluluHI | D | D | D | D | D | D | 345,482 | D+35.0 | moved 2.5 points toward the Republican candidate |
| StocktonCA | D | D | D | D | D | D | 322,326 | D+16.7 | moved 17.3 points toward the Republican candidate |
| OrlandoFL | D | D | D | D | D | D | 319,758 | D+26.7 | moved 9.0 points toward the Republican candidate |
| Santa AnaCA | D | D | D | D | D | D | 312,534 | D+23.7 | moved 15.5 points toward the Republican candidate |
| CincinnatiOH | D | D | D | D | D | D | 311,224 | D+53.5 | moved 2.6 points toward the Republican candidate |
| NewarkNJ | D | D | D | D | D | D | 310,178 | D+57.7 | moved 17.4 points toward the Republican candidate |
| St. PaulMN | D | D | D | D | D | D | 307,284 | D+57.7 | moved 3.4 points toward the Republican candidate |
| PittsburghPA | D | D | D | D | D | D | 304,759 | D+55.4 | moved 1.6 points toward the Republican candidate |
| GreensboroNC | D | D | D | D | D | D | 301,198 | D+41.9 | moved 0.8 points toward the Republican candidate |
| Jersey CityNJ | D | D | D | D | D | D | 294,078 | D+48.8 | moved 15.2 points toward the Republican candidate |
| DurhamNC | D | D | D | D | D | D | 291,467 | D+66.0 | moved 1.2 points toward the Republican candidate |
| St. LouisMO | D | D | D | D | D | D | 288,512 | D+64.6 | moved 1.6 points toward the Republican candidate |
| North Las VegasNV | D | D | D | D | D | D | 278,595 | D+21.9 | moved 8.8 points toward the Republican candidate |
| MadisonWI | D | D | D | D | D | D | 278,001 | D+67.9 | moved 1.8 points toward the Republican candidate |
| BuffaloNY | D | D | D | D | D | D | 276,854 | D+52.9 | moved 8.0 points toward the Republican candidate |
| Chula VistaCA | D | D | D | D | D | D | 276,375 | D+16.9 | moved 14.2 points toward the Republican candidate |
| RenoNV | D | D | D | D | D | D | 273,212 | D+12.1 | moved 3.8 points toward the Republican candidate |
| ToledoOH | D | D | D | D | D | D | 267,463 | D+30.0 | moved 4.2 points toward the Republican candidate |
| St. PetersburgFL | D | D | D | D | D | D | 262,732 | D+20.2 | moved 5.8 points toward the Republican candidate |
| Winston-SalemNC | D | D | D | D | D | D | 252,037 | D+33.3 | moved 1.0 points toward the Republican candidate |
| PhoenixAZ | R | D | D | D | D | D | 1,642,323 | D+14.1 | moved 6.5 points toward the Republican candidate |
| San AntonioTX | R | D | D | D | D | D | 1,479,835 | D+16.7 | moved 8.8 points toward the Republican candidate |
| Fort WorthTX | R | D | D | D | D | D | 963,194 | D+3.0 | moved 8.3 points toward the Republican candidate |
| FresnoCA | R | D | D | D | D | D | 545,970 | D+8.2 | moved 12.9 points toward the Republican candidate |
| OmahaNE | R | D | D | D | D | D | 488,837 | D+16.8 | moved 0.1 points toward the Republican candidate |
| AnaheimCA | R | D | D | D | D | D | 344,521 | D+9.1 | moved 10.3 points toward the Republican candidate |
| Lexington-FayetteKY | R | D | D | D | D | D | 323,725 | D+18.1 | moved 2.7 points toward the Republican candidate |
| RiversideCA | R | D | D | D | D | D | 319,069 | D+7.2 | moved 12.3 points toward the Republican candidate |
| IrvineCA | R | D | D | D | D | D | 311,690 | D+21.4 | moved 9.3 points toward the Republican candidate |
| LincolnNE | R | D | D | D | D | D | 294,856 | D+10.1 | moved 3.1 points toward the Republican candidate |
| IrvingTX | R | D | D | D | D | D | 256,492 | D+9.2 | moved 15.7 points toward the Republican candidate |
| Oklahoma CityOK | R | R | R | R | R | R | 697,125 | R+2.9 | moved 1.4 points toward the Republican candidate |
| MesaAZ | R | R | R | R | R | R | 511,764 | R+11.7 | moved 2.2 points toward the Republican candidate |
| Colorado SpringsCO | R | R | R | R | R | R | 487,887 | R+2.0 | moved 1.5 points toward the Democratic candidate |
| BakersfieldCA | R | R | R | R | R | R | 411,986 | R+15.5 | moved 12.4 points toward the Republican candidate |
| WichitaKS | R | R | R | R | R | R | 397,945 | R+4.0 | moved 2.1 points toward the Republican candidate |
| Corpus ChristiTX | R | R | R | R | R | R | 317,419 | R+9.8 | moved 8.1 points toward the Republican candidate |
| GilbertAZ | R | R | R | R | R | R | 280,262 | R+15.9 | moved 3.5 points toward the Republican candidate |
| LubbockTX | R | R | R | R | R | R | 264,814 | R+33.0 | moved 7.9 points toward the Republican candidate |
| LouisvilleKY | R | R | R | R | D | D | 631,818 | D+0.2 | moved 3.4 points toward the Republican candidate |
| Virginia BeachVA | R | R | R | R | D | D | 456,349 | D+2.6 | moved 2.8 points toward the Republican candidate |
| PlanoTX | R | R | R | R | D | D | 290,594 | D+3.1 | moved 5.7 points toward the Republican candidate |
| AnchorageAK | R | R | R | R | D | D | 288,976 | D+1.4 | moved 0.3 points toward the Democratic candidate |
| Arlington, TXTX | R | R | R | D | D | D | 397,742 | D+8.4 | moved 5.0 points toward the Republican candidate |
| ChandlerAZ | R | R | R | D | D | D | 280,136 | D+4.4 | moved 4.5 points toward the Republican candidate |
| TulsaOK | R | R | R | R | D | R | 413,794 | R+1.4 | moved 6.8 points toward the Republican candidate |
| Glendale, AZAZ | R | R | R | R | D | R | 252,833 | R+2.5 | moved 5.6 points toward the Republican candidate |
| LaredoTX | D | D | D | D | D | R | 257,619 | R+1.5 | moved 25.3 points toward the Republican candidate |
| ChesapeakeVA | R | D | D | R | D | D | 252,583 | D+3.8 | moved 2.7 points toward the Republican candidate |
| Fort WayneIN | R | D | R | R | D | D | 268,589 | D+1.8 | moved 1.5 points toward the Republican candidate |
| HendersonNV | R | D | R | R | R | R | 332,141 | R+8.3 | moved 2.8 points toward the Republican candidate |
| JacksonvilleFL | R | R | R | D | D | R | 977,670 | R+0.2 | moved 5.4 points toward the Republican candidate |
The interesting histories are in the remaining 24, and they are not variations on one pattern.
Plano, Texas, is the longest crossing in the cohort. It gave George W. Bush R+37.5 in 2004 and Kamala Harris D+3.1 in 2024 — 40.7 points of movement, more than any other place here, arriving at its first Democratic result only in 2020.
Laredo is the only city in the record that runs the other way. It is the sole DDDDDR: five consecutive Democratic wins ending in a Republican one. Laredo gave Kerry D+14.0, climbed to D+53.1 in 2012 and D+50.6 in 2016, fell to D+23.7 in 2020, and finished at R+1.5. No other place combines that history with that ending.
Henderson, Nevada, is a single interruption. It voted Republican in 2004, gave Barack Obama D+4.1 in 2008, and returned Republican results in all four elections since. One election out of six, and the sequence RDRRRR belongs to Henderson alone.
Chesapeake and Fort Wayne crossed, uncrossed, and crossed again. Chesapeake reads RDDRDD — Democratic in 2008 and 2012, Republican in 2016, Democratic again in 2020 and 2024. Fort Wayne reads RDRRDD, Democratic in 2008, Republican for two elections, then Democratic twice. Neither is a line bending in one direction. Both are records of a place that has changed its mind more than once.
Jacksonville barely moved and changed color twice. Consolidated with Duval County in the 1960s, its place boundary now covers 747 of the county’s 763 square miles — the second-largest land area in this cohort, behind only Anchorage. It went D+0.1 in 2016 — 580 votes — then D+5.2 in 2020, then R+0.2 in 2024, a margin of 875 votes out of 443,252. Three elections, two changes of color, and never more than 5.4 points between any two of them.
Anchorage crossed late and quietly. It was R+23.2 in 2004 and has moved toward the Democratic candidate in every election since: R+16.0, R+9.9, R+5.3, then D+1.1 in 2020 and D+1.4 in 2024. It is also the one place in this record that required a documented exception, which is a boundary story rather than an electoral one.
The movement hidden inside unchanged colors
Four places changed winner in 2024: Jacksonville, Tulsa, Laredo, Glendale, AZ. Four out of 91.
The pooled electorate moved 7.7 points toward the Republican candidate.
Those two facts describe the same election, and only one of them is visible on a winner map. Compared with 2020, the Democratic total fell by 2,235,157 votes and the Republican total rose by 382,559, while total ballots fell by 1,747,679. Almost all of that movement happened inside boundaries that kept their color.
The largest movements were not the flips. Nine places moved at least 15 points toward the Republican candidate: Laredo by 25.3, El Paso by 18.2, Miami by 18.0, Newark by 17.4, Stockton by 17.3, Irving by 15.7, Santa Ana by 15.5, and New York and Jersey City by 15.2 each. Eight of those nine remained Democratic. On a map of winners they are unchanged.
The raw masses are larger still where the margins are safest. New York cast 393,270 fewer Democratic votes than in 2020 and 149,090 more Republican votes, and finished at D+38.1 — a result no one would call close. Los Angeles cast 246,035 fewer Democratic votes and 27,112 more Republican votes, and finished at D+43.6. Between them, two cities that changed nothing on the map account for 639,305 of the cohort’s 2,235,157-vote Democratic decline.
The movement was near-universal but not uniform. 88 of the 91 places moved toward the Republican candidate; 3 moved the other way, and all three are small movements in places that had already moved a great deal: Colorado Springs by 1.5 points, Portland by 0.7, and Anchorage by 0.3. A second group barely moved at all — Atlanta and Greensboro by 0.8 points, Winston-Salem by 1.0, New Orleans by 1.1, Durham by 1.2, Seattle by 1.3.
Movement, ranked — and the four that changed hands
Each bar is one place’s change in all-ballot margin between 2020 and 2024. Eighty-eight of the 91 moved toward the Republican candidate. Four changed winner; the other 84 moved without their colour changing at all.
| Place | 2020 | 2024 | Change | Movement |
|---|---|---|---|---|
| Laredochanged winner | D+23.7 | R+1.5 | moved 25.3 points toward the Republican candidate | |
| El Paso | D+36.0 | D+17.7 | moved 18.2 points toward the Republican candidate | |
| Miami | D+18.7 | D+0.7 | moved 18.0 points toward the Republican candidate | |
| Newark | D+75.1 | D+57.7 | moved 17.4 points toward the Republican candidate | |
| Stockton | D+34.0 | D+16.7 | moved 17.3 points toward the Republican candidate | |
| Irving | D+24.8 | D+9.2 | moved 15.7 points toward the Republican candidate | |
| Santa Ana | D+39.2 | D+23.7 | moved 15.5 points toward the Republican candidate | |
| New York | D+53.2 | D+38.1 | moved 15.2 points toward the Republican candidate | |
| Jersey City | D+64.0 | D+48.8 | moved 15.2 points toward the Republican candidate | |
| Chula Vista | D+31.0 | D+16.9 | moved 14.2 points toward the Republican candidate | |
| Fresno | D+21.1 | D+8.2 | moved 12.9 points toward the Republican candidate | |
| Tampa | D+24.6 | D+11.8 | moved 12.8 points toward the Republican candidate | |
| Bakersfield | R+3.1 | R+15.5 | moved 12.4 points toward the Republican candidate | |
| Riverside | D+19.5 | D+7.2 | moved 12.3 points toward the Republican candidate | |
| Los Angeles | D+55.1 | D+43.6 | moved 11.5 points toward the Republican candidate | |
| Dallas | D+41.4 | D+30.2 | moved 11.2 points toward the Republican candidate | |
| Boston | D+67.2 | D+56.4 | moved 10.7 points toward the Republican candidate | |
| Anaheim | D+19.4 | D+9.1 | moved 10.3 points toward the Republican candidate | |
| Irvine | D+30.8 | D+21.4 | moved 9.3 points toward the Republican candidate | |
| Chicago | D+66.7 | D+57.7 | moved 9.0 points toward the Republican candidate | |
| Orlando | D+35.7 | D+26.7 | moved 9.0 points toward the Republican candidate | |
| San Antonio | D+25.5 | D+16.7 | moved 8.8 points toward the Republican candidate | |
| North Las Vegas | D+30.7 | D+21.9 | moved 8.8 points toward the Republican candidate | |
| San Jose | D+44.3 | D+35.9 | moved 8.4 points toward the Republican candidate | |
| Fort Worth | D+11.4 | D+3.0 | moved 8.3 points toward the Republican candidate | |
| Corpus Christi | R+1.7 | R+9.8 | moved 8.1 points toward the Republican candidate | |
| Buffalo | D+60.8 | D+52.9 | moved 8.0 points toward the Republican candidate | |
| Houston | D+31.9 | D+24.0 | moved 7.9 points toward the Republican candidate | |
| Lubbock | R+25.1 | R+33.0 | moved 7.9 points toward the Republican candidate | |
| San Francisco | D+72.6 | D+64.8 | moved 7.8 points toward the Republican candidate | |
| Oakland | D+84.0 | D+76.2 | moved 7.8 points toward the Republican candidate | |
| Aurora, CO | D+30.9 | D+23.1 | moved 7.8 points toward the Republican candidate | |
| Detroit | D+89.0 | D+81.7 | moved 7.3 points toward the Republican candidate | |
| Sacramento | D+52.7 | D+45.6 | moved 7.1 points toward the Republican candidate | |
| Long Beach | D+47.1 | D+40.2 | moved 6.9 points toward the Republican candidate | |
| Tulsachanged winner | D+5.4 | R+1.4 | moved 6.8 points toward the Republican candidate | |
| Phoenix | D+20.7 | D+14.1 | moved 6.5 points toward the Republican candidate | |
| Las Vegas | D+10.6 | D+4.7 | moved 5.9 points toward the Republican candidate | |
| San Diego | D+39.4 | D+33.6 | moved 5.8 points toward the Republican candidate | |
| St. Petersburg | D+26.0 | D+20.2 | moved 5.8 points toward the Republican candidate | |
| Plano | D+8.9 | D+3.1 | moved 5.7 points toward the Republican candidate | |
| Denver | D+61.5 | D+56.0 | moved 5.6 points toward the Republican candidate | |
| Glendale, AZchanged winner | D+3.1 | R+2.5 | moved 5.6 points toward the Republican candidate | |
| Jacksonvillechanged winner | D+5.2 | R+0.2 | moved 5.4 points toward the Republican candidate | |
| Austin | D+55.4 | D+50.1 | moved 5.3 points toward the Republican candidate | |
| Columbus, OH | D+43.2 | D+38.1 | moved 5.1 points toward the Republican candidate | |
| Kansas City, MO | D+38.9 | D+33.8 | moved 5.1 points toward the Republican candidate | |
| Philadelphia | D+63.5 | D+58.6 | moved 5.0 points toward the Republican candidate | |
| Arlington, TX | D+13.4 | D+8.4 | moved 5.0 points toward the Republican candidate | |
| Tucson | D+34.5 | D+29.6 | moved 4.9 points toward the Republican candidate | |
| Cleveland | D+61.1 | D+56.2 | moved 4.9 points toward the Republican candidate | |
| Nashville | D+33.4 | D+28.6 | moved 4.8 points toward the Republican candidate | |
| Baltimore | D+77.6 | D+73.0 | moved 4.6 points toward the Republican candidate | |
| Chandler | D+9.0 | D+4.4 | moved 4.5 points toward the Republican candidate | |
| Toledo | D+34.2 | D+30.0 | moved 4.2 points toward the Republican candidate | |
| Reno | D+15.9 | D+12.1 | moved 3.8 points toward the Republican candidate | |
| Memphis | D+55.3 | D+51.7 | moved 3.7 points toward the Republican candidate | |
| Gilbert | R+12.4 | R+15.9 | moved 3.5 points toward the Republican candidate | |
| Charlotte | D+43.2 | D+39.9 | moved 3.4 points toward the Republican candidate | |
| Louisville | D+3.6 | D+0.2 | moved 3.4 points toward the Republican candidate | |
| St. Paul | D+61.2 | D+57.7 | moved 3.4 points toward the Republican candidate | |
| Albuquerque | D+26.5 | D+23.4 | moved 3.1 points toward the Republican candidate | |
| Lincoln | D+13.3 | D+10.1 | moved 3.1 points toward the Republican candidate | |
| Washington | D+86.8 | D+83.8 | moved 2.9 points toward the Republican candidate | |
| Virginia Beach | D+5.4 | D+2.6 | moved 2.8 points toward the Republican candidate | |
| Henderson | R+5.5 | R+8.3 | moved 2.8 points toward the Republican candidate | |
| Milwaukee | D+59.0 | D+56.4 | moved 2.7 points toward the Republican candidate | |
| Lexington-Fayette | D+20.8 | D+18.1 | moved 2.7 points toward the Republican candidate | |
| Chesapeake | D+6.4 | D+3.8 | moved 2.7 points toward the Republican candidate | |
| Cincinnati | D+56.1 | D+53.5 | moved 2.6 points toward the Republican candidate | |
| Urban Honolulu | D+37.6 | D+35.0 | moved 2.5 points toward the Republican candidate | |
| Raleigh | D+42.8 | D+40.6 | moved 2.3 points toward the Republican candidate | |
| Mesa | R+9.5 | R+11.7 | moved 2.2 points toward the Republican candidate | |
| Wichita | R+1.9 | R+4.0 | moved 2.1 points toward the Republican candidate | |
| Indianapolis | D+30.6 | D+28.8 | moved 1.8 points toward the Republican candidate | |
| Minneapolis | D+75.1 | D+73.3 | moved 1.8 points toward the Republican candidate | |
| Madison | D+69.7 | D+67.9 | moved 1.8 points toward the Republican candidate | |
| Pittsburgh | D+57.0 | D+55.4 | moved 1.6 points toward the Republican candidate | |
| St. Louis | D+66.2 | D+64.6 | moved 1.6 points toward the Republican candidate | |
| Fort Wayne | D+3.3 | D+1.8 | moved 1.5 points toward the Republican candidate | |
| Oklahoma City | R+1.5 | R+2.9 | moved 1.4 points toward the Republican candidate | |
| Seattle | D+79.3 | D+78.1 | moved 1.3 points toward the Republican candidate | |
| Durham | D+67.2 | D+66.0 | moved 1.2 points toward the Republican candidate | |
| New Orleans | D+68.2 | D+67.0 | moved 1.1 points toward the Republican candidate | |
| Winston-Salem | D+34.3 | D+33.3 | moved 1.0 points toward the Republican candidate | |
| Atlanta | D+66.6 | D+65.8 | moved 0.8 points toward the Republican candidate | |
| Greensboro | D+42.7 | D+41.9 | moved 0.8 points toward the Republican candidate | |
| Omaha | D+16.9 | D+16.8 | moved 0.1 points toward the Republican candidate | |
| Anchorage | D+1.1 | D+1.4 | moved 0.3 points toward the Democratic candidate | |
| Portland, OR | D+70.5 | D+71.2 | moved 0.7 points toward the Democratic candidate | |
| Colorado Springs | R+3.5 | R+2.0 | moved 1.5 points toward the Democratic candidate |
This is the limit of what the record can say, and it is worth saying plainly. These figures establish where ballots were cast, in what volume, and for whom. They do not identify individual voters, and they cannot separate a person who changed a vote from a person who did not cast one. A city that lost 393,270 Democratic votes and gained 149,090 Republican votes has told you the shape of a change, not its cause.
What it does establish is that a winner map is a low-resolution instrument. A boundary can hold its color through an election that moved millions of votes inside it.
The people inside the ledger
The same rule that governs the votes governs the population: sum the counts first, then divide. No city percentage is averaged into any other, and no median is pooled, because a median cannot be reconstructed from 91 published medians without the distributions underneath them.
The people inside the ledger
Every figure is a sum of counts, divided by its own universe. No city percentage is averaged into another, and no median is pooled.
| Measure | Summed count | Share | |
|---|---|---|---|
| Voting-age population | 47,929,304 | 76.3% | |
| Citizen voting-age population | 43,047,974 | 68.5% | |
| Households | 25,192,963 | — | |
| Age 18–29 | 11,586,133 | 18.4% | |
| Age 65 or older | 8,878,194 | 14.1% | |
| Foreign-born | 13,934,859 | 22.2% | |
| Non-Hispanic white◆ | 23,249,624 | 37.0% | |
| Hispanic or Latino (any race)◆ | 18,275,434 | 29.1% | |
| Black or African American alone◆ | 12,166,900 | 19.4% | |
| Asian alone◆ | 6,048,933 | 9.6% | |
| American Indian and Alaska Native alone◆ | 619,998 | 1.0% | |
| Two or more races◆ | 10,379,788 | 16.5% | |
| Speaks a language other than English at home, age 5+ | 20,447,356 | 34.6% |
◆ Overlapping categories. Hispanic or Latino is an ethnicity and the race-alone rows include Hispanic residents, so these rows are valid counts but not slices of one composition. The language share is measured against the 59,153,083 residents age five and over, not the total population. Source: U.S. Census Bureau, 2020–2024 ACS five-year estimates and the 2024 CVAP special tabulation.
Read as scale rather than as proportion, the ledger holds 43,047,974 citizen voting-age residents and 25,192,963 households. It holds 13,934,859 people born outside the United States and 20,447,356 people over the age of five who speak a language other than English at home. Its 18–29 population exceeds its 65-and-older population by 2,707,939.
None of these figures describes a typical city, and none of them describes how anyone voted. They are summed people, living inside a constructed geography, counted once each.
The boundaries are the instrument
“City” here means one specific thing: a Census place on 2020 Census place boundaries. That definition is the reason this record can exist, and it is also the reason it has edges worth stating out loud.
The cohort includes ordinary incorporated cities, one town (Gilbert, Arizona), one urban county government (Lexington-Fayette), the District of Columbia, three consolidated-government balances (Indianapolis, Nashville, and Louisville), one municipality (Anchorage), and exactly one census-designated place — Urban Honolulu, which has no municipal government of its own at all. These are not metropolitan areas, urban areas, or counties gathered under a loose definition of “city.”
The threshold has two edges, and both are narrow. Winston-Salem is the smallest place inside the cohort at 252,037 residents, clearing 250,000 by 2,037 people. Garland, TX, is the largest place outside it at 246,844 — short by 3,156. Garland’s absence changes nothing about the argument and everything about the principle: the line is drawn once, by a rule, and then it is not moved.
Applying present-day boundaries backward is a deliberate choice with a real cost. It holds the spatial unit constant so that six elections are measured through the same aperture, and in exchange it does not reproduce each city’s historical limits. A 2004 result here is the 2004 vote inside the 2020 boundary, not the vote inside the boundary as it stood in 2004.
The place results are also estimates. Akashic allocates precinct returns to Census blocks and sums those blocks inside place boundaries. They support comparison between places and pooled totals across them. They are not certified municipal canvasses, and nothing here should be cited as one.
What the record holds
The Ninety-One will not meet. No authority totals them, no returning officer certifies them, and after each election their results go back into 91 separate drawers. The electorate assembled here is real in the sense that every ballot in it was really cast, and unreal in the sense that no one has ever been asked to belong to it.
What the joined record holds is a distinction that separate records cannot show. Between 2004 and 2024 the Democratic coalition crossed 18 more of these boundaries and gained 5.6 points of pooled margin, because three-quarters of the population it needed was already inside the boundaries it already held. In 2024 it lost 7.7 points and four cities, because millions of votes moved in places where the color never changed.
A map records where a coalition arrived. A ledger records what it was carrying. The Ninety-One have been keeping both, in 91 separate drawers, the entire time.
Method, briefly
The cohort is every Census place in Akashic’s demographics_block sourced to the 2020–2024 ACS five-year estimates with total_population >= 250000 — 91 places on 2020 Census place boundaries. The threshold is applied once and the same cohort is followed backward through all six elections. Counts are summed before shares are calculated; city percentages, margins, medians and ranks are never averaged, and no pooled median age or median household income is reported because published medians cannot be combined without the underlying distributions.
Presidential results come from Akashic’s canonical Census-place presidential history for 2004, 2008, 2012, 2016, 2020 and 2024, with the documented coextensive Anchorage 2004 backfill from public/data/per_county/02020.json. Democratic, Republican, other and total ballots are preserved on every row, and every margin shown is an all-ballot margin: 100 × (Democratic − Republican) ÷ total. Place results are modeled from precinct returns allocated to 2020 Census place geography, not official municipal canvasses. National comparison figures come from Akashic’s national presidential series.
Demographics: U.S. Census Bureau, 2020–2024 ACS five-year estimates and the 2024 CVAP special tabulation. Election source layer: MIT Election Data and Science Lab, VEST and state precinct returns, transformed by Akashic. Data snapshot: 2026-08-12.