Porto vs PSV Eindhoven

20 October 2026 · Champions League · Matchday 3 · 2026/27 · Referee Daniel Siebert

Full time 0 – 1

Half-time: 0–0

  • Guus Til 57’

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.

Match stats

40% Possession 60%
14 Shots 18
4 Shots on target 3
2 Corners 3
68 Attacks 108
29 Dangerous attacks 50
422 Passes 616
81.0% Pass accuracy 85.9%
7 Tackles 12
7 Fouls 9
0 Yellow cards 2
0 Red cards 0
5 Offsides 3

Key events

Porto PSV Eindhoven
Kick-off
39’
Second half underway
Half-time0-0
46’
Sergiño DestShot on target
57’
Guus TilLeft foot shot0-1 (PSV Eindhoven)
61’
Esmir BajraktarevićShot on target
69’
André SilvaShot on target
72’
75’
Mauro JúniorTime wasting
Alberto CostaShot on target
78’
81’
Noah FernandezMauro Júnior
88’
Amir BouhamdiIvan Perišić
Alberto CostaShot on target
90+5’
Full-time0-1

How the chances added up

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.

0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.58 1.91 57’ Guus Til (PSV Eindhoven), 0-1 57’ 0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.58 1.91 57’ Guus Til (PSV Eindhoven), 0-1 Til 57’
Porto 1.58 xGPSV Eindhoven 1.91 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 PSV Eindhoven attacking Porto attacking 
57’ Guus Til (PSV Eindhoven), open play, 0.48 xG, goal 72’ André Silva (Porto), open play, 0.44 xG, saved 72’ Victor Froholdt (Porto), open play, 0.30 xG, blocked 7’ Ivan Perišić (PSV Eindhoven), open play, 0.24 xG, off target 42’ Filip Kostić (PSV Eindhoven), open play, 0.18 xG, hit the woodwork 57’ Sven Mijnans (PSV Eindhoven), open play, 0.18 xG, off target 56’ Samu Aghehowa (Porto), open play, 0.17 xG, off target 9’ Oskar Pietuszewski (Porto), open play, 0.15 xG, off target 32’ Mauro Júnior (PSV Eindhoven), open play, 0.14 xG, off target 10’ Guus Til (PSV Eindhoven), open play, 0.10 xG, off target 14’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.10 xG, blocked 90+1’ Pepê (Porto), set piece, 0.10 xG, off target 90+5’ Alberto Costa (Porto), open play, 0.10 xG, saved 78’ Alberto Costa (Porto), open play, 0.08 xG, saved 57’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.07 xG, hit the woodwork 7’ Oskar Pietuszewski (Porto), open play, 0.06 xG, off target 11’ Guus Til (PSV Eindhoven), open play, 0.06 xG, off target 61’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.06 xG, saved 37’ Oskar Pietuszewski (Porto), open play, 0.06 xG, off target 82’ Dennis Man (PSV Eindhoven), open play, 0.05 xG, off target 46’ Sergiño Dest (PSV Eindhoven), open play, 0.05 xG, saved 67’ Sergiño Dest (PSV Eindhoven), open play, 0.04 xG, blocked 90+2’ Sven Mijnans (PSV Eindhoven), open play, 0.05 xG, off target 90+5’ Hwang In-beom (Porto), open play, 0.05 xG, blocked 48’ Pablo Rosario (Porto), open play, 0.04 xG, off target 52’ Guus Til (PSV Eindhoven), open play, 0.03 xG, off target 17’ Mauro Júnior (PSV Eindhoven), open play, 0.03 xG, off target 21’ Ivan Perišić (PSV Eindhoven), open play, 0.03 xG, blocked 31’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.02 xG, blocked 40’ Gabri Veiga (Porto), set piece, 0.02 xG, off target 80’ Jakub Kiwior (Porto), open play, 0.02 xG, off target 73’ Pablo Rosario (Porto), from a corner, 0.01 xG, off target 57’ Guus Til (PSV Eindhoven), open play, 0.48 xG, goal 72’ André Silva (Porto), open play, 0.44 xG, saved 72’ Victor Froholdt (Porto), open play, 0.30 xG, blocked 7’ Ivan Perišić (PSV Eindhoven), open play, 0.24 xG, off target 42’ Filip Kostić (PSV Eindhoven), open play, 0.18 xG, hit the woodwork 57’ Sven Mijnans (PSV Eindhoven), open play, 0.18 xG, off target 56’ Samu Aghehowa (Porto), open play, 0.17 xG, off target 9’ Oskar Pietuszewski (Porto), open play, 0.15 xG, off target 32’ Mauro Júnior (PSV Eindhoven), open play, 0.14 xG, off target 10’ Guus Til (PSV Eindhoven), open play, 0.10 xG, off target 90+1’ Pepê (Porto), set piece, 0.10 xG, off target 90+5’ Alberto Costa (Porto), open play, 0.10 xG, saved 14’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.10 xG, blocked 78’ Alberto Costa (Porto), open play, 0.08 xG, saved 57’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.07 xG, hit the woodwork 7’ Oskar Pietuszewski (Porto), open play, 0.06 xG, off target 61’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.06 xG, saved 11’ Guus Til (PSV Eindhoven), open play, 0.06 xG, off target 37’ Oskar Pietuszewski (Porto), open play, 0.06 xG, off target 82’ Dennis Man (PSV Eindhoven), open play, 0.05 xG, off target 46’ Sergiño Dest (PSV Eindhoven), open play, 0.05 xG, saved 90+2’ Sven Mijnans (PSV Eindhoven), open play, 0.05 xG, off target 90+5’ Hwang In-beom (Porto), open play, 0.05 xG, blocked 67’ Sergiño Dest (PSV Eindhoven), open play, 0.04 xG, blocked 48’ Pablo Rosario (Porto), open play, 0.04 xG, off target 52’ Guus Til (PSV Eindhoven), open play, 0.03 xG, off target 17’ Mauro Júnior (PSV Eindhoven), open play, 0.03 xG, off target 21’ Ivan Perišić (PSV Eindhoven), open play, 0.03 xG, blocked 31’ Esmir Bajraktarević (PSV Eindhoven), open play, 0.02 xG, blocked 40’ Gabri Veiga (Porto), set piece, 0.02 xG, off target 80’ Jakub Kiwior (Porto), open play, 0.02 xG, off target 73’ Pablo Rosario (Porto), from a corner, 0.01 xG, off target
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Lineups

Porto 4-3-3 Starting XI
Costa
Sanusi 69’
Bednarek
Kiwior
Costa
Froholdt 76’
Rosario
Veiga 58’
Pietuszewski 58’
Aghehowa 58’
Pepê
PSV Eindhoven 4-2-3-1 Starting XI
Kovář
Júnior 81’
Gasiorowski 74’
Dest
Geertruida
Kostić 88’
Sano
Perišić 88’
Mijnans
Bajraktarević 81’
Til

Player stats

Goalkeeper1 player
90′ 2 1 49 – – – – –
Defenders5 players
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 – – – –
Midfielders7 players
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 –
Pepê
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 – – – – – – – –
Forwards3 players
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 –
Came on Taken off Sent off Red is the most in that position for the team

Every player who took the pitch, starters first and then substitutes. A dash means none. xG and xA are expected goals and assists.

Form going into the game

Last five Champions League games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals, timeline, lineups, team and player statistics from Bzzoiro Sports Data (sports.bzzoiro.com). Results from Bzzoiro Sports Data.