Analytics only. Forecasts are probabilistic estimates, not betting advice or guarantees. 18+. If gambling stops being fun, it has stopped being a game.
SaltaBall

Fixtures · Knockout · Sat, 4 Jul 2026 · 17:00 UTC

Canada 0–3 Morocco — match statistics

Canada
0 – 3
Morocco

Full time · NRG Stadium, Houston

Match statistics

Canada Morocco

45%Possession %55%
10Shots5
3Shots on target4
4Shots off target1
11Corners1
24Fouls14
2Offsides3
1Saves3
4Yellow cards4
105Attacks74
70Dangerous attacks17

Timeline

20'🟨Redouane HalhalYellowcard (Morocco)
22'🔄Soufiane RahimiSubstitution (Morocco)
40'🟨Achraf HakimiYellowcard (Morocco)
40'🟨Richie LaryeaYellowcard (Canada)
43'🟨Jonathan DavidYellowcard (Canada)
45'🟨Azzedine OunahiYellowcard (Morocco)
45'🟨Bilal El KhannoussYellowcard (Morocco)
49'🟨Luc De FougerollesYellowcard (Canada)
50'Azzedine OunahiGoal (Morocco) · 0-1
63'🔄Sofyan AmrabatSubstitution (Morocco)
63'🔄Cyle LarinSubstitution (Canada)
63'🔄Chemsdine TalbiSubstitution (Morocco)
67'🟨Cyle LarinYellowcard (Canada)
78'🔄Promise DavidSubstitution (Canada)
78'🔄Jacob ShaffelburgSubstitution (Canada)
82'Azzedine OunahiGoal (Morocco) · 0-2
87'🔄Samir El MourabetSubstitution (Morocco)
87'🔄Jayden NelsonSubstitution (Canada)
87'🔄Jonathan OsorioSubstitution (Canada)
87'🔄Marwane SaadaneSubstitution (Morocco)
90'Soufiane RahimiGoal (Morocco) · 0-3

What the model said

Probabilities frozen before kickoff, scored on the 90-minute result (Brier — lower is better).

🏆 Best call: Engine + market blend · Brier 0.338Level with the bookmaker market over 104 matches · Brier 0.530 vs 0.498

Canada· draw· Moroccodimmed = weight placed on outcomes that didn't happen

SaltaBall engineBrier 0.384
Engine + market blend 🏆Brier 0.338
Market consensusBrier 0.345
Sportmonks MLBrier 0.499

The engine's pre-match read vs what happened

Most likely score

1–1 (13%)

actual 0–3 was 8th likeliest (5%)

Expected goals

0.93 – 1.48

actual 0 – 3

Over 2.5 goals

Under — 57%

3 goals scored → went over

Both teams to score

No — 53%

outcome: no

Cards

≈4.7 expected

actual 8

Corners

≈9.4 expected

actual 12

Likeliest scorers (pre-match)

A. Hakimi 44% A. Davies 30% Brahim Díaz 30% J. David 20%

Scored: Azzedine Ounahi 50' · Azzedine Ounahi 82' · Soufiane Rahimi 90'

Accuracy is the Brier score — the standard measure for probabilities (lower is better): a well-judged draw counts in the model's favour, an over-confident wrong call is penalised. The detailed read is reproduced from the engine's pre-kickoff ratings (deterministic, verified against the scored record). Probabilities are model estimates, not guarantees, and never betting advice.

Want the model on every match?

SaltaBall reads all 104 matches before kickoff and scores itself against the result, every time. Get the full model for the rest of the World Cup — predictions, the live war room, what-if scenarios and Game Sheets like this one.

Get a World Cup Pass →Start free

One payment, full access through the final on 19 July, then back to free. Not a subscription. Football analytics and entertainment, never betting advice.

← All fixtures & results

Analytics only. Forecasts are probabilistic model estimates — not betting advice, tips, or guarantees. The priors are not calibrated on real historical results; published accuracy (Brier/RPS) follows once results accrue. 18+. If gambling stops being fun, it has stopped being a game — free, confidential help is one click away.