Highlights
Match recap
Spain's semi-final blueprint held up exactly as planned: draw the foul, take the lead, manage the game from ahead. Mikel Oyarzabal converted a 22nd-minute penalty, and by the time Pedro Porro doubled it in the 58th — turning in a low ball from Dani Olmo — France's response had nowhere to go. Kylian Mbappé, booked late for his frustration, never found the space he needed against a Spain back line that gave up almost nothing after halftime. The underlying numbers tell an odd story: France leaned heavily on their left flank (57% of their attacking output) without ever generating real danger there, while Spain's much smaller central slice — just 21% of their own attacking share — produced 1.5 expected goals on its own, more than the rest of the match combined. Spain needed only two clean looks at goal to make the difference; France never really got one. A defining defensive performance sends Spain to the final; France's World Cup ends in the semis for the second straight cycle.
Match analysis
Key Events
Lineups
Key Stats
Shot Map
Match Momentum
Expected Goals
Match Stats
Attack By Flanks · Match Analysis
Final-Third Entries
Where each team got the ball into the final third · Brighter = higher xG
Final-third entries grouped by left / center / right channel. Zone brightness reflects xG (goal threat), not raw volume.
Territorial Control · Match Analysis
Zone Dominance
On-ball actions per zone · Brighter = higher share
24%
att. third
16%
att. third
Attack →
Attack →
On-ball actions (passes, carries, dribbles, shots) across six pitch zones. Top row = left channel, bottom row = right channel.
Pass Networks · Match Analysis
Passing Connections
Average positions · Node size = pass volume · Line width = pair frequency
Attack →
Attack →
Player positions averaged across all successful passes. Node size = passes attempted; line width = pair frequency.
Player Comparison Scatter · Match Analysis
0 — 2



