League One
Oxford Utd1Bradford0

Oxford United 1-0 Bradford City

Jamie Mackie fired a stoppage-time winner to give Oxford victory over relegation rivals Bradford in controversial circumstances at a windswept Kassam Stadium.

Seconds after Bantams substitute Lewis O'Brien had shot wide at the far post from three yards on a rare counter-attack, Oxford found the net when Gavin Whyte's shot ballooned up and substitute Mackie superbly volleyed high into the goal.

But the match finished with chaotic scenes, as Bradford's players urged referee Andy Davies to speak to his assistant, believing they should have been awarded a penalty.

After a long stoppage for consultations between the officials and vehement protests from the visiting camp, the referee confirmed that the goal stood.

The U's finishing had previously been poor, with most shots off-target.

And, when top scorer James Henry did eventually get his sights right from a 20-yard free-kick in the 63rd minute, keeper Richard O'Donnell saved well to his left.

City created few chances, one of their best coming when centre-half Anthony O'Connor saw his downward header at a corner 16 minutes from time bounce down and over the bar.

Bradford had to cope with the wind against them in the second half, which started with Whyte and then Jordan Graham again firing over but Mackie had the last word.

Match report supplied by the Press Association.

Line-ups

Oxford Utd

  • 1Eastwood
  • 23Long
  • 4Dickie
  • 5Nelson
  • 14Ruffels
  • 40KashiBooked at 90mins
  • 8Brannagan
  • 18GrahamSubstituted forBrowneat 63'minutes
  • 17HenrySubstituted forMackieat 71'minutesBooked at 89mins
  • 16Whyte
  • 9Sinclair

Substitutes

  • 3Garbutt
  • 6Hanson
  • 10Browne
  • 15Mousinho
  • 19Mackie
  • 24Sykes
  • 27Stevens

Bradford

  • 1O'Donnell
  • 38Caddis
  • 22Knight-Percival
  • 6O'Connor
  • 3Chicksen
  • 17ClarkeSubstituted forO'Brienat 77'minutes
  • 21AkpanBooked at 84mins
  • 40BallBooked at 41minsSubstituted forMillerat 56'minutes
  • 16ButterfieldSubstituted forPayneat 82'minutes
  • 18Anderson
  • 9Doyle

Substitutes

  • 10Payne
  • 12Miller
  • 13Wilson
  • 20Patrick
  • 35Staunton
  • 39O'Brien
  • 44Wright
Referee:
Andy Davies
Attendance:
6,681

Match Stats

Home TeamOxford UtdAway TeamBradford
Possession
Home50%
Away50%
Shots
Home26
Away4
Shots on Target
Home5
Away0
Corners
Home5
Away3
Fouls
Home12
Away9

Live Text

Match ends, Oxford United 1, Bradford City 0.

Full Time

Second Half ends, Oxford United 1, Bradford City 0.

Nathaniel Knight-Percival (Bradford City) wins a free kick in the attacking half.

Foul by Jamie Mackie (Oxford United).

Goal!

Goal! Oxford United 1, Bradford City 0. Jamie Mackie (Oxford United) right footed shot from the right side of the box to the top right corner.

Attempt missed. Lewis O'Brien (Bradford City) left footed shot from the centre of the box misses to the right.

Booking

Ahmed Kashi (Oxford United) is shown the yellow card for a bad foul.

Foul by Ahmed Kashi (Oxford United).

George Miller (Bradford City) wins a free kick in the defensive half.

Corner, Oxford United. Conceded by Paul Caddis.

Booking

Jamie Mackie (Oxford United) is shown the yellow card.

Attempt missed. Cameron Brannagan (Oxford United) right footed shot from outside the box is just a bit too high.

Cameron Brannagan (Oxford United) wins a free kick in the defensive half.

Foul by Hope Akpan (Bradford City).

Attempt missed. Jerome Sinclair (Oxford United) right footed shot from the right side of the six yard box misses to the right.

Attempt saved. Cameron Brannagan (Oxford United) right footed shot from the left side of the box is saved in the centre of the goal.

Corner, Oxford United. Conceded by Paul Caddis.

Delay in match Marcus Browne (Oxford United) because of an injury.

Booking

Hope Akpan (Bradford City) is shown the yellow card for a bad foul.

Corner, Oxford United. Conceded by Adam Chicksen.

Substitution

Substitution, Bradford City. Jack Payne replaces Jacob Butterfield.

Foul by Marcus Browne (Oxford United).

Jack Payne (Bradford City) wins a free kick in the defensive half.

Foul by Jerome Sinclair (Oxford United).

Jermaine Anderson (Bradford City) wins a free kick on the right wing.

Substitution

Substitution, Bradford City. Lewis O'Brien replaces Billy Clarke.

Delay in match Jamie Mackie (Oxford United) because of an injury.

Attempt missed. Gavin Whyte (Oxford United) right footed shot from outside the box is close, but misses to the right.

Attempt missed. Gavin Whyte (Oxford United) right footed shot from outside the box is close, but misses to the right.

Attempt missed. Marcus Browne (Oxford United) header from the left side of the six yard box misses to the right.

Attempt missed. Anthony O'Connor (Bradford City) header from the centre of the box is too high following a corner.

Corner, Bradford City. Conceded by Curtis Nelson.

Foul by Cameron Brannagan (Oxford United).

George Miller (Bradford City) wins a free kick in the defensive half.

Jamie Mackie (Oxford United) wins a free kick on the right wing.

Foul by Adam Chicksen (Bradford City).

Substitution

Substitution, Oxford United. Jamie Mackie replaces James Henry.

Marcus Browne (Oxford United) wins a free kick on the right wing.

Foul by Paul Caddis (Bradford City).

Billy Clarke (Bradford City) wins a free kick in the defensive half.

goal

As It Stood

TeamPWDLFAGDPts
1Luton382311472314180
2Barnsley382112564283675
3Sunderland371916264343073
4Portsmouth382011766412571
5Charlton381910955371867
6Doncaster3715121061461557
7Coventry38168144342156
8Peterborough381510135854455
9Blackpool381314113940-153
10Fleetwood381410144941852
11Burton381311144844450
12Plymouth38129174759-1245
13Bristol Rovers371111153737044
14Wycombe381111164758-1144
15Accrington361111143849-1144
16Gillingham38128184961-1244
17Scunthorpe38128184664-1844
18Shrewsbury381013154250-843
19Oxford Utd381013154454-1043
20Southend38126204755-842
21Walsall38119184260-1842
22Wimbledon38116213253-2139
23Rochdale37108194475-3138
24Bradford38106224263-2136
View full League One table

Top Stories