Match ends, Leyton Orient 0, Bradford City 2.
Striker James Hanson scored twice as Bradford moved to within one point of the League One play-off places and left Leyton Orient in the relegation zone.
Hanson volleyed Bradford ahead after 21 minutes and then headed the second from a Filipe Morais free-kick 11 minutes later to take his season's tally to 11.
Romain Vincelot hit the bar early on for Orient but Fabio Liverani's side has won just twice at home this season.
FA Cup quarter-finalists Bradford have only lost twice since November.
Bradford were without striker Jon Stead, the scorer of their second goal in their 2-0 fifth-round Cup win over Sunderland, last Sunday with a foot injury.
But his absence was not felt as Hanson met a Mark Yeates pass with a fierce shot into the roof of the net from 18 yards to put Bradford ahead.
Hanson, 27, lasted only 45 minutes himself before being replaced but by then had nodded City into a two-goal lead which they rarely looked like relinquishing as Phil Parkinson's in-form side climbed up to seventh.
On-loan goalkeeper Alex Cisak denied Billy Clarke and Francois Zoko as Bradford looked to add further goals after the break, while Chris Dagnall twice went close for the O's as he had a shot cleared off the line by Morais and tested City keeper Jordan Pickford.
- 18PritchardSubstituted forMcAnuffat 72'minutes
- 20BartleySubstituted forWrightat 64'minutes
- 7CoxSubstituted forHedgesat 59'minutes
- 5DaviesSubstituted forMackenzieat 45'minutes
- 10ClarkeSubstituted forSheehanat 87'minutes
- 9HansonSubstituted forZokoat 45'minutesBooked at 68mins
- Trevor Kettle
- Shots on Target
Second Half ends, Leyton Orient 0, Bradford City 2.
Attempt saved. Alan Sheehan (Bradford City) left footed shot from a difficult angle and long range on the left is saved in the top centre of the goal.
Attempt saved. Ryan Hedges (Leyton Orient) right footed shot from the centre of the box is saved in the bottom right corner.
Attempt saved. Filipe Morais (Bradford City) right footed shot from outside the box is saved in the top centre of the goal.
Attempt missed. Shane Lowry (Leyton Orient) right footed shot from outside the box is too high.
David Mooney (Leyton Orient) wins a free kick in the defensive half.
Foul by Rory McArdle (Bradford City).
Substitution, Bradford City. Alan Sheehan replaces Billy Clarke.
Attempt blocked. Jobi McAnuff (Leyton Orient) right footed shot from outside the box is blocked.
Attempt saved. Chris Dagnall (Leyton Orient) header from the centre of the box is saved in the top left corner.
Corner, Leyton Orient. Conceded by Gary Mackenzie.
Corner, Leyton Orient. Conceded by Jordan Pickford.
Attempt saved. Shane Lowry (Leyton Orient) right footed shot from outside the box is saved in the top centre of the goal.
Jobi McAnuff (Leyton Orient) wins a free kick in the defensive half.
Foul by Gary Liddle (Bradford City).
Attempt saved. Chris Dagnall (Leyton Orient) right footed shot from a difficult angle on the left is saved in the bottom left corner.
Romain Vincelot (Leyton Orient) wins a free kick in the attacking half.
Foul by Andy Halliday (Bradford City).
Hand ball by Romain Vincelot (Leyton Orient).