Peterborough were knocked off the top of League One after being condemned to a first defeat of the season as Bradford triumphed 3-1 at the ABAX Stadium.
Dominic Poleon, Romain Vincelot and Matt Kilgallon all scored in the first half for the Bantams, who move level with Peterborough on 13 points.
Jack Baldwin pulled one back for the hosts with 20 minutes left before both sides ended the game with 10 men as Anthony Grant and Adam Chicksen were sent off in separate incidents.
Poleon fired City into a seventh-minute lead after Posh goalkeeper Jonathan Bond spilled Chicksen's cross from the left.
The Bantams were reliant on a goal-line clearance from Nicky Law - to keep out a Ryan Tafazolli shot - to preserve their lead before extending it courtesy of two set-piece goals in quick succession.
Tony McMahon took the 36th-minute corner that was met by a diving header from captain Vincelot, and then delivered the free-kick from which Kilgallon headed his first City goal two minutes later.
Kilgallon delivered an important contribution at the other end when blocking a goalbound Junior Morias volley on the line 13 minutes into the second half.
Captain Baldwin hit a Posh consolation when finishing tidily from a Marcus Maddison corner before Grant and then Chicksen were dismissed by referee Keith Stroud for collecting second cautions.