First Stage · Group C · Wednesday, June 24 · Atlanta Stadium, Atlanta · 68,239 in the stands
kickoff 18:00 local · 29°C · 44% humidity · roofed stadium
Morocco
39′ Achraf HAKIMI (pen)
45+1′ Ismael SAIBARI (pen)
78′ Soufiane RAHIMI (pen)
89′ Gessime YASSINE (pen)
tap a player for their match file
match pulse — xG per 5 minutes · goals · cards
goals — hover the strip for every shot and card, with names
- 10′BonoNaN xG
- 39′Hakimi0.94 xG
- 43′Isidor0.03 xG
- 45+1′Saibari0.22 xG
- 78′Rahimi0.07 xG
- 89′Yassine0.90 xG
The xG race — cumulative expected goals, minute by minute
MAR 0:0 HAIOn paper vs as played — formation sheet vs heatmap reality
MAR 4-2-3-1 attack →, ← HAI 4-4-1-1 attack. The teamsheet, as announced.
The duel — team data, FIFA tracking included
Territory — where each team lived
Every player's heatmap, minutes-weighted and stacked per team. Morocco attack →, ← Haiti attack. Brighter is more presence; where the colors meet is the contested ground.
How it happened
- 10′Yassine BOUNOU (Morocco) scores an own goal.
- 39′Achraf HAKIMI (Morocco) scores!!
- 43′Wilson ISIDOR (Haiti) scores!!
- 45+1′Ismael SAIBARI (Morocco) scores!!
- 67′Duckens NAZON (in) comes off the bench to replace Ruben PROVIDENCE (out) (Haiti)
- 67′Louicius DEEDSON (in) comes off the bench to replace Wilson ISIDOR (out) (Haiti)
- 70′Gessime YASSINE (in) comes off the bench to replace Ayoub EL KAABI (out) (Morocco)
- 70′Soufiane RAHIMI (in) comes off the bench to replace Ismael SAIBARI (out) (Morocco)
- 70′Azzedine OUNAHI (in) comes off the bench to replace Brahim DIAZ (out) (Morocco)
- 78′Soufiane RAHIMI (Morocco) scores!!
- 79′Johny PLACIDE (Haiti) is booked by the referee.
- 79′Duckens NAZON (Haiti) is booked by the referee.
- 80′Carlens ARCUS (in) comes off the bench to replace Jean-Kevin DUVERNE (out) (Haiti)
- 80′Dominique SIMON (in) comes off the bench to replace Danley JEAN JACQUES (out) (Haiti)
- 83′Samir EL MOURABET (in) comes off the bench to replace Neil EL AYNAOUI (out) (Morocco)
- 83′Noussair MAZRAOUI (in) comes off the bench to replace Anass SALAH EDDINE (out) (Morocco)
- 83′Frantzdy PIERROT (in) comes off the bench to replace Lenny JOSEPH (out) (Haiti)
- 89′Gessime YASSINE (Morocco) scores!!
- 90+3′Josue CASIMIR (Haiti) is booked by the referee.
The morning-after column · AI-written from the match data
Hakimi strides past Haiti's shattered dream
Wilson Isidor's miss in the 10th minute—a 0.93 xG chance, gift-wrapped by Morocco's early sloppiness—proved decisive. Had it gone in, Haiti's afternoon transformed. Instead, Morocco's 22 shots to Haiti's 9, their 2.12 xG to 0.67, and most damning their eight-second faster possession recovery (11.4 to 15.4 seconds) told the story of a team utterly overwhelmed. Soufiane Rahimi orchestrated the finishing; Hakimi's 9.7 rating reflected Haiti having no answer. Two goals after the interval sealed what was decided in quarter-hour.
Haiti's solitary goal came from 0.03 expected goals; Morocco's six from 2.12—a gulf disguised by the scoreline.
39′
Morocco's second goal on 0.94 xG established two-goal control before half-time; Haiti never recovered.
What Morocco needed
Relentless possession and press won the day; survived Haiti's early danger.
- Hakimi's 9.7 rating showed class on the flank—22 shots total vs Haiti's 9 proved dominance
- 11.4-second recovery time meant press worked; 38 forced turnovers strangled opponents
- Converted the two highest xG chances (0.94, 0.90) when it mattered most—clinical finishing
What Haiti needed
Isidor's 0.93 xG miss at 10' was the match; outshot, outpossessed, undone.
- Wilson Isidor's early 0.93 xG miss changed everything—that chance never materialized again
- 31 per cent possession gave no platform for sustained attacks; 50 forced turnovers showed overwhelm
- Scored on 0.03 xG at 43' (Javedan chance) but remained static threat—Morocco controlled all six goals