On August 4, more than 1.2 million Michigan Democrats voted in the state’s Senate primary, roughly 300,000 more than the party’s 2024 Senate primary drew, a jump of about 30%. They nominated Abdul El-Sayed over Haley Stevens, 48.5% to 47.5%, a margin of under 15,000 votes. On paper the race should have gone the other way. Nearly three of every four advertising dollars were spent on the Stevens side, and public polling was little help: Stevens led by one to two points in April surveys, El-Sayed led by nine in a mid-June poll, and the race closed as a dead heat. Anyone relying on spending totals or the horse race had no stable read on this primary at any point.
PharosGraph tracked it every week from February through election day, the way we read every competitive contest: which issues are actually driving a state’s political conversation, how persuasively each candidate speaks to them, which neighborhoods each candidate’s message resonates in, and who is earning the attention that paid media can’t buy. By late spring those measures had converged on a consistent picture of the race, one the polls never settled on. What happened on August 4 is what our data had been describing for months. This is a review of what we saw, when we saw it, and what the returns confirmed.
The Read Going In: El-Sayed Ahead
Our final pre-election model run, five days before the vote, had El-Sayed ahead of Stevens on our voter-affinity measure, the same lead he had held in every weekly run through the closing stretch of the race. Affinity is not a vote projection; it measures how strongly the electorate aligns with each candidate, not a share of the ballot. But three properties made it a usable signal where the polls were not. It was directionally unambiguous. It was stable, holding week over week while individual polls swung by double digits. And it was grounded in the composition of the electorate rather than in a likely-voter screen, which mattered in a race that was ultimately decided by voters those screens exclude.
The Coalition Divide: Flagged in May, Confirmed in the Returns
From mid-May onward, eleven consecutive weekly runs of our neighborhood-level modeling showed the same structure underneath the race. The conventional wisdom cut this primary by ideology; our data said the operative divide was age and income. The age gap between the two coalitions was the widest divide our model measured on any dimension in this race, wider than education, wider than race, wider than geography. El-Sayed’s message resonated hardest in Michigan’s younger, lower-income, urban neighborhoods, with his single strongest over-performance in neighborhoods with heavy rent burdens, and his weakest showing in the state’s oldest ones. Stevens’s strength concentrated in the affluent suburbs and, by the final weeks, in the oldest neighborhoods, the most reliable primary voters in any normal electorate. Education, the dividing line most analysis of Democratic primaries now assumes, barely separated the two coalitions at all.

The returns bore the pattern out in detail. El-Sayed won only 30 of 83 counties and lost every county in metro Detroit, yet won statewide, the first Democrat to do that without carrying Wayne, Oakland, or Macomb since 2016. He did it exactly where the age-and-income read said his support lived: close to 60% of the vote across the five college-heavy counties of Washtenaw, Ingham, Kalamazoo, Isabella, and Kent, above 70% in parts of Ann Arbor, and above 80% in some Grand Rapids precincts. Inside Wayne County, the official canvass shows his urban strength ran through the communities our tracking had singled out: 77.6% in Dearborn, 71.9% in Dearborn Heights, and 82.3% in Hamtramck, with Dearborn alone supplying him a margin nearly as large as his statewide one. Detroit itself was the exception, breaking nearly two to one for Stevens behind the party infrastructure aligned with her, and the county’s older suburban electorate followed. Yet even there, the underlying divide held: among Election Day walk-up voters in metro Detroit, the youngest and least habitual segment of the electorate, El-Sayed won 59% to 37.9%, a 21-point advantage worth roughly 56,000 votes in a race decided by under 15,000.
A turnout surge is the hardest thing in politics to see coming, because it comes from people who weren’t yet likely voters.
The composition of the record turnout tells the same story from the other direction. Post-election analysis found the surge came disproportionately from voters and communities that do not usually vote in August primaries, with Dearborn cited as the clearest case, while Detroit’s turnout ran several points below the statewide rate. A turnout surge is the hardest thing in politics to see coming, because it comes from people who weren’t yet likely voters; polls of likely voters miss it by construction. Neighborhood-level resonance data sees it earlier, because it measures where a message is landing before those voters show up in anyone’s screen.
That gap between who could vote and who will is also where this kind of data becomes operational. No model knows who will actually turn out, but resonance data identifies the neighborhoods where a campaign’s message is already landing hardest, and those are the places where a knock on the door or a ride to the polls converts at the highest rate, because the persuasion work is already done. A field budget aimed at high-resonance, low-propensity neighborhoods is buying turnout where each contact returns the most votes. In this primary, that map pointed at Dearborn, Hamtramck, and the college cities months before they produced the surge that decided the race.
The Issue Terrain: His Ground Was the High Ground
Our weekly issue tracking ranks the issues driving a state’s political conversation, from loudest to quietest. Throughout this campaign, the loudest issues in Michigan were the ones El-Sayed spoke to best. Cost of living led the conversation from spring through election day. Healthcare ran second, and the party’s own establishment-versus-progressive fight ran third, with abortion and union rights close behind. That ordering was the race’s hidden structure: El-Sayed held the more persuasive message on the second-ranked and fifth-ranked issues, while Stevens’s strongest ground, the auto transition and trade, ranked eighth and below.

The candidate-level gaps were just as consistent. On cost of living, the number-one issue, our message testing scored the two candidates dead even, persuasive in opposite registers: targeted fixes on groceries and utility bills from her, prices as a symptom of a rigged system from him. On healthcare, El-Sayed’s message tested meaningfully stronger, roughly a sixth more persuasive than hers, and the gap widened in practice because Stevens largely ceded the ground; our tracking found no sustained healthcare message from her campaign in the closing weeks. On union rights his edge was larger still, about a fifth more persuasive, which is the finding that made the cycle’s strangest split legible: labor was Stevens’s most consistent theme all spring, pressed week after week, while El-Sayed went whole stretches without raising it, yet the UAW endorsed him in June, citing Medicare for All and his refusal of corporate PAC money. The endorsement followed the persuasion data, not the volume of messaging. Stevens’s genuine advantages ran the other way, a message on the auto transition that tested about 40% stronger than his and the only real trade message in the race, but they sat on issues far down the salience ranking. Her best material was aimed where the conversation was quietest.
The Attention Race: Thirteen Weeks, Never Missed
Our visibility tracking counts the news attention each candidate earns, week by week. Beginning in early May, El-Sayed out-earned Stevens in thirteen consecutive weekly readings through the final week of the campaign. Across the closing six weeks his coverage ran about 1.7 to 1 over hers, peaking above 3 to 1 in the week of June 30, just before the campaign’s only debate. Paid media ran the other way at three to one. Our ad tracking, built in partnership with AdImpact, recorded $46.1 million in spending and reservations as of July 1, with 74% supporting Stevens; roughly $20 million of it, over 40% of all money in the primary, came from a single super PAC, United Democracy Project. El-Sayed’s side drew a little over $1 million in outside support, and his campaign’s first television ad aired June 17, just 48 days before the primary.

The two currencies were not reaching the same people. AdImpact’s placement data shows the paid weight concentrated in broadcast television, whose audience skews toward the oldest neighborhoods, the one segment where Stevens was already strongest. Our coalition data put El-Sayed’s supporters in young, streaming-first communities, including the neighborhoods with the state’s weakest broadband access, where linear television and premium streaming both reach thinnest. Earned coverage was the channel that could reach that electorate, and El-Sayed won it every week. That is how the money and the momentum pointed in opposite directions for three months without contradiction: they were traveling through different Michigans.
The McMorrow Call
When Mallory McMorrow suspended her campaign on July 5, the open question was where her support would go. Our modeling had a directional answer before her withdrawal: in our final reading with her still in the field, taken June 25, the neighborhoods where her message resonated tracked El-Sayed’s far more closely than Stevens’s on every dimension we measure, younger, more urban, lower-income, including communities with large Black populations. We treated it as a directional call, since audience overlap is not a second-choice poll and her name stayed on the ballot. On election night her name drew about 4% of the statewide vote, more than three times the final margin. In a primary decided by less than a point, the bloc our data said was his to inherit was several times the size of the margin that decided it.
The Proof Point
Any single one of these reads could be luck. Five independent measurements agreeing for months, and the result landing where all five pointed, is a method working. The affinity lead was stable while polls swung by ten points. The age-and-income coalition divide, flagged in eleven straight weekly runs, is the pattern the county returns and the walk-up vote confirmed. The issue terrain explained why the persuasion battle favored the candidate with less money. The attention gap, thirteen weeks without a miss, explained where his reach came from. And the McMorrow overlap identified the last bloc the margin needed. Each was visible weeks or months before election day, in data any client could have read at the time.
November
The same instruments are now aimed at the general. El-Sayed faces Mike Rogers, who lost Michigan’s other Senate seat in 2024 by a third of a point, and our positional tracking frames the matchup plainly: El-Sayed’s issue positions sit about as far from the ideological middle of Michigan’s full electorate as Rogers’s do from the other side, and Stevens’s alignment with the state’s centrist and moderate voters ran more than double El-Sayed’s throughout the primary. The general is therefore a genuine experiment. On one side is a nominee with a demonstrated ability to expand the electorate; on the other, an opponent starting closer to the voters a general election is usually fought over. The last Senate race in this state was decided by a third of a point. The primary showed that reading a race through its conversation, its coalitions, and its attention catches what spending totals and horse-race polls miss. We’ll be publishing what those measures show, week by week, through November.
Every competitive race, tracked weekly. Ask us what the data shows in yours.