Attendance: 17,889 (410 visitors)
The Bantams made it back-to-back home wins in the week and moved into the top six in the process with a Yorkshire derby victory over Doncaster Rovers at the Coral Windows Stadium.
Fresh from his impressive display against Burton Albion in midweek, Jamie Proctor opened the scoring for City with a close range header from Billy Clarke's cross after only seven minutes.
The in-form striker then doubled his and City's tally for the afternoon early after the break when he guided a great header into the far corner from a James Meredith cross.
With City looking on top as the second period progressed, Tony McMahon and Billy Clarke went close as Phil Parkinson's men pushed for a third to finish the game off completely.
Unable to get the extra goal their play deserved though, City unfortunately had to endure a nervy ending to the contest before they could finally clinch the three points.
Andy Williams went close with a curling drive eight minutes from the end before his strike partner Nathan Tyson did manage to put a goal back in the final minute of normal time.
Williams flicked on Luke McCullough's long ball forward to find Tyson in just enough space in the box to prod home past Ben Williams.
Pushing for an equaliser by this stage, Doncaster nearly snatched a barely deserved point in injury time when Lynden Gooch found Williams unmarked in the box but his effort deflected wide of the post.
The win, coupled with Barnsley's home defeat to Southend United, puts Parkinson's side three points clear in the final Play-Off spot with ten games of the regular season to go.
FT: Bradford City 2 Doncaster Rovers 1
90+3min: Stuckmann goes up for the resulting corner but City manage to clear the danger from the Gooch delivery.
90+2min: Doncaster take a short corner with Gooch dribbling into the box before finding Williams unmarked. The striker shots for goal and the effort is deflected behind.
90+2min: SUB - Doncaster bring on Gary MacKenzie for Calder.
90+1min: Stewart's cross into the box is cleared as far as Taylor-Sinclair just outside the box and the defender shoots over.
90+1min: Hanson's low cross into the box deflects out into the path of McMahon but his shot from the edge of the box is held by Stuckmann.
90min: There will be three minutes of time added on at the end of the match.
90min: GOAL - Bradford City 2 Doncaster Rovers 1 - The visitors have a goal back in the ninetieth minute when McCullough's long ball forward is flicked on by Williams and Tyson gets in enough space in the box to poke home past Ben Williams.
88min: Calder brushes off an attempted challenge from McMahon before firing in a drive from outside the area that goes wide.
87min: Calder plays the ball wide to Williams inside the box but the striker's low curling drive bounces harmlessly wide of Ben Williams' far post.
83min: Evina's ball down the line finds Williams over by Doncaster' left flank. Williams turns in-field and away from Nathan Clarke before moving into the box and curling a testing strike that whistles narrowly past Ben Williams' far post.
82min: SUB - The Bantams bring on Wes Thomas for Billy Clarke.
77min: Reid and Billy Clarke enjoy a neat interchange of passing, with the Irish striker's back-heel playing Reid in with a chance to run towards Doncaster's goal. Reid strides into the box but a recovering McCullough gets an important tackle in to put the ball behind for a corner.
74min: Reid twists and turns away from Middleton before firing in a searching cross that McMahon heads onto the roof of the net from the far side.
72min: SUB - The Bantams bring on James Hanson for Proctor.
71min: From McMahon resulting corner, Proctor heads the ball down for Nathan Clarke but his prod for goal is deflected over the bar.
70min: Burke bursts out of defence and into Doncaster's half of the pitch before playing the ball out to Proctor. The striker drives into the box, cuts inside and shoots for goal but his effort is blocked by Luke McCullough. McMahon and then Clarke keep the attack alive, however, with the latter's effort for goal deflected behind for a corner.
69min: McMahon's ball from deep into the box is headed down by Proctor, allowing Billy Clarke to pick up possession just outside the box. Clarke bursts past Butler and Taylor-Sinclair before seeing his shot saved by the legs of Stuckmann.
63min: From Gooch's corner, Taylor-Sinclair heads down into the mix but Williams can only scoop over from close range while under pressure from Darby.
62min: Reid's cross into the box is cleared by Butler before Proctor picks up the loose ball, allowing Billy Clarke to nip in and fire wide from just outside the area.
61min: Evina's teasing ball across the six yard box narrowly misses the diving Tyson and Williams before City can clear their lines over by the far side.
59min: Reid's searching cross into the box is volleyed over by an unmarked McMahon from roughly ten yards out.
58min: Cedric Evina's ball into the box just evades the clutches of Williams. Stewart puts the ball back into the middle but Williams heads over.
56min: SUB - Doncaster bring on Cameron Stewart for Chaplow.
54min: McMahon's free-kick from deep into the box is headed on by Proctor towards Evans but the Welshman's low drive is straight at Stuckmann.
49min: GOAL!!!!!!!!!!!!!!!!! Bradford City 2 Doncaster Rovers 0 - Proctor doubles City's lead! After being released into space down City's left flank by Reid, Meredith whips in a superb cross into the area and Proctor flicks a brilliant header into the far corner.
46min: The Bantams kick off the second period.
HT: Bradford City 1 Doncaster Rovers 0
45min: Mainly due to the brief injury stoppages in the opening half, there will be three minutes of time added on at the end of the first period.
45min: McMahon goes for the top corner with a free-kick from roughly 25 yards but the effort narrowly misses the target, hitting the roof of Stuckmann's net instead.
43min: A cross from Billy Clarke is kicked clear by Butler but only as far as the waiting Cullen around just outside the box. Cullen gets the ball out of his feet before firing in a rising drive that goes narrowly over the bar.
41min: McMahon is now back on the pitch for the Bantams.
40min: McMahon has to leave the pitch temporarily for treatment on a cut to his knee, leaving City to play on with only ten men for the time being.
37min: YELLOW CARD - Josh Cullen is booked for bringing down Riccardo Calder midway into City's half of the pitch.
36min: Aaron Taylor-Sinclair's hanging ball deep into City territory has James Meredith in a spot of bother with Williams lurking. As the ball bounces into the box, Meredith appears to bundle into the back of Williams accidentally. The visiting away fans roar for a spot-kick but referee Mr Neil Swarbrick is not interested and allows play to continue.
34min: Tyson is back on his feet once again and play continues.
33min: Tyson is now down for the visitors and receiving treatment, resulting in another brief halt in play.
31min: Tyson is played into a pocket of space inside the Bantams penalty area but his cross flies narrowly out of the reach of Williams and Burke in the middle before going out for a throw-in over by the far side.
30min: SUB - Harry Middleton now comes on to replace Grant.
28min: Play is briefly halted due to an injury to Grant, it looks like he might have to be replaced. Grant limps off, temporarily leaving Doncaster down to ten men.
24min: Kyel Reid bursts clear down City's left flank before crossing into the middle. Proctor is lurking with intent around eight yards out but he can't quite get a true connection on Reid's delivery and the ball bounces through into the clutches of Stuckmann.
18min: A booming kick forward from Stuckmann has Reece Burke back-pedaling and Williams has to race from his goal to punch the ball clear with Andy Williams lurking.
9min: Stephen Darby fizzes the ball low into the six yard box, Billy Clarke tries to flick for goal but narrowly misses, allowing Andy Butler to clear.
7min: GOAL!!!!!!!!!!!! Bradford City 1 Doncaster Rovers 0 - The Bantams take the lead through Jamie Proctor! After receiving a pass from Tony McMahon, Proctor plays the ball wide to Billy Clarke. The Irish attacker floats a delightful ball into the box for an unmarked Proctor to crash a header home past Thorsten Stuckmann from close range.
6min: Nathan Tyson strikes for goal from outside the box but his rising drive sails a good distance over the bar.
5min: Conor Grant tries his luck from outside the box but his low drive from distance bobbles harmlessly wide of Ben Williams' far post.
3min: From Lee Evans' long throw-in into the box, Doncaster manage to eventually counter-attack from through Lynden Gooch. After racing deep into City territory, the Doncaster attacker tries to play Richard Chaplow into space inside the area but Nathan Clarke is well-positioned to intercept the pass and put the ball behind for a corner.
0min: Doncaster Rovers kick off the match. The Bantams will attack towards the T.L Dallas Stand end in the first period.
BRADFORD CITY LINE UP:
Williams, Darby, N Clarke, Burke, Meredith, McMahon, Evans, Cullen, Reid, B Clarke, Proctor
Subs: Cracknell, Marshall, Hanson, Knott, Leigh, Routis, Thomas
Bradford City substitutions:
Hanson for Proctor (72), Thomas for B Clarke (82)
Bradford City cautions:
DONCASTER ROVERS LINE UP:
Stuckmann, Evina, McCullough, Butler, Taylor-Sinclair, Grant, Chaplow, Calder, Gooch, Tyson, Williams
Subs: Jones, MacKenzie, Keegan, Mandeville, Stewart, Middleton, Davies
Doncaster Rovers substitutions:
Middleton for Grant (30), Stewart for Chaplow (56), MacKenzie for Calder (90+2)
Referee: N Swarbrick
Assistant Referee: A Fox
Assistant Referee: C Hatzidakis
Fourth Official: G Salisbury