Match ends, Millwall 3, Ipswich Town 4.
Jordan Spence scored a late header as Ipswich maintained their 100% start to the Championship season with a remarkable victory at Millwall.
They trailed after 44 seconds when Jed Wallace volleyed in, but Ipswich's Joe Garner levelled from 25 yards.
Martyn Waghorn slammed the visitors ahead, and made it 3-2 at the interval after Aiden O'Brien had equalised.
Millwall sub Tom Elliott stabbed home with time running out, but Spence rose high to nod in a dramatic winner.
Defender Spence's goal was his first for the Tractor Boys and only his fifth in 199 career appearances, meaning Ipswich are one of three Championship sides yet to drop a point.
Waghorn, making his first start since joining from Rangers, profited from tireless play by team-mate David McGoldrick to score his second of the match, and his third in two league appearances.
It is the first time Ipswich have won their opening three league matches of a season since the 1999-2000 campaign, when they last won promotion to the Premier League.
Millwall manager Neil Harris said his goalkeeper Jordan Archer made a "horrendous error" for Garner's equaliser as he parried the long-range strike into his own net.
The Lions remain without a win since their return to the second tier, suffering only their second home defeat in 20 matches.
For Mick McCarthy's side, however, it is the first time they have scored four or more goals away from home since November 2015, when they won 5-2 at Rotherham.
Millwall manager Neil Harris:
"It is not good enough here at The Den, it is unacceptable.
"Ipswich showed their class and ability at key moments. In my opinion we have given them four goals away at key moments.
"We were ahead after 44 seconds and we give a goal away, yes the goalkeeper should save it - there is no doubt about that. It is a horrendous error. He should save it at the end of the day, it is what he is in the goal for.
"The fourth goal is the icing on the cake, I have not got the professionalism or leadership in my group to deal with a free-kick against a non-physical Ipswich side."
Ipswich manager Mick McCarthy:
"Our front four were magnificent, we had to survive a barrage. The irony is that it was a defender who scored the winner.
"I was not expecting a 4-3, we scored some magnificent goals but conceded three as well and that was disappointing but they were good.
"They have not been beaten here too often and I don't think they will either. I hope they don't. Millwall are hard to play against, they are a real handful and I think they will be fine."
Line-ups
Millwall
Formation 4-4-2
- 1Archer
- 2McLaughlin
- 17Webster
- 4Hutchinson
- 3MeredithBooked at 31minsSubstituted forFergusonat 74'minutes
- 14J Wallace
- 23Saville
- 6Williams
- 22O'BrienSubstituted forOnyedinmaat 76'minutes
- 20MorisonSubstituted forElliottat 75'minutesBooked at 80mins
- 9Gregory
Substitutes
- 5Craig
- 8Thompson
- 10Onyedinma
- 11Ferguson
- 13King
- 19Elliott
- 35Cooper
Ipswich
Formation 4-4-2
- 33Bialkowski
- 2IorfaBooked at 90mins
- 12Spence
- 4ChambersBooked at 79mins
- 3Knudsen
- 9WaghornSubstituted forRoweat 76'minutes
- 8Skuse
- 18WardBooked at 24mins
- 20Sears
- 10McGoldrick
- 14GarnerBooked at 69mins
Substitutes
- 17Rowe
- 22Nydam
- 24Crowe
- 30Kenlock
- 35Morris
- 37McDonnell
- 39Woolfenden
- Referee:
- James Linington
- Attendance:
- 11,919
Match Stats
- Possession
- Home55%
- Away45%
- Shots
- Home23
- Away8
- Shots on Target
- Home6
- Away4
- Corners
- Home8
- Away3
- Fouls
- Home17
- Away19
Live Text
Post update
Full Time
Second Half ends, Millwall 3, Ipswich Town 4.
Booking
Dominic Iorfa (Ipswich Town) is shown the yellow card for a bad foul.
Post update
Fred Onyedinma (Millwall) wins a free kick on the left wing.
Post update
Foul by Dominic Iorfa (Ipswich Town).
Post update
Attempt missed. Shaun Williams (Millwall) header from the centre of the box is close, but misses to the right. Assisted by Jed Wallace with a cross following a corner.
Post update
Corner, Millwall. Conceded by Cole Skuse.
Post update
Shane Ferguson (Millwall) wins a free kick on the left wing.
Post update
Foul by Danny M. Rowe (Ipswich Town).
Post update
Offside, Millwall. Jed Wallace tries a through ball, but Fred Onyedinma is caught offside.
Post update
Attempt blocked. Jed Wallace (Millwall) left footed shot from outside the box is blocked.
Post update
Attempt blocked. Jed Wallace (Millwall) right footed shot from outside the box is blocked.
Post update
Tom Elliott (Millwall) wins a free kick in the attacking half.
Post update
Foul by Jordan Spence (Ipswich Town).
Goal!
Goal! Millwall 3, Ipswich Town 4. Jordan Spence (Ipswich Town) header from the centre of the box to the bottom right corner. Assisted by Grant Ward with a cross following a set piece situation.
Post update
Foul by Tom Elliott (Millwall).
Post update
Grant Ward (Ipswich Town) wins a free kick in the attacking half.
Post update
Attempt blocked. Danny M. Rowe (Ipswich Town) left footed shot from outside the box is blocked.
Post update
Corner, Ipswich Town. Conceded by Byron Webster.
Post update
Foul by George Saville (Millwall).