The 7,197-Vote Corridor
THE
7,197-VOTE
CORRIDOR
Eric Adams entered Round 5 ahead of Kathryn Garcia by 103,922 votes. Three transfer pools narrowed that lead almost to zero—without ever reversing it.
93.1% of the Round 5 gap closed
How can a six-figure lead nearly vanish without changing hands?
When a candidate was eliminated, ballots moved to the next continuing choice or became inactive. Follow those transfers to see how Garcia gained on Adams and why the remaining gap was just large enough to keep him ahead.
942,031 ballots through the final three eliminations
The count begins at Round 5. Read left to right; select a pool below or click a transfer ribbon to keep that transfer saturated while the others recede.
The first fan records the Round 5 balances. Later ribbons are the Board of Elections’ published transfers. The three-candidate joint elimination remains combined because the certified recap does not publish separate destinations for it.
Maya Wiley eliminated
Wiley’s transfer brought Garcia within reach.
Every late pool sent more ballots to Garcia.
Garcia gained more than Adams in all three transfers. Wiley’s much larger pool accounted for most of the change.
One pool erased 77.5% of the starting deficit.
Garcia received 130,384 of Wiley’s 254,728 ballots; Adams received 49,856. The gap fell from 87,725 to 7,197.
Many ballots had no continuing choice.
The inactive lane grows at every transfer. It records ballots without a continuing valid choice, not support for either finalist.
The starting lead still mattered.
Garcia added nearly twice as many late-round ballots as Adams. That extraordinary gain still fell 7,197 votes short because the transfer sequence began with Adams more than 100,000 ahead.
A conservation check on the certified recap
This view transcribes the official NYC Board of Elections ranked-choice rounds beginning at Round 5. Each elimination pool sums exactly to its published source total. At the finish, Adams (404,513), Garcia (397,316), and inactive ballots (140,202) sum back to all 942,031 ballots in the opening ledger.
The official recap combines McGuire, Morales and Stringer in one transfer. We keep that group together because it does not report the three candidates’ destinations separately.
How the chart follows a transfer
Each band holds a candidate’s tally until elimination. The outgoing ribbons then divide that tally among the continuing candidates and inactive ballots. Their widths let you follow the same votes through successive rounds.
import { ProcessSankey } from "semiotic" <ProcessSankey nodes={nodes} edges={certifiedTransfers} domain={[4, 7.6]} axisTicks={roundTicks} nodeLabel="label" colorBy="category" colorScheme={candidateColors} pairing="temporal" packing="reuse" laneOrder="crossing-min+inside-out" maxValueScale={0.00038} lanePlacement="hug" ribbonLane="both" lifetimeMode="half" showLaneRails edgeOpacity={(edge) => edge.poolId === selectedPoolId ? 0.92 : edge.poolId ? 0.1 : 0.26 } accessibleTable /> // One edge is one certified destination total—not an inferred voter path. { source: "WILEY", target: "GARCIA", value: 130384, startTime: 6.85, endTime: 7.15, poolId: "wiley" }