Millwall vs West Ham

19 September 2026 · Championship · 2026/27 · Referee Paul Tierney

Full time 2 – 2

Half-time: 2–0

  • Caleb Taylor 16’
  • Camiel Neghli 45+3’
  • Mohamadou Kanté 74’
  • Konstantinos Mavropanos 80’

Match summary

Millwall and West Ham shared the points in a 2-2 draw. Millwall led 2-0 at half-time.

In the first half, Caleb Taylor put Millwall ahead in the 16th minute and Camiel Neghli made it 2-0 in first-half stoppage time. In the second half, Mohamadou Kanté pulled one back to make it 2-1 in the 74th minute and Konstantinos Mavropanos equalised with a header in the 80th minute.

Millwall had the better of the chances, with 2.90 expected goals (xG) from 19 shots to West Ham's 1.40 from 15. West Ham had a player sent off.

Match stats

34% Possession 66%
19 Shots 15
7 Shots on target 6
3 Corners 11
64 Attacks 63
36 Dangerous attacks 29
216 Passes 424
61.1% Pass accuracy 79.2%
12 Tackles 14
17 Fouls 18
1 Yellow cards 4
0 Red cards 1
1 Offsides 2

Key events

Millwall West Ham
Kick-off
Jenson MetcalfeShot on target
4’
Corner
11’
Caleb TaylorLeft foot shot1-0 (Millwall)
16’
Mark SykesShot on target
16’
Corner
18’
Jake CooperShot on target
27’
40’
MoratoFoul
Camiel NeghliRight foot shot2-0 (Millwall)
45+3’
Half-time2-0
Mark SykesShot on target
46’
Second half underway
49’
Corner
52’
Mohamadou KantéShot on target
52’
Jarrod BowenShot on target
53’
Corner
Corner
61’
67’
Pablo FelipeShot on target
67’
Corner
73’
Corner
74’
Mohamadou KantéRight foot shot2-1 (West Ham)
77’
Corner
78’
Edvin AustbøShot on target
78’
Corner
78’
Corner
79’
Corner
79’
Corner
80’
Konstantinos MavropanosHeader2-2 (West Ham)
83’
Pablo FelipeArgument
85’
Corner
86’
88’
Corner
89’
Mohamadou KantéProfessional foul last man
Kyrell LisbieArgument
90+5’
90+5’
Full-time2-2

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 3.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.90 1.40 16’ Caleb Taylor (Millwall), 1-0 16’ 45+3’ Camiel Neghli (Millwall), 2-0 45+3’ 74’ Mohamadou Kanté (West Ham), 2-1 74’ 80’ Konstantinos Mavropanos (West Ham), 2-2 80’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.90 1.40 16’ Caleb Taylor (Millwall), 1-0 Taylor 16’ 45+3’ Camiel Neghli (Millwall), 2-0 Neghli 45+3’ 74’ Mohamadou Kanté (West Ham), 2-1 Kanté 74’ 80’ Konstantinos Mavropanos (West Ham), 2-2 Mavropanos 80’
Millwall 2.90 xGWest Ham 1.40 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 West Ham attacking Millwall attacking 
16’ Tairyk Arconte (Millwall), set piece, 0.65 xG, off target 48’ Camiel Neghli (Millwall), set piece, 0.54 xG, goal 52’ Mohamadou Kanté (West Ham), open play, 0.35 xG, saved 16’ Caleb Taylor (Millwall), set piece, 0.31 xG, goal 88’ Valentín Castellanos (West Ham), open play, 0.29 xG, blocked 80’ Konstantinos Mavropanos (West Ham), from a corner, 0.25 xG, goal 16’ Mark Sykes (Millwall), set piece, 0.22 xG, saved 67’ Pablo Felipe (West Ham), open play, 0.18 xG, saved 4’ Jenson Metcalfe (Millwall), open play, 0.15 xG, saved 11’ Tairyk Arconte (Millwall), open play, 0.14 xG, blocked 19’ Jordi Osei-Tutu (Millwall), from a corner, 0.15 xG, blocked 44’ Jenson Metcalfe (Millwall), open play, 0.14 xG, blocked 29’ Tairyk Arconte (Millwall), open play, 0.12 xG, blocked 90’ Camiel Neghli (Millwall), direct free kick, 0.10 xG, blocked 90+3’ Lyndon Dykes (Millwall), set piece, 0.10 xG, off target 12’ Derek Mazou-Sacko (Millwall), from a corner, 0.08 xG, off target 34’ Valentín Castellanos (West Ham), set piece, 0.06 xG, off target 27’ Jake Cooper (Millwall), set piece, 0.06 xG, saved 13’ Lyndon Dykes (Millwall), set piece, 0.06 xG, blocked 85’ Pablo Felipe (West Ham), open play, 0.05 xG, blocked 77’ Jarrod Bowen (West Ham), open play, 0.04 xG, blocked 4’ Zak Sturge (Millwall), open play, 0.03 xG, off target 60’ Arne Engels (West Ham), open play, 0.03 xG, blocked 60’ Divine Mukasa (West Ham), open play, 0.03 xG, off target 2’ Caleb Taylor (Millwall), set piece, 0.02 xG, off target 49’ Divine Mukasa (West Ham), open play, 0.02 xG, blocked 52’ Jarrod Bowen (West Ham), open play, 0.02 xG, saved 79’ Jarrod Bowen (West Ham), from a corner, 0.02 xG, blocked 74’ Mohamadou Kanté (West Ham), open play, 0.02 xG, goal 78’ Edvin Austbø (West Ham), from a corner, 0.02 xG, saved 46’ Mark Sykes (Millwall), open play, 0.01 xG, saved 79’ Mohamadou Kanté (West Ham), from a corner, 0.02 xG, blocked 22’ Jenson Metcalfe (Millwall), open play, 0.01 xG, off target 49’ Jake Cooper (Millwall), set piece, 0.01 xG, off target 16’ Tairyk Arconte (Millwall), set piece, 0.65 xG, off target 48’ Camiel Neghli (Millwall), set piece, 0.54 xG, goal 52’ Mohamadou Kanté (West Ham), open play, 0.35 xG, saved 16’ Caleb Taylor (Millwall), set piece, 0.31 xG, goal 88’ Valentín Castellanos (West Ham), open play, 0.29 xG, blocked 80’ Konstantinos Mavropanos (West Ham), from a corner, 0.25 xG, goal 16’ Mark Sykes (Millwall), set piece, 0.22 xG, saved 67’ Pablo Felipe (West Ham), open play, 0.18 xG, saved 4’ Jenson Metcalfe (Millwall), open play, 0.15 xG, saved 19’ Jordi Osei-Tutu (Millwall), from a corner, 0.15 xG, blocked 44’ Jenson Metcalfe (Millwall), open play, 0.14 xG, blocked 11’ Tairyk Arconte (Millwall), open play, 0.14 xG, blocked 29’ Tairyk Arconte (Millwall), open play, 0.12 xG, blocked 90’ Camiel Neghli (Millwall), direct free kick, 0.10 xG, blocked 90+3’ Lyndon Dykes (Millwall), set piece, 0.10 xG, off target 12’ Derek Mazou-Sacko (Millwall), from a corner, 0.08 xG, off target 34’ Valentín Castellanos (West Ham), set piece, 0.06 xG, off target 27’ Jake Cooper (Millwall), set piece, 0.06 xG, saved 13’ Lyndon Dykes (Millwall), set piece, 0.06 xG, blocked 85’ Pablo Felipe (West Ham), open play, 0.05 xG, blocked 77’ Jarrod Bowen (West Ham), open play, 0.04 xG, blocked 4’ Zak Sturge (Millwall), open play, 0.03 xG, off target 60’ Arne Engels (West Ham), open play, 0.03 xG, blocked 60’ Divine Mukasa (West Ham), open play, 0.03 xG, off target 2’ Caleb Taylor (Millwall), set piece, 0.02 xG, off target 49’ Divine Mukasa (West Ham), open play, 0.02 xG, blocked 79’ Jarrod Bowen (West Ham), from a corner, 0.02 xG, blocked 52’ Jarrod Bowen (West Ham), open play, 0.02 xG, saved 74’ Mohamadou Kanté (West Ham), open play, 0.02 xG, goal 78’ Edvin Austbø (West Ham), from a corner, 0.02 xG, saved 46’ Mark Sykes (Millwall), open play, 0.01 xG, saved 79’ Mohamadou Kanté (West Ham), from a corner, 0.02 xG, blocked 22’ Jenson Metcalfe (Millwall), open play, 0.01 xG, off target 49’ Jake Cooper (Millwall), set piece, 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

Millwall 4-2-3-1 Starting XI
Marschall
Sturge
Taylor
Cooper
Osei-Tutu
Metcalfe 81’
Mazou-Sacko 90’
Dykes
Sykes 70’
Neghli
Arconte 81’
West Ham 4-4-2 Starting XI
Hermansen
Mavropanos
Kilman
Morato
Walker-Peters 46’
Solomon
Engels
Mukasa 68’
Bowen
Piroe 46’
Castellanos 90’

Player stats

Goalkeeper1 player
96′ 4 2 27 2 – – – –
Defenders5 players
96′ 1 – – 4 1 10 1 – – –
96′ – 5 1 6 6 16 – 1 – –
96′ – 2 2 5 5 24 3 – – –
96′ 3 – 1 7 2 21 2 – – –
Elkan Baggott Came on as a substitute
26′ – – – – – 6 – – – –
Midfielders6 players
Jenson Metcalfe Taken off
81′ – – 20 2 – 3 1 8 4 3 –
Derek Mazou-Sacko Taken off
91′ – – 15 – – 4 1 8 2 2 –
Mark Sykes Taken off
70′ – – 13 2 – – 1 1 1 1 –
96′ 1 – 19 – – 1 2 2 1 – –
Kyrell Lisbie Came on as a substitute
15′ – – 1 – – – – 2 1 2
Mathis Servais Came on as a substitute
15′ – – 6 – – – – 3 – 1 –
Forwards2 players
96′ – 1 2 1 0.15 – 1 12 2 25 –
Tairyk Arconte Taken off
81′ – – 3 – 0.91 – 2 3 1 6 –
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 20% Avg odds 4.75
Draw 23% Avg odds 4.03
West Ham win 57% Avg odds 1.65

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.