Lewis Haldane headed an injury-time winner to hand Bristol Rovers their first League One home win of the season at the Memorial Stadium.
Haldane was on hand to capitalise on some sloppy defending to direct a powerful header past stranded keeper Lenny Pidgeley.
It was a devastating blow for The Lions, who had looked comfortable going into the last quarter of an hour with a goal-lead courtesy of Ali Fuseini's first senior goal.
But two goals in the final 16 minutes stunned new boss Kenny Jackett and the 449 travelling fans alike.
It had all started so well for Millwall who, despite losing midfielder Alan Dunne through injury after just five minutes, took the lead on eight minutes.
Within three minutes of entering the fray, 18-year-old Fuseini picked up a neat flick-on from Gary Alexander and with his first touch of the ball let fly with 20-yard fizzer that gave Steve Phillips no chance in the home goal.
Rovers had little to offer as an attacking threat, with Rickie Lambert's 14th-minute effort their first noteworthy attempt on goal.
It was The Lions who looked more composed and really should have had more than a one-goal lead to take in at the break.
A delightful piece of skill from Will Hoskins saw the striker out-muscled by three Gas defenders as he prepared to pull the trigger, Ahmet Brkovic saw his 33rd-minute header from a Jamie O'Hara cross loop over whilst Alexander's goal-bound shot was deflected away.
Rovers came flying out of the traps at the start of the second half and keeper Pidgeley twice produced fingertip saves to deny the increasingly influential Rickie Lambert.
At the other end a superb move involving O'Hara and Marcus Bignot saw the latter's deep delivery pick out Ahmet Brkovic, whose diving header was somehow cleared by Phillips.
The Lions looked to be in control, but Rovers were handed a lifeline after 69 minutes when Zoom Bakayogo was harshly penalised for holding, and up stepped Lambert to lash home an unstoppable spot-kick into the bottom corner.
Millwall had a great chance to restore their advantage two minutes from the end of normal time when O'Hara's free-kick was headed on to Hoskins at the far post, but he failed to connect properly with the ball and screwed his effort horribly wide.
Then, with the game in the final seconds of four minutes of time added on, Bakayogo was caught napping on the right, the ball was whipped in and Haldane did the damage wtih a heart-breaking last-gasp winner.
Bristol Rovers: Phillips, Green, Coles, Elliott, Carruthers, Lines, Campbell, Igoe (Pipe, 63mins), Haldane, Lambert, Rigg (Williams, 59mins). Subs not used: Hinton, Walker, Lescott.
Booking: Haldane (90mins)
Scorers: Lambert (76mins, pen), Haldane (90mins)
Millwall: Pidgeley, Bignot, Bakayogo, Dunne (Fuseini, 5mins), Robinson, Whitbread, O'Hara, Brkovic (Akinfenwa, 85mins), Hodge, Alexander, Hoskins. Subs not used: Day, Barron, Gaynor.
Bookings: Alexander (18mins), Akinfenwa (90mins)
Scorer: Fuseini (8mins)
Ref: Mark Haywood
Att: 6,991 (Away 449)


















