Portsmouth vs Swansea

3 November 2026 · Championship · 2026/27 · Referee Matthew Corlett

Full time 3 – 1

Half-time: 1–0

  • Terry Devlin 36’, 90+2’
  • Thomas Waddingham 90+8’
  • Žan Vipotnik 85’ (pen)

Match summary

Portsmouth beat Swansea 3-1. Portsmouth led 1-0 at half-time.

In the first half, Terry Devlin put Portsmouth ahead in the 36th minute. In the second half, Žan Vipotnik equalised from the penalty spot in the 85th minute, Devlin put Portsmouth back in front from a corner in stoppage time, and Thomas Waddingham made it 3-1 in stoppage time.

Swansea can feel hard done by, creating 2.25 expected goals (xG) from 10 shots to Portsmouth's 1.35 from 13.

Portsmouth secured a 3-1 victory against Swansea in the Championship despite registering only 36 percent possession and 280 passes compared to the visitors' 494. The hosts managed 13 shots with 5 on target from 82 attacks, while Swansea recorded 9 shots with 3 on target from 81 attacks and accumulated an expected goals figure of 1.68 against Portsmouth's 1.31. Portsmouth committed 12 fouls and received 2 yellow cards, while Swansea committed 8 fouls and received 1 yellow card during the encounter.

The match opened with an early yellow card for Portsmouth's Ebou Adams in the 21st minute and an enforced Swansea substitution involving Stephen Welsh and Ben Cabango in the 24th minute. Terry Devlin broke the deadlock for Portsmouth in the 36th minute to establish a 1-0 half-time lead. Following several second-half substitutions, Swansea equalised when Žan Vipotnik scored a penalty in the 85th minute. Terry Devlin restored the hosts' lead in the 90+2nd minute, and Thomas Waddingham sealed the 3-1 final score with a goal in the 90+8th minute.

Match stats

36% Possession 64%
13 Shots 9
5 Shots on target 3
5 Corners 5
82 Attacks 81
48 Dangerous attacks 48
280 Passes 494
52.9% Pass accuracy 75.5%
13 Tackles 20
12 Fouls 8
2 Yellow cards 0
0 Red cards 0
3 Offsides 4

Key events

Portsmouth Swansea
Kick-off
Tyrese ShadeShot on target
9’
Corner
9’
21’
26’
Jay FultonShot on target
Corner
32’
Terry DevlinRight foot shot1-0 (Portsmouth)
36’
Corner
44’
45+3’
Corner
Half-time1-0
Second half underway
65’
Corner
68’
Corner
Corner
70’
Regan PooleShot on target
71’
71’
Corner
77’
Corner
80’
Marko StamenićShot on target
83’
85’
Žan VipotnikPenalty1-1 (Swansea)
89’
V. MatosManagerArgument
Terry DevlinRight foot shot2-1 (Portsmouth)
90+2’
Corner
90+2’
Thomas WaddinghamRight foot shot3-1 (Portsmouth)
90+8’
Full-time3-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 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.35 2.25 36’ Terry Devlin (Portsmouth), 1-0 36’ 85’ Žan Vipotnik (Swansea), 1-1 85’ 90+2’ Terry Devlin (Portsmouth), 2-1 90+2’ 90+8’ Thomas Waddingham (Portsmouth), 3-1 90+8’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.35 2.25 36’ Terry Devlin (Portsmouth), 1-0 Devlin 36’ 85’ Žan Vipotnik (Swansea), 1-1 Vipotnik 85’ 90+2’ Terry Devlin (Portsmouth), 2-1 Devlin 90+2’ 90+8’ Thomas Waddingham (Portsmouth), 3-1 Waddingham 90+8’
Portsmouth 1.35 xGSwansea 2.25 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Swansea attacking Portsmouth attacking 
85’ Žan Vipotnik (Swansea), penalty, 0.79 xG, goal 79’ Josh Key (Swansea), open play, 0.69 xG, off target 88’ Ross Stewart (Swansea), open play, 0.35 xG, hit the woodwork 4’ Adrian Segečić (Portsmouth), open play, 0.29 xG, off target 36’ Terry Devlin (Portsmouth), open play, 0.24 xG, goal 90+8’ Thomas Waddingham (Portsmouth), open play, 0.24 xG, goal 90+2’ Terry Devlin (Portsmouth), from a corner, 0.14 xG, goal 63’ Joseph Opoku (Swansea), open play, 0.10 xG, blocked 64’ Elijah Just (Swansea), open play, 0.10 xG, off target 71’ Regan Poole (Portsmouth), from a corner, 0.10 xG, saved 36’ Odin Bailey (Portsmouth), open play, 0.09 xG, blocked 3’ Terry Devlin (Portsmouth), open play, 0.06 xG, blocked 48’ Gonçalo Franco (Swansea), set piece, 0.06 xG, blocked 10’ Terry Devlin (Portsmouth), from a corner, 0.05 xG, off target 80’ Marko Stamenić (Swansea), open play, 0.05 xG, saved 56’ Marlon Pack (Portsmouth), open play, 0.05 xG, off target 78’ Joseph Opoku (Swansea), from a corner, 0.04 xG, off target 54’ Elijah Just (Swansea), open play, 0.04 xG, off target 76’ Odin Bailey (Portsmouth), open play, 0.03 xG, off target 9’ Tyrese Shade (Portsmouth), open play, 0.02 xG, saved 26’ Jay Fulton (Swansea), open play, 0.03 xG, saved 32’ Adrian Segečić (Portsmouth), from a corner, 0.02 xG, blocked 58’ Tyrese Shade (Portsmouth), set piece, 0.02 xG, blocked 85’ Žan Vipotnik (Swansea), penalty, 0.79 xG, goal 79’ Josh Key (Swansea), open play, 0.69 xG, off target 88’ Ross Stewart (Swansea), open play, 0.35 xG, hit the woodwork 4’ Adrian Segečić (Portsmouth), open play, 0.29 xG, off target 36’ Terry Devlin (Portsmouth), open play, 0.24 xG, goal 90+8’ Thomas Waddingham (Portsmouth), open play, 0.24 xG, goal 90+2’ Terry Devlin (Portsmouth), from a corner, 0.14 xG, goal 63’ Joseph Opoku (Swansea), open play, 0.10 xG, blocked 71’ Regan Poole (Portsmouth), from a corner, 0.10 xG, saved 64’ Elijah Just (Swansea), open play, 0.10 xG, off target 36’ Odin Bailey (Portsmouth), open play, 0.09 xG, blocked 3’ Terry Devlin (Portsmouth), open play, 0.06 xG, blocked 48’ Gonçalo Franco (Swansea), set piece, 0.06 xG, blocked 10’ Terry Devlin (Portsmouth), from a corner, 0.05 xG, off target 80’ Marko Stamenić (Swansea), open play, 0.05 xG, saved 56’ Marlon Pack (Portsmouth), open play, 0.05 xG, off target 78’ Joseph Opoku (Swansea), from a corner, 0.04 xG, off target 54’ Elijah Just (Swansea), open play, 0.04 xG, off target 76’ Odin Bailey (Portsmouth), open play, 0.03 xG, off target 26’ Jay Fulton (Swansea), open play, 0.03 xG, saved 9’ Tyrese Shade (Portsmouth), open play, 0.02 xG, saved 32’ Adrian Segečić (Portsmouth), from a corner, 0.02 xG, blocked 58’ Tyrese Shade (Portsmouth), set piece, 0.02 xG, blocked
Size shows xG Goal On target Off target or blocked

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

Lineups

Portsmouth 4-2-3-1 Starting XI
Schmid
Meghoma
Poole
Dia
Devlin 2
Adams 73’
Mohamed 54’
Bailey
Shade 81’
Segečić 73’
Milovanović 73’
Swansea 4-3-3 Starting XI
Vigouroux
Tymon
Seelt
Welsh 24’
Lissah 74’
Franco
Fulton 74’
Stamenić
Opoku
Widell 46’
Idah 61’

Player stats

Goalkeeper1 player
90′ 2 1 41 – – – – –
Defenders5 players
90′ 2 3 1 6 3 28 – 2 – –
90′ 1 2 – 3 2 26 1 – –
90′ 1 1 – 2 – 15 1 – – –
90′ 3 – 1 4 1 31 – – – –
Zak Swanson Came on as a substitute
9′ – – – – – 1 – – – –
Midfielders7 players
Ebou Adams Taken off
73′ – – 22 – – 3 – 6 3 1
Iyad Mohamed Taken off
54′ – – 17 – – 1 – 2 2 – –
Adrian Segečić Taken off
73′ – – 13 2 – 1 1 5 3 1 –
90′ – 1 29 2 – 1 2 4 1 1 –
Marlon Pack Came on as a substitute
36′ – – 7 – – – 2 2 – 1 –
Abu Kamara Came on as a substitute
17′ – – 3 – – – – 2 – 1 –
Josh Murphy Came on as a substitute
17′ – – 1 – – – – 1 – – –
Forwards3 players
Tyrese Shade Taken off
81′ – – 2 1 0.05 – 1 2 1 28 –
Marko Milovanović Taken off
73′ – – – – – – – 5 – 15 –
Thomas Waddingham Came on as a substitute
17′ 1 – 1 1 0.24 – – 1 – 3 –
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.

Before kick-off

Portsmouth win 37% Avg odds 2.50 Our estimate 40%
Draw 29% Avg odds 3.22 Our estimate 29%
Swansea win 34% Avg odds 2.78 Our estimate 31%

Chances implied by the average closing odds, with the bookmaker margin removed. Our estimate is the figure from before kick-off. How our figures work.

Form going into the game

Last five 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 and odds from football-data.co.uk.