An own goal from Nathan Doyle 24 minutes into extra time sent Millwall into the third round of the FA Cup and a January meeting with Stoke which they barely deserved.
In a dire game of few chances, an own goal was almost a fitting way for it to finish after Doyle headed Ben May's cross from the right into his own net.
Millwall had been dominant against Bradford here in a 2-0 league win on Saturday, but the away side will feel aggrieved to be knocked out by a Lions team who played like a Sunday league side for much of this game.
The football was so bad that the highlight of extra time had been the ball hitting the referee until Doyle's misplaced header.
The tone was set early when Millwall lost possession in midfield and allowed Bradford to start more brightly.
Dean Windass headed wide from a Ben Parker cross in the opening minutes and Steven Schumacher headed tamely at Lenny Pidgeley after a promising Windass ball over the top.
After 15 minutes Doyle nearly shocked the home side with a sweet 35-yard free kick that left Pidgeley stranded before cannoning off the crossbar.
Chris Zebroski had the Lions' first chance after being put through by Filipe Morais, but after controlling well he took a touch too many and shot over.
But it was all Bradford with the leggy Jermaine Johnson causing chaos on the right. His run and shot forced a corner from which Eddie Johnson fired a free header straight at Pidgeley.
Millwall were clearly missing suspended winger Chris Hackett as the Bantams midfield dominated possession and created a number of half-chances.
After a one-two with Tommy Black, Parker crossed from the right for Windass to fire over.
The home team were booed off at half-time by a small Millwall crowd who had clearly expected better than the long-ball fare they had been given.
Millwall had more purpose after the break with Alan Dunne heading at goalkeeper Donovan Ricketts after Darren Byfield flicked on a long throw in.
Johnson, who was the stand-out player, very nearly set the game alight on 62 minutes when he ran from the halfway line and ghosted past three Millwall defenders. With just the keeper to beat for a certain goal of the round, he dragged his shot wide of the left-hand post.
The Lions nearly took the lead on 70 minutes when Marcus Phillips swung an inch-perfect cross towards May. The striker rose above his marker and looked set to bury it but headed wide of the right post.