Millwall vs Cardiff

21 January 2025 · Championship · 2024/25 · Referee David Webb

Full time 2 – 2

Half-time: 2–1

  • Calum Scanlon 2’
  • Casper De Norre 19’
  • Chris Willock 45+1’
  • Yousef Salech 90+7’

Match summary

Millwall and Cardiff shared the points in a 2-2 draw. Millwall led 2-1 at half-time.

In the first half, Calum Scanlon put Millwall ahead in the 2nd minute, Casper De Norre made it 2-0 in the 19th minute, and Chris Willock pulled one back to make it 2-1 in first-half stoppage time. In the second half, Yousef Salech equalised in stoppage time.

Cardiff had the better of the chances, with 1.00 expected goals (xG) from 13 shots to Millwall's 0.68 from 7.

Match stats

Millwall Cardiff
7 Shots 13
3 Shots on Target 5
4 Corners 2
0 Yellow Cards 0
0 Red Cards 0
0.52 xG 1.00
0.52 Non-penalty xG 1.00

Key events

Millwall Cardiff
Kick-off
Calum Scanlon1-0 (Millwall)
2’
Casper De Norre2-0 (Millwall)
19’
45+1’
Chris Willock2-1 (Cardiff)
Half-time2-1
90+7’
Yousef Salech2-2 (Cardiff)
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 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 0.68 1.00 2’ Calum Scanlon (Millwall), 1-0 2’ 19’ Casper De Norre (Millwall), 2-0 19’ 45+1’ Chris Willock (Cardiff), 2-1 45+1’ 90+7’ Yousef Salech (Cardiff), 2-2 90+7’ 0.0 0.5 1.0 1.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 0.68 1.00 2’ Calum Scanlon (Millwall), 1-0 Scanlon 2’ 19’ Casper De Norre (Millwall), 2-0 De Norre 19’ 45+1’ Chris Willock (Cardiff), 2-1 Willock 45+1’ 90+7’ Yousef Salech (Cardiff), 2-2 Salech 90+7’
Millwall 0.68 xGCardiff 1.00 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Cardiff attacking Millwall attacking 
90+1’ Yousef Salech (Cardiff), open play, 0.31 xG, off target 90+7’ Yousef Salech (Cardiff), open play, 0.19 xG, goal 2’ Calum Scanlon (Millwall), open play, 0.17 xG, goal 19’ Casper De Norre (Millwall), open play, 0.16 xG, goal 66’ Macaulay Langstaff (Millwall), open play, 0.14 xG, saved 86’ Yousef Salech (Cardiff), open play, 0.10 xG, saved 43’ Japhet Tanganga (Millwall), from a corner, 0.10 xG, blocked 13’ Callum Robinson (Cardiff), open play, 0.09 xG, saved 84’ Anwar El Ghazi (Cardiff), direct free kick, 0.07 xG, off target 22’ Calum Scanlon (Millwall), open play, 0.05 xG, blocked 46’ Chris Willock (Cardiff), open play, 0.04 xG, goal 54’ Chris Willock (Cardiff), open play, 0.04 xG, off target 18’ Jake Cooper (Millwall), from a corner, 0.04 xG, off target 35’ Yakou Méïté (Cardiff), open play, 0.04 xG, off target 45’ Rubin Colwill (Cardiff), open play, 0.03 xG, blocked 3’ Calum Chambers (Cardiff), open play, 0.03 xG, off target 6’ George Saville (Millwall), set piece, 0.03 xG, off target 10’ Callum Robinson (Cardiff), open play, 0.02 xG, blocked 50’ Callum Robinson (Cardiff), set piece, 0.02 xG, saved 4’ Yakou Méïté (Cardiff), open play, 0.01 xG, off target 90+1’ Yousef Salech (Cardiff), open play, 0.31 xG, off target 90+7’ Yousef Salech (Cardiff), open play, 0.19 xG, goal 2’ Calum Scanlon (Millwall), open play, 0.17 xG, goal 19’ Casper De Norre (Millwall), open play, 0.16 xG, goal 66’ Macaulay Langstaff (Millwall), open play, 0.14 xG, saved 86’ Yousef Salech (Cardiff), open play, 0.10 xG, saved 43’ Japhet Tanganga (Millwall), from a corner, 0.10 xG, blocked 13’ Callum Robinson (Cardiff), open play, 0.09 xG, saved 84’ Anwar El Ghazi (Cardiff), direct free kick, 0.07 xG, off target 22’ Calum Scanlon (Millwall), open play, 0.05 xG, blocked 54’ Chris Willock (Cardiff), open play, 0.04 xG, off target 46’ Chris Willock (Cardiff), open play, 0.04 xG, goal 18’ Jake Cooper (Millwall), from a corner, 0.04 xG, off target 35’ Yakou Méïté (Cardiff), open play, 0.04 xG, off target 45’ Rubin Colwill (Cardiff), open play, 0.03 xG, blocked 3’ Calum Chambers (Cardiff), open play, 0.03 xG, off target 6’ George Saville (Millwall), set piece, 0.03 xG, off target 10’ Callum Robinson (Cardiff), open play, 0.02 xG, blocked 50’ Callum Robinson (Cardiff), set piece, 0.02 xG, saved 4’ Yakou Méïté (Cardiff), open play, 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.

Player stats

Players16 players
90′ – – – – – – –
Ryan Leonard Taken off
59′ – – – – – – –
90′ – – 1 0.10 – – –
90′ – – 1 0.04 – – –
Joe Bryan
90′ – – – – – – –
George Saville
90′ – – 1 0.03 – – –
90′ 1 – 1 0.16 – – –
Duncan Watmore Taken off
78′ – – – – – – –
Raees Bangura-Williams Taken off
64′ – – – – – – –
Calum Scanlon Taken off
78′ 1 – 2 0.22 – – –
Macaulay Langstaff
90′ – – 1 0.14 – – –
Danny McNamara Came on as a substituteTaken off
31′ – – – – – – –
Tristan Crama Came on as a substitute
27′ – – – – – – –
Mihailo Ivanović Came on as a substitute
26′ – – – – – – –
Billy Mitchell Came on as a substitute
12′ – – – – – – –
George Honeyman Came on as a substitute
12′ – – – – – – –
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 42% Avg odds 2.25
Draw 33% Avg odds 2.85
Cardiff win 25% Avg odds 3.84

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. Referee data before 2025/26 from the Transfermarkt datasets project.