Millwall vs Swansea

4 January 2026 · Championship · 2025/26 · Referee John Busby

Full time 2 – 1

Half-time: 1–0

  • M. Ivanović 38’
  • C. Taylor 90+2’
  • B. Cabango 47’

Match summary

Millwall won 2-1 at home to Swansea, with the winner arriving in stoppage time. Millwall led 1-0 at half-time.

M. Ivanović put Millwall ahead in the 38th minute, B. Cabango equalised from a corner in the 47th minute, and C. Taylor won it with a header in stoppage time.

The chances backed that up: Millwall created 2.02 expected goals (xG) from 17 shots to Swansea's 1.05 from 13.

Match stats

47% Possession 53%
17 Shots 13
9 Shots on target 7
12 Corners 3
344 Passes 413
63.7% Pass accuracy 73.1%
14 Tackles 13
12 Fouls 8
2 Yellow cards 0
2 Offsides 3

Key events

Millwall Swansea
M. LangstaffShot on target
17’
M. IvanovićShot on target
17’
M. LangstaffShot on target
35’
M. IvanovićShot on target
35’
F. AzeezShot on target
37’
M. IvanovićRight foot shot1-0 (Millwall)
38’
41’
G. FrancoShot on target
42’
RonaldShot on target
43’
B. CabangoShot on target
46’
RonaldShot on target
47’
B. CabangoRight foot shot1-1 (Swansea)
B. MitchellShot on target
49’
59’
J. TymonI. Samuels-Smith
59’
M. WidellM. Yalcouyé
66’
72’
73’
73’
73’
J. FultonShot on target
A. EmakhuT. Ballo
77’
J. BryanZ. Sturge
77’
M. IvanovićShot on target
84’
A. DoughtyF. Azeez
85’
R. LeonardM. Langstaff
90’
C. TaylorHeader2-1 (Millwall)
90’
90’
E. GalbraithShot on target

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 2.02 1.05 38’ M. Ivanović (Millwall), 1-0 38’ 47’ B. Cabango (Swansea), 1-1 47’ 90+2’ C. Taylor (Millwall), 2-1 90+2’ 0.0 0.5 1.0 1.5 2.0 2.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.02 1.05 38’ M. Ivanović (Millwall), 1-0 Ivanović 38’ 47’ B. Cabango (Swansea), 1-1 Cabango 47’ 90+2’ C. Taylor (Millwall), 2-1 Taylor 90+2’
Millwall 2.02 xGSwansea 1.05 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Swansea attacking Millwall attacking 
47’ B. Cabango (Swansea), from a corner, 0.53 xG, goal 17’ M. Langstaff (Millwall), open play, 0.51 xG, saved 35’ M. Langstaff (Millwall), open play, 0.38 xG, saved 38’ M. Ivanović (Millwall), set piece, 0.24 xG, goal 90+2’ C. Taylor (Millwall), set piece, 0.16 xG, goal 17’ M. Ivanović (Millwall), open play, 0.13 xG, saved 73’ J. Fulton (Swansea), set piece, 0.13 xG, saved 76’ B. Mitchell (Millwall), open play, 0.12 xG, off target 43’ B. Cabango (Swansea), from a corner, 0.11 xG, saved 7’ M. Ivanović (Millwall), from a corner, 0.09 xG, blocked 86’ T. Crama (Millwall), set piece, 0.07 xG, blocked 35’ M. Ivanović (Millwall), open play, 0.06 xG, saved 62’ C. Taylor (Millwall), set piece, 0.06 xG, off target 73’ E. Galbraith (Swansea), set piece, 0.06 xG, blocked 22’ M. Langstaff (Millwall), open play, 0.05 xG, off target 42’ Ronald (Swansea), open play, 0.04 xG, saved 46’ Ronald (Swansea), open play, 0.04 xG, saved 8’ T. Crama (Millwall), from a corner, 0.04 xG, off target 84’ M. Ivanović (Millwall), open play, 0.04 xG, saved 90’ E. Galbraith (Swansea), set piece, 0.04 xG, saved 49’ B. Mitchell (Millwall), open play, 0.03 xG, saved 76’ J. Cooper (Millwall), from a corner, 0.02 xG, blocked 90+2’ C. Taylor (Millwall), set piece, 0.02 xG, blocked 41’ G. Franco (Swansea), set piece, 0.02 xG, saved 78’ M. Widell (Swansea), open play, 0.02 xG, off target 37’ F. Azeez (Millwall), open play, 0.02 xG, saved 61’ J. Eom (Swansea), open play, 0.02 xG, off target 67’ E. Galbraith (Swansea), set piece, 0.01 xG, off target 47’ J. Fulton (Swansea), from a corner, 0.01 xG, blocked 47’ Ž. Vipotnik (Swansea), from a corner, 0.01 xG, blocked 47’ B. Cabango (Swansea), from a corner, 0.53 xG, goal 17’ M. Langstaff (Millwall), open play, 0.51 xG, saved 35’ M. Langstaff (Millwall), open play, 0.38 xG, saved 38’ M. Ivanović (Millwall), set piece, 0.24 xG, goal 90+2’ C. Taylor (Millwall), set piece, 0.16 xG, goal 17’ M. Ivanović (Millwall), open play, 0.13 xG, saved 73’ J. Fulton (Swansea), set piece, 0.13 xG, saved 43’ B. Cabango (Swansea), from a corner, 0.11 xG, saved 76’ B. Mitchell (Millwall), open play, 0.12 xG, off target 7’ M. Ivanović (Millwall), from a corner, 0.09 xG, blocked 86’ T. Crama (Millwall), set piece, 0.07 xG, blocked 35’ M. Ivanović (Millwall), open play, 0.06 xG, saved 62’ C. Taylor (Millwall), set piece, 0.06 xG, off target 73’ E. Galbraith (Swansea), set piece, 0.06 xG, blocked 22’ M. Langstaff (Millwall), open play, 0.05 xG, off target 42’ Ronald (Swansea), open play, 0.04 xG, saved 46’ Ronald (Swansea), open play, 0.04 xG, saved 84’ M. Ivanović (Millwall), open play, 0.04 xG, saved 90’ E. Galbraith (Swansea), set piece, 0.04 xG, saved 8’ T. Crama (Millwall), from a corner, 0.04 xG, off target 49’ B. Mitchell (Millwall), open play, 0.03 xG, saved 76’ J. Cooper (Millwall), from a corner, 0.02 xG, blocked 90+2’ C. Taylor (Millwall), set piece, 0.02 xG, blocked 41’ G. Franco (Swansea), set piece, 0.02 xG, saved 37’ F. Azeez (Millwall), open play, 0.02 xG, saved 61’ J. Eom (Swansea), open play, 0.02 xG, off target 78’ M. Widell (Swansea), open play, 0.02 xG, off target 67’ E. Galbraith (Swansea), set piece, 0.01 xG, off target 47’ J. Fulton (Swansea), from a corner, 0.01 xG, blocked 47’ Ž. Vipotnik (Swansea), from a corner, 0.01 xG, blocked
Size shows xG Goal On target Off target or blocked

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

Lineups

Millwall 4-2-3-1 Starting XI
Crocombe
Crama
Taylor
Cooper
Sturge
Mitchell
Neghli
Azeez 85’
Langstaff 90’
Ballo 77’
Ivanović
Swansea 4-1-4-1 Starting XI
Vigouroux
Galbraith
Cabango
Burgess
Samuels-Smith 59’
Fulton
Ronald 73’
Franco
Yalcouyé 59’
Eom 73’
Vipotnik 88’

Player stats

Goalkeeper1 player
90′ 6 1 25 1 – – – –
Defenders4 players
90′ 2 2 – 9 5 37 1 – – –
90′ 1 1 – 7 6 27 – 1 1 –
90′ 1 – – 8 7 53 2 – – –
77′ 4 1 – 12 5 37 2 – –
Midfielders9 players
B. Mitchell
90′ – – 44 – – – – 3 1 – –
77′ – – 28 – – – 2 4 3 –
85′ – – 26 6 – 2 1 5 1 – –
M. Langstaff
89′ – – 15 – – 1 – 4 1 1 –
T. Ballo
77′ – – 14 1 – 1 2 4 – 3 –
D. Mazou-Sacko Came on as a substitute
13′ – – 4 – – – – – 1 – –
J. Bryan Came on as a substitute
13′ – – 8 – – 1 – 4 – – –
A. Emakhu Came on as a substitute
13′ – – 4 – – – – 2 – 2 –
A. Doughty Came on as a substitute
10′ – 1 2 2 – – – – – – –
Forwards1 player
90′ 1 – 5 4 0.55 – 1 6 – 19 –
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

Millwall win 45% Avg odds 2.10
Draw 30% Avg odds 3.13
Swansea win 25% Avg odds 3.72

Chances implied by the average closing odds, with the bookmaker margin removed.

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.