Millwall vs Wrexham
Match pulse
Who won: Wrexham 2-0
Wrexham beat Millwall 2-0 on Saturday, August 30, 2025 at The Den. Goals for Wrexham: Kieffer Moore (58') and Lewis O'Brien (90'+18').
Every player rated
Chirp Rating, 3.0 to 10.0Team stats
Player of the game
Danny Ward
WXM · 2 saves, clean sheet
Deserved to win
Millwall deserved better: 18% on chances, lost 0-2
Play by play
- Match ends, Millwall 0, Wrexham 2.
- Second Half ends, Millwall 0, Wrexham 2.
- 90'+22'

Foul
Foul by Max Cleworth (Wrexham).
- 90'+22'

Free kick won
Aidomo Emakhu (Millwall) wins a free kick in the defensive half.
- 90'+21'

Left footed shot just wide
Attempt missed. Daniel Kelly (Millwall) left footed shot from outside the box is too high. Assisted by Massimo Luongo.
D. Kelly
- 90'+21'

Right footed shot saved
Attempt saved. Mihailo Ivanovic (Millwall) right footed shot from the centre of the box is saved in the centre of the goal by Arthur Okonkwo (Wrexham). Assisted by Tristan Crama.
M. Ivanovic
- 90'+21'

Header just wide
Attempt missed. Mihailo Ivanovic (Millwall) header from the centre of the box misses to the right. Assisted by Joe Bryan with a cross.
M. Ivanovic
- 90'+20'

Yellow card
Lewis O'Brien (Wrexham) is shown the yellow card for excessive celebration.
L. O'Brien
- GOAL90'+18'

Goal! Left footed shot
L. O'Brien · ast J. McClean
Goal! Millwall 0, Wrexham 2. Lewis O'Brien (Wrexham) left footed shot from the left side of the six yard box to the bottom right corner. Assisted by James McClean.
MIL 0 - 2 WXM - 90'+18'

Yellow card
Kieffer Moore (Wrexham) is shown the yellow card.
K. Moore
- 90'+17'

Shot blocked
Attempt blocked. Kevin Nisbet (Millwall) right footed shot from the centre of the box is blocked. Assisted by Mihailo Ivanovic.
- 90'+16'
Delay over. They are ready to continue.
- 90'+16'
SubSubbed on for D. Ward
Substitution, Wrexham. Arthur Okonkwo replaces Danny Ward because of an injury.
A. Okonkwo
- 90'+3'

Delay in match because of an injury Danny Ward (Wrexham).
- 90'+3'

Shot off target
Attempt missed. Kevin Nisbet (Millwall) left footed shot from the centre of the box is too high.
- 90'+1'MIL

Corner awarded
Corner, Millwall. Conceded by Conor Coady.
- 90'+1'

Header blocked
Attempt blocked. Massimo Luongo (Millwall) header from the centre of the box is blocked. Assisted by Tristan Crama.
M. Luongo
- 90'
Fourth official has announced 12 minutes of added time.
- 90'
SubSubbed on for L. Cundle
Substitution, Millwall. Daniel Kelly replaces Luke Cundle.
D. Kelly
- 90'
SubSubbed on for R. Longman
Substitution, Wrexham. Dan Scarr replaces Ryan Longman.
D. Scarr
- 88'

Header saved
Attempt saved. Kieffer Moore (Wrexham) header from the centre of the box is saved in the top centre of the goal by Steven Benda (Millwall). Assisted by Lewis O'Brien.
K. Moore
- 88'

Shot off target
Attempt missed. Lewis O'Brien (Wrexham) header from the centre of the box misses to the left. Assisted by James McClean with a cross.
- 84'

Free kick won
Raees Bangura-Williams (Millwall) wins a free kick on the right wing.
- 84'

Foul
Foul by Lewis Brunt (Wrexham).
- 83'

Free kick won
Mihailo Ivanovic (Millwall) wins a free kick on the right wing.

