Match summary
Toronto FC and Vancouver Whitecaps played out a goalless draw.
Vancouver Whitecaps had the better of the chances, with 1.34 expected goals (xG) from 14 shots to Toronto FC's 0.75 from 7.
29 March 2025 · MLS · 2025 · Referee Lukasz Szpala
Half-time: 0–0
Toronto FC and Vancouver Whitecaps played out a goalless draw.
Vancouver Whitecaps had the better of the chances, with 1.34 expected goals (xG) from 14 shots to Toronto FC's 0.75 from 7.
Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.
Tap a goal for the scorer and score.
Every shot and where it was taken from.
Hover or tap a shot for the player, minute and xG.
| 90′ | 5 | 0 | 25 | – | – | – | – | – |
Henry Wingo
Taken off
|
53′ | 1 | – | – | 2 | 1 | 17 | 1 | – | – | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 90′ | 1 | 4 | – | 3 | 1 | 32 | – | – | – | – | ||
| 90′ | 3 | – | – | 4 | 1 | 40 | – | – | – | – | ||
| 90′ | 5 | 2 | – | 10 | 1 | 37 | – | – | – | – | ||
Kosi Thompson
Came on as a substitute
|
37′ | 2 | – | – | 4 | 1 | 15 | – | – | – | – |
Alonso Coello
Taken off
|
67′ | – | – | 43 | – | 0.08 | 3 | – | 4 | – | 1 | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 90′ | – | – | 45 | – | 0.29 | 6 | 1 | 11 | 3 | 3 | – | ||
| 90′ | – | – | 20 | 2 | 0.29 | 1 | – | 4 | 3 | – | – | ||
| 90′ | – | – | 25 | 2 | 0.05 | 1 | – | 3 | – | 2 | – | ||
Derrick Etienne
Taken off
|
67′ | – | – | 16 | – | 0.01 | 1 | – | 2 | 3 | – | – | |
Deybi Flores
Came on as a substitute
|
23′ | – | – | 8 | – | 0.00 | 2 | 1 | 2 | 2 | – | – |
Deandre Kerr
Taken off
|
53′ | – | – | – | – | – | 0.04 | – | 5 | 1 | 11 | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ola Brynhildsen
Came on as a substitute
|
37′ | – | – | 1 | – | 0.24 | 0.00 | – | 3 | 1 | 3 | – | |
Tyrese Spicer
Came on as a substitute
|
23′ | – | – | 1 | 1 | 0.04 | 0.41 | 1 | 3 | 1 | 5 | – |
| 90′ | 3 | 0 | 20 | – | – | – | – | – |
Mathías Laborda
Taken off
|
79′ | – | 1 | – | 3 | 1 | 43 | 1 | – | – | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 90′ | – | 1 | – | 1 | 1 | 62 | – | – | – | – | ||
| 90′ | – | 1 | – | 4 | – | 56 | 1 | – | – | – | ||
| 90′ | 1 | 1 | – | 3 | – | 34 | 1 | – | – | – | ||
Édier Ocampo
Came on as a substitute
|
11′ | – | – | – | 2 | 2 | 9 | 1 | – | – | – |
| 90′ | – | – | 61 | 5 | 0.69 | 5 | 2 | 8 | 1 | 1 | – | ||
Andrés Cubas
Taken off
|
61′ | – | – | 37 | – | 0.01 | 1 | 1 | 4 | 1 | 2 | – | |
Jean-Claude Ngando
Taken off
|
89′ | – | – | 35 | – | 0.08 | 1 | – | 5 | 1 | 1 | – | |
Jayden Nelson
Taken off
|
61′ | – | – | 15 | – | 0.01 | 2 | 1 | 4 | 6 | 1 | – | |
Ali Ahmed
Taken off
|
79′ | – | – | 38 | 1 | 0.50 | 3 | – | 9 | – | 4 | – | |
Pedro Vite
Came on as a substitute
|
29′ | – | – | 15 | – | 0.01 | – | 1 | 2 | – | 1 | – | |
Emmanuel Sabbi
Came on as a substitute
|
29′ | – | – | 7 | – | 0.20 | – | – | 3 | – | – | – | |
Jeevan Badwal
Came on as a substitute
|
10′ | – | – | 1 | – | 0.00 | 1 | – | 1 | – | – | – |
| 90′ | – | – | 1 | 1 | 0.05 | 0.02 | 1 | 3 | – | 11 | – | ||
Daniel Ríos
Came on as a substitute
|
11′ | – | – | – | – | – | 0.28 | 1 | – | – | 8 | – |
Every player who took the pitch, starters first and then substitutes. A dash means none. xG and xA are expected goals and assists.
Shots, expected goals, timeline, lineups, team and player statistics from Bzzoiro Sports Data (sports.bzzoiro.com). Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.