On Sunday, July 19, Reyes Maroto defeated Enma López in the PSOE primary for Madrid’s city hall by 1,045 votes (55.4%) to 841 (44.6%), a margin of 204 votes. Turnout stood at 1,886 voters out of a 5,485-member registry, i.e., 34.4%, a figure far below the 50.5% recorded in the last comparable competitive primary (March 2019). Five days before the vote, my analysis published in Agenda Pública had modeled several scenarios based on the endorsements filed by both candidates (1,376 for Maroto, 1,028 for López) to gauge just how open the race realmente was.
The Prediction
The central intuition of the analysis —that the real gap between the candidates was smaller than what the raw endorsement differential suggested (348 endorsement difference)— was confirmed. 204 votes of difference out of 1,886 ballots cast are, indeed, an adjusted result, far from a rout. The overall frame of a “competitive race, not decided in advance” withstood the contrast with reality.
“204 votes of difference out of 1,886 ballots cast are, indeed, a tight result, far from a rout”
The most fragile point of the original analysis was methodological and had been flagged from the outset: the model assumed an almost perfect correlation between endorsements and votes for López, while it only contemplated a leakage of votes for Maroto, within a 5% to 20% range. The argument was reasonable —an endorsement for the outsider candidate was interpreted as a more “costly” commitment and, therefore, more reliable—, but the result contradicts that asymmetry. Both campaigns lost support relative to their endorsements:
Endorsements converted into votes
| Candidate | Endorsements | Votes | Absolute loss | Relative loss |
|---|---|---|---|---|
| Reyes Maroto | 1.376 | 1.045 | 331 | 24% |
| Enma López | 1.028 | 841 | 187 | 18% |
The model correctly anticipated the direction —that Maroto would convert fewer endorsements into votes than López— and even fell short in magnitude, since Maroto’s actual loss (24%) exceeded the 20% ceiling that the simulation set as its most adverse scenario. Conversely, it overestimated López’s immunity to the same endorsement–vote wear dynamic that affected her rival. On the other hand, the aggregated data do not allow detecting net vote transfers between candidacies relative to endorsements.
“Maroto’s actual loss (24%) exceeded the 20% ceiling that the simulation set as its most adverse scenario. By contrast, it overestimated López’s immunity”
To avoid distorting the reading of the result, it is worth noting that López’s loss of votes relative to endorsements was proportionally smaller than Maroto’s, not greater. This is an important nuance: there is no sign in the data of a specific demobilization of López’s electorate in the final phase of the campaign —which, in fact, gained media visibility during the final week, while Maroto opted for a campaign with a more negative tone—. More broadly, both candidates lost votes relative to endorsements as a result of the low turnout.
The Drop in Participation
Indeed, the model used 2019 turnout as a conservative baseline (50.5%). The real turnout was 34.4%, sixteen percentage points lower. This drop is not explained by an internal mechanism of the process (mobilization by each campaign, the campaign, etc.), but points to a calendar factor: unlike 2019, which was held in March, this primary took place in mid-July, during vacation season, when a significant portion of the membership — by sociodemographic profile, age and occupation — is likely to be away from Madrid.
“The most consistent clue is that the decisive factor was the summer calendar, not a specific event on voting day”
Another factor, though to a lesser extent, was the coincidence with the Spain-Argentina World Cup final, which led to polling stations closing half an hour earlier than usual (20:00). But the polling places closed at 19:30 and the final started at 21:00, with no real time overlap. The contrast between the 50.5% of March 2019 and the 34.4% of July 2026 — two figures comparable in all but the year — is, with the available data, the most consistent indicator that the decisive factor was the summer calendar, not a specific event on voting day, beyond a possible general mood of apathy among Madrid’s PSOE membership.
Why Maroto Won: The Weight of the Apparatus in the Local Group Map
Neither of the two scenarios of the original model —centered on the aggregated relationship between endorsements and votes— could capture an element that the result by local groups makes quite clear: Maroto’s victory was not uniform nor explained solely by a slight advantage spread across the city, but was concentrated very sharply in a handful of groups staunchly aligned with the party apparatus. The clearest case is the Latina Group, where Maroto swept by 120 votes to López’s 29 — a 91-vote difference that alone accounts for nearly half of the final 204-vote edge. This is not a random group: it is the membership group of the minister of the Presidency, Félix Bolaños, one of the most influential figures in the circle closest to Sánchez within the PSOE, where a complete unknown in the party like Pepu Hernández, then a Sánchez-backed candidate, obtained as much as 87% of the vote in 2019. Add to that other broad wins in other groups strongly identified with the party’s regional and federal apparatus, such as San Blas-Canillejas (45-11), and the group of Óscar López himself, secretary-general of the Madrid PSOE.
Overall, Maroto won in 16 of the city’s 23 groups, against López’s 7, including López’s own group (Entrevías, 26-4) and others such as Arganzuela (81-12), Centro (132-104), Retiro (68-17), Ciudad Lineal (52-29), Moncloa (52-14) and Puente de Vallecas (59-54).
“In a process with very low participation, the result ended up largely depending on the differential mobilization capacity by local group”
Qualitatively, the reading is quite clear: in a low-turnout process, the result ended up largely depending on the capacity to mobilize differentially by local group, and that is where the apparatus made the difference. It was not that Maroto won by a uniform margin across the city, but that she won decisively where structures and leadership aligned with Ferraz and the Madrid regional leadership could best mobilize their members to vote. López’s much more intense social media campaign did not compensate for the traditional mobilization mechanisms within the local groups.
In this sense, that fewer than two thousand people — out of a registry of just over 5,400 members — decide who aspires to govern a city of 3.5 million inhabitants invites reflection on whether these primaries should be open to the general public, rather than reserved for party membership.
The qualitative layer of the original analysis —the precedents of Borrell-Almunia, Morán-Leguina, Gómez-Jiménez and Sánchez-Díaz— concluded that the pattern of “apparatus against outsider” tends to systematically favor the latter, but in the four cited cases the PSOE was in opposition and its leadership was, therefore, in real dispute. Borrell challenged Almunia after the end of the long Felipe González era; Sánchez defeated Susana Díaz in 2017 with the party out of government and PSOE under a caretaker administration. In that kind of scenario, the local apparatus is more fragmented, has less capacity to drag votes, and the base vote becomes more permeable to internal challenge. The dynamics change when the secretary-general is in the Palacio de la Moncloa and commands leadership barely questioned internally. With Sánchez in government, the PSOE Madrid apparatus acts with greater cohesion, discipline and mobilization capacity precisely because it defends not only a local candidacy but the continuity of the cycle that sustains the government.
A Good Result for López
It is useful to end with an interpretation that goes beyond who won. Enma López faced these primaries without the backing of the federal or regional leadership, after a move that cost her a seat on the Federal Executive Committee and that was met with public discontent from Ferraz; with almost the entire apparatus mobilized against her, in key groups with drag capacity; and in a mid-July date that, as we have seen, objectively worked against turnout and, with it, probably against the more volatile or less organized vote that an outsider candidacy must mobilize to a greater extent.
The process calendar was, moreover, extraordinarily compressed. The Federal Committee that called the primaries met on June 27; barely two or three days later it was confirmed that Madrid would enter this first July window, alongside four other federations. Nominations were filed on July 2–3, endorsements collected between July 4 and 11, the campaign ran from July 12 to 18, and the vote took place on July 19. In other words, between the Federal Committee’s call and the start of the endorsements collection passed exactly one week. Such a tight window leaves little room for a candidate without prior structure or territorial machinery to organize from scratch a campaign to collect endorsements, which adds context to López’s resource imbalance from the outset.
“López leaves this process with her own leadership, earned at the polls against the party’s structure”
In that context, achieving 45% of the votes is not a bad result: it is, in fact, a result that probably few would have anticipated for a candidate without her own apparatus weeks before the vote. Beyond the number, it carries a political consequence: López leaves this process with her own leadership, earned at the polls against the party structure, and not leadership granted, inherited or co-opted by the leadership. It is a difference that matters for the future —one thing is to be designated, and another is to show, even in defeat, that one has a real base of support capable of challenging the apparatus on its own turf. Reyes Maroto, for her part, can now run for the Madrid mayoralty with a greater legitimacy than that derived from simply being the one chosen by Pedro Sánchez.