Case studies
What we ran, and what it cost.
Real programs: the brief we were handed, the numbers we hit, and the cost per contact. Open the one closest to your race.
Delegate turnout · MDP convention · April 2026
We were half the floor.
We were half
the floor.
A statewide delegate operation across 16,443 contacts put 2,731 weighted votes on the convention floor. That was half of every vote cast, and it carried four of five progressive slate candidates to the party endorsement, and then onto the November ballot.
The board at close of voting
Michigan weights every delegate's vote by their precinct and county strength, so winning the room is not the same as winning the count. Here is where the five contested races landed.
Michigan counts weighted votes. This is the result that stood.
Bars show each candidate's share of the vote in their race. Multi-seat races endorse the top two.
The problem
A convention is not an election. It is a turnout math problem.
Roughly 6,600 people voted at the April convention. Nobody knows which of the party's tens of thousands of members will be among them until the doors close, and every one of those votes is worth a different amount depending on where the delegate lives.
That makes conventions unusually winnable for an underfunded challenger slate, and unusually easy to lose by accident. A campaign that contacts 15,000 people at random will move almost nothing. A campaign that knows which 900 delegates carry outsized weight, and reaches them before the registration deadline, can move a nomination.
The People's Coalition came to us with a five-candidate slate running against incumbents and party-endorsed favorites. We had ten weeks and a registration deadline that closed a month before anybody voted. More than 7,200 delegates showed up on April 19, which the party called a record.
What we built
Three universes, three different asks
The single biggest decision was refusing to treat the party rolls as one list. A returning precinct delegate and a first-time progressive donor are not the same problem, and sending them the same message wastes both.
2,909 institutional delegates
Precinct delegates and electeds who attend every convention and are auto-registered. They did not need turnout contact. They needed persuasion, because they lean toward whoever the party leadership has already blessed.
10,411 recent joiners
Members who signed up in the most recent cycle. Genuinely persuadable, but far less likely to remember there is a convention at all. This universe needed both a reason to show up and a reason to vote our way.
3,123 progressive supporters
Donors and organizers already aligned with the slate but not party members. They did not need persuading. They needed to complete a party registration before the deadline, or their support was worth nothing.
On top of segmentation we scored every contact by delegate weight and assigned a priority tier, so that phone and text capacity flowed to the delegates whose ballots counted for the most. That scoring decision is the one that shows up hardest in the results.
Result 01
Weighting the target list worked
Turnout climbed steadily with priority tier. Delegates we scored Critical showed up at nearly twice the rate of our lowest tier, and each one carried more than three times the ballot weight.
Turnout rate by assigned priority tier, with the average delegate weight in each tier shown alongside. Higher tiers were both likelier to attend and individually worth more on the floor.
Result 02
The people easiest to turn out were the hardest to persuade
This is the finding we did not expect to be so clean. Turnout rate and slate loyalty run in opposite directions across our three universes. Institutional delegates showed up at triple the rate of the coalition network, and voted with us barely half the time. The coalition network was the hardest group to get registered and into the room, and once there voted the slate almost unanimously.
Every point of turnout in the coalition universe was worth roughly 1.7× a point of turnout among institutional delegates, measured in slate votes delivered. That ratio is the argument for spending scarce registration effort on the hardest list.
Result 03
Effort concentrated, and so did the floor
We put the operation into southeast Michigan, where delegate density and slate affinity both run highest. Turnout in those districts landed between 21 and 28 percent against 13 to 18 percent across the north and west.
Delegate turnout by congressional district. Districts 6 through 13 cover Lansing, Flint, Oakland County, Macomb, Detroit and the Downriver communities.
Result 04
Most delegates split their ballot
Convention delegates do not vote slates the way primary voters vote party. Of the delegates we contacted who showed up, only 484 voted the full five-candidate slate, and 1,024 voted four or five. The rest picked and chose.
Number of the five slate candidates each contacted delegate voted for. Ballot splitting is why per-race margins diverged so sharply despite a shared universe.
The one we lost
Fifteen weighted votes
Sylvia Santana finished third for two Michigan State University trustee seats. She received 3,483 raw delegate votes, 215 more than the candidate who took the second seat. She still lost.
The delegates backing Santana were, on average, lighter. More of them came from lower-weight precincts. Her opponent's coalition was smaller in bodies and heavier in weight, and weight is what the convention counts. The gap is visible in how the two coalitions distribute.
Share of each candidate's delegates falling in each weight band. Santana's coalition is concentrated in the lighter bands; Tebay's carries more weight per delegate at every level above 1.0.
Her average delegate carried 0.81 of a vote. Tebay's carried 0.86. That seven percent difference, spread across roughly 3,400 delegates, is the entire margin. Nineteen more delegates at Santana's own average weight would have closed it. Eight would have done it if they came from the heaviest precincts.
We are publishing this because it is the most useful number in the file. It says the ceiling on this kind of operation is not contact volume. It is the composition of the delegate pool itself, which gets decided in precinct delegate elections two years before anybody walks into a convention hall. That is where the 2028 version of this campaign starts.
What transfers to your race
Segment before you script
Three universes got three entirely different asks. Persuasion for the institutional core, turnout plus persuasion for new members, registration for the coalition network. One message across all three would have wasted most of the program.
Score by what the rules actually count
Michigan counts weighted votes, so we scored by weight rather than by contact ease. Critical-tier turnout beat standard-tier by eleven points, and those delegates carried triple the ballot weight.
Registration deadlines are the real deadline
Our coalition universe had to complete party registration a month before voting. Every conversation after that date was worth nothing. Roughly half the delegates who eventually voted never appeared on any list we pulled, most of them people who joined after our extract. Pulling later and pulling more often is the single clearest thing to fix next cycle.
Measure against the result file, not the activity log
We matched our full contact universe against the official weighted results to see who actually voted. Contact counts tell you what a program did. Only the result file tells you what it moved.
The full picture
Universe to floor
| Universe | Contacted | Voted | Turnout | Weighted votes | Slate picks cast |
|---|
Turnout is the share of each contacted universe that appears in the official convention result file. Slate picks cast is the average share of the five slate candidates each attending delegate voted for. Figures are aggregate; no individual delegate records are published.
Four months later
The endorsements held
April settled who the party would back. It did not settle the ballot. On August 29 the Michigan Democratic Party held its formal nominating convention, and every slate candidate endorsed in April was nominated for November. Nothing was clawed back in the four months between.
Statewide and education board nominees confirmed at the August 29 nominating convention. Slate candidates in brass.
That is the part worth sitting with. Convention wins can be reversed, walked back, or quietly renegotiated before a ballot is printed. These were not. Four of the five people this operation turned out delegates for are on Michigan's November ballot.
The organizations
Who this work was for
Two groups shaped this project. One hired us. The other set the rules we had to count against.
Vote For Change was retained by The People's Coalition. We are not affiliated with, endorsed by, or acting on behalf of the Michigan Democratic Party.
Coverage
What was written about it
We were not the only ones counting. Three pieces worth reading if you want the room rather than the spreadsheet.
Running a convention, endorsement, or slate campaign?
We build delegate universes, score them against the rules that actually govern the count, and run the contact program end to end. Field, digital, texting, and data under one roof, priced so first-time candidates can afford it.
Paid field · Detroit · 2025
2025 Detroit mayoral race
A paid field program built from nothing in under two months: 60+ canvassers hired and managed, 75,000 Detroit voters reached at $1.13 a door.
Dense urban turf at 25 doors an hour, held for the length of the program. It's the cheapest number we have — the floor, not the average.
What it took
- Under 8 weeks from cold start to full deployment
- 60+ canvassers recruited, trained, and supervised in-house
- 75,000 voters contacted
- 25 doors/hour sustained
Your race
Have a race like one of these?
Tell us the budget first. We’ll tell you what it buys.