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.

Michigan Democratic Party Convention, April 2026

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.

Weighted votes cast at convention
delegates contacted before the convention
of them showed up and cast a ballot
of the weighted floor came from our universe
4/5slate candidates endorsed, then nominated

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.

People's Coalition slate Slate candidate, seat lost Other candidates
Count the same ballots by

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.

Universe 01 / Retained

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.

Universe 02 / New members

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.

Universe 03 / Coalition network

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.

Turnout rate Share of slate picks cast

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.

weighted votes short of the second MSU seat, a margin of 0.16 percent

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.

Santana delegates Tebay delegates

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

01

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.

02

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.

03

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.

04

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

UniverseContactedVotedTurnoutWeighted votesSlate 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.

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.


Written by Elena J. Greer, Chief Innovation Officer, Vote For Change.
Analysis based on the Michigan Democratic Party weighted convention results, April 2026, matched against our pre-convention contact universe.

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.

Start a conversation See the rates