Match summary
PSV Eindhoven took a 1-0 win at Porto. It was goalless at half-time.
Guus Til put PSV Eindhoven ahead in the 57th minute.
The chances backed that up: PSV Eindhoven created 1.91 expected goals (xG) from 18 shots to Porto's 1.58 from 14.
20 October 2026 · Champions League · Matchday 3 · 2026/27 · Referee Daniel Siebert
Half-time: 0–0
PSV Eindhoven took a 1-0 win at Porto. It was goalless at half-time.
Guus Til put PSV Eindhoven ahead in the 57th minute.
The chances backed that up: PSV Eindhoven created 1.91 expected goals (xG) from 18 shots to Porto's 1.58 from 14.
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′ | 2 | 1 | 49 | – | – | – | – | – |
| 90′ | 1 | – | – | 8 | 4 | 34 | 1 | – | – | – | ||
| 90′ | – | 2 | 1 | 2 | 2 | 50 | 1 | – | – | – | ||
| 90′ | – | – | 1 | 1 | 1 | 62 | 1 | – | – | – | ||
Zaidu Sanusi
Taken off
|
69′ | – | 1 | 1 | – | – | 26 | – | – | – | – | |
Souza
Came on as a substitute
|
21′ | – | – | – | 2 | 1 | 9 | – | – | – | – |
Victor Froholdt
Taken off
|
76′ | – | – | 21 | – | – | 1 | 1 | 3 | – | 1 | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 90′ | – | – | 44 | 2 | – | 1 | 1 | 2 | – | 1 | – | ||
Gabri Veiga
Taken off
|
58′ | – | – | 24 | 1 | – | 3 | – | 6 | 1 | 2 | – | |
| 90′ | – | – | 27 | – | – | 1 | – | 6 | 2 | 2 | – | ||
Oskar Pietuszewski
Taken off
|
58′ | – | – | 9 | – | – | – | – | 3 | – | 1 | – | |
Hwang In-beom
Came on as a substitute
|
32′ | – | – | 20 | 1 | – | – | – | 1 | – | 1 | – | |
Seko Fofana
Came on as a substitute
|
14′ | – | – | 12 | – | – | – | – | – | – | – | – |
Samu Aghehowa
Taken off
|
58′ | – | – | 1 | – | 0.17 | – | 2 | 1 | – | 19 | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Borja Sainz
Came on as a substitute
|
32′ | – | – | – | – | – | – | – | – | – | 6 | – | |
André Silva
Came on as a substitute
|
32′ | – | – | 1 | 1 | 0.44 | – | 2 | – | – | 10 | – |
| 90′ | 3 | 0 | 49 | 1 | – | – | – | – |
| 90′ | 3 | 2 | – | 5 | – | 58 | 1 | – | – | – | ||
| 90′ | – | – | 1 | 2 | 2 | 93 | 2 | – | – | |||
Yarek Gasiorowski
Taken off
|
74′ | 2 | 5 | – | 3 | 1 | 66 | – | – | – | – | |
Mauro Júnior
Taken off
|
81′ | – | 1 | – | 2 | 1 | 68 | 1 | – | – | ||
Armando Obispo
Came on as a substitute
|
16′ | – | – | 1 | 3 | 3 | 7 | – | – | – | – | |
Noah Fernandez
Came on as a substitute
|
9′ | – | 1 | – | 1 | – | 4 | – | – | – | – | |
Ryan Flamingo
Came on as a substitute
|
8′ | – | – | – | 1 | 1 | 4 | – | – | – | – |
Filip Kostić
Taken off
|
88′ | – | – | 49 | – | – | – | 1 | 1 | 1 | 1 | – | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 90′ | – | – | 54 | – | – | 3 | – | 6 | 1 | 2 | – | ||
Esmir Bajraktarević
Taken off
|
81′ | – | – | 35 | 4 | – | 1 | 1 | 4 | 1 | – | – | |
| 90′ | – | 1 | 45 | 4 | – | – | – | 4 | 1 | 1 | – | ||
Ivan Perišić
Taken off
|
88′ | – | – | 52 | 2 | – | 1 | 1 | 3 | 1 | – | – | |
| 90′ | 1 | – | 27 | 2 | – | – | – | 2 | – | 1 | – | ||
Dennis Man
Came on as a substitute
|
9′ | – | – | 4 | – | – | 1 | – | 1 | – | – | – | |
Amir Bouhamdi
Came on as a substitute
|
8′ | – | – | 2 | 1 | – | – | – | – | – | – | – |
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 from Bzzoiro Sports Data.