Shaun Miller made a dream debut for Shrewsbury, coming off the bench to hit an injury-time winner to beat Bradford.

Town had the better of the first half, the game coming to life on 79 minutes when City took the lead, Andrew Davies stabbing in from close range.

Jon Taylor equalised just a minute later with his seventh goal of the season to set up a thrilling finale.

Shrewsbury end poor home run

  • Shrewsbury Town had failed to win in 10 home matches in four months since beating Notts County 1-0 on 23 November

And substitute Miller fired home in the fifth minute of stoppage time to earn Town's first home win since November.

That lifts Mike Jackson's men to within two points of safety.

Former Crewe Alexandra striker Miller's signing from Sheffield United was announced just an hour before kick-off.

He came on in a double switch on 67 minutes, along with midfielder Aaron Wildig, who made his first appearance since 11 January, having missed 11 matches with a hamstring injury.

Shrewsbury manager Mike Jackson told BBC Radio Shropshire:

"It's a great reaction when we are 1-0 down and everyone is writing us off. It's a credit to all the players' efforts.

"When the Bradford goal went in I thought 'Here we go again', but we made changes, passed the ball better and to get level straight away was a great reaction. And it wasn't an easy finish to win the game.

"There were some very good positives. We have defended set-plays really well but probably sat a little deep in the second half.

"We have put in a lot of effort over the past few weeks. I wouldn't agree with anyone who says we haven't deserved this. All the players have given us something to think about ready for Tuesday night."

Lineup, Bookings (2) & Substitutions (5)

Shrewsbury Town

  • 25 Anyon
  • 02 Grandison
  • 27 Mills
  • 08 McAllister (Wildig - 67' )
  • 18 Goldson
  • 16 Mkandawire
  • 11 Taylor
  • 29 Hall
  • 24 Eaves Booked (Atajic - 76' )
  • 10 Foley (Miller - 67' )
  • 17 Parry

Substitutes

  • 01 Weale
  • 03 Jacobson
  • 06 Winfield
  • 07 Miller
  • 15 Wildig
  • 22 Woods
  • 26 Atajic

Bradford City

  • 01 McLaughlan
  • 02 Darby
  • 06 Drury
  • 04 Dolan Booked
  • 05 Davies
  • 23 McArdle
  • 32 Bennett
  • 24 Doyle (Jones - 43' )
  • 21 McLean (Thompson - 90' )
  • 09 Hanson
  • 28 Reach

Substitutes

  • 10 Gray
  • 11 Thompson
  • 12 Jameson
  • 16 McHugh
  • 18 Jones
  • 20 De Vita
  • 22 Bates
Ref: Darren Sheldrake
Att: 5,181

Match Stats

Shots

15 6

On target

6 4

Corners

9 6

Fouls

13 11

Live Text Commentary

Full time

Full Time Match ends, Shrewsbury Town 2, Bradford City 1.

90:00 +4:54 Full time

Full Time Second Half ends, Shrewsbury Town 2, Bradford City 1.

90:00 +4:12 Goal scored

Goal! Goal! Shrewsbury Town 2, Bradford City 1. Shaun Miller (Shrewsbury Town) right footed shot from the centre of the box to the bottom right corner.

90:00 +2:54

Attempt missed. Asa Hall (Shrewsbury Town) right footed shot from outside the box misses to the right.

90:00 +1:35

Foul by Asa Hall (Shrewsbury Town).

90:00 +1:35

Kyle Bennett (Bradford City) wins a free kick in the defensive half.

90:00 +1:05

Attempt missed. Shaun Miller (Shrewsbury Town) with an attempt from the centre of the box is close, but misses to the left.

90:00 +0:42

Corner, Shrewsbury Town. Conceded by Rory McArdle.

90:00 +0:31

Attempt blocked. Jon Taylor (Shrewsbury Town) right footed shot from outside the box is blocked.

89:05 Substitution

Substitution Substitution, Bradford City. Garry Thompson replaces Aaron McLean.

85:11

Delay over. They are ready to continue.

85:08

Delay over. They are ready to continue.

84:33

Delay in match Aaron McLean (Bradford City) because of an injury.

83:40

Attempt blocked. Jon Taylor (Shrewsbury Town) header from the centre of the box is blocked.

82:44

Attempt missed. Shaun Miller (Shrewsbury Town) right footed shot from outside the box is close, but misses to the right.

79:48 Goal scored

Goal! Goal! Shrewsbury Town 1, Bradford City 1. Jon Taylor (Shrewsbury Town) left footed shot from the centre of the box to the high centre of the goal. Assisted by Jermaine Grandison with a cross.

78:38 Goal scored

Goal! Goal! Shrewsbury Town 0, Bradford City 1. Andrew Davies (Bradford City) right footed shot from very close range to the bottom right corner. Assisted by Matthew Dolan with a cross.

77:48

Corner, Bradford City. Conceded by Connor Goldson.

77:16

Corner, Bradford City. Conceded by Tamika Mkandawire.

77:02

Corner, Bradford City. Conceded by Tamika Mkandawire.

76:54

Attempt blocked. Adam Reach (Bradford City) right footed shot from the centre of the box is blocked.

76:20

Corner, Bradford City. Conceded by Tamika Mkandawire.

75:41 Substitution

Substitution Substitution, Shrewsbury Town. Bahrudin Atajic replaces Tom Eaves.

72:36

Connor Goldson (Shrewsbury Town) wins a free kick in the attacking half.

72:36

Foul by James Hanson (Bradford City).

72:00

Corner, Bradford City. Conceded by Jermaine Grandison.

70:14

Corner, Shrewsbury Town. Conceded by Andrew Davies.

69:41

Shaun Miller (Shrewsbury Town) wins a free kick in the attacking half.

69:41

Foul by Andrew Davies (Bradford City).

68:32

Foul by Asa Hall (Shrewsbury Town).

68:32

Stephen Darby (Bradford City) wins a free kick in the attacking half.

66:24 Substitution

Substitution Substitution, Shrewsbury Town. Aaron Wildig replaces David McAllister.

66:04 Substitution

Substitution Substitution, Shrewsbury Town. Shaun Miller replaces Sam Foley.

62:48

Delay in match David McAllister (Shrewsbury Town) because of an injury.

62:08 Booking

Booking Matthew Dolan (Bradford City) is shown the yellow card.

62:00

David McAllister (Shrewsbury Town) wins a free kick in the attacking half.

61:59

Foul by Matthew Dolan (Bradford City).

60:53

Corner, Shrewsbury Town. Conceded by Adam Drury.

59:37

Attempt saved. Matthew Dolan (Bradford City) right footed shot from outside the box is saved in the top centre of the goal.

58:01

Foul by David McAllister (Shrewsbury Town).

58:01

Matthew Dolan (Bradford City) wins a free kick in the defensive half.

57:30

Foul by Tom Eaves (Shrewsbury Town).

57:30

Rory McArdle (Bradford City) wins a free kick on the left wing.

55:38

Attempt saved. Asa Hall (Shrewsbury Town) left footed shot from outside the box is saved in the top centre of the goal.

51:06

David McAllister (Shrewsbury Town) wins a free kick in the attacking half.

51:06

Foul by James Hanson (Bradford City).

50:42

Attempt missed. Sam Foley (Shrewsbury Town) header from very close range is just a bit too high following a corner.

50:08

Corner, Shrewsbury Town. Conceded by Andrew Davies.

49:31

Joseph Mills (Shrewsbury Town) wins a free kick on the right wing.

49:31

Foul by James Hanson (Bradford City).

47:21

Attempt saved. James Hanson (Bradford City) left footed shot from the centre of the box is saved in the top centre of the goal.

45:00

Second Half begins Shrewsbury Town 0, Bradford City 0.

45:00 +2:00 Half time

Half Time First Half ends, Shrewsbury Town 0, Bradford City 0.

45:00 +0:50

Foul by Joseph Mills (Shrewsbury Town).

45:00 +0:50

Aaron McLean (Bradford City) wins a free kick on the left wing.

43:11

David McAllister (Shrewsbury Town) wins a free kick in the attacking half.

43:11

Foul by Matthew Dolan (Bradford City).

42:46 Substitution

Substitution Substitution, Bradford City. Gary Jones replaces Nathan Doyle because of an injury.

42:03 Booking

Booking Tom Eaves (Shrewsbury Town) is shown the yellow card.

41:45

Hand ball by Tom Eaves (Shrewsbury Town).

38:36

Foul by Tom Eaves (Shrewsbury Town).

38:36

Andrew Davies (Bradford City) wins a free kick in the attacking half.

37:38

Foul by Tom Eaves (Shrewsbury Town).

37:38

Adam Drury (Bradford City) wins a free kick in the defensive half.

35:53

Sam Foley (Shrewsbury Town) wins a free kick in the defensive half.

35:53

Foul by Matthew Dolan (Bradford City).

32:26

Corner, Bradford City. Conceded by Tamika Mkandawire.

30:08

Foul by Sam Foley (Shrewsbury Town).

30:08

Aaron McLean (Bradford City) wins a free kick in the defensive half.

29:35

Foul by Tom Eaves (Shrewsbury Town).

29:35

Rory McArdle (Bradford City) wins a free kick in the defensive half.

27:22

Corner, Shrewsbury Town. Conceded by Adam Reach.

26:55

Attempt saved. Asa Hall (Shrewsbury Town) left footed shot from outside the box is saved in the bottom left corner.

25:10

Foul by Connor Goldson (Shrewsbury Town).

25:10

Aaron McLean (Bradford City) wins a free kick in the defensive half.

24:45

Attempt saved. Aaron McLean (Bradford City) right footed shot from the centre of the box is saved in the bottom right corner.

24:12

Foul by Tom Eaves (Shrewsbury Town).

24:12

Nathan Doyle (Bradford City) wins a free kick in the attacking half.

23:31

David McAllister (Shrewsbury Town) wins a free kick in the attacking half.

23:31

Foul by Aaron McLean (Bradford City).

22:04

Hand ball by David McAllister (Shrewsbury Town).

20:59

Attempt saved. Sam Foley (Shrewsbury Town) left footed shot from outside the box is saved in the top left corner.

20:46

Attempt blocked. Connor Goldson (Shrewsbury Town) header from the centre of the box is blocked.

20:27

Corner, Shrewsbury Town. Conceded by Andrew Davies.

20:16

Attempt blocked. Tom Eaves (Shrewsbury Town) left footed shot from outside the box is blocked.

19:03

Hand ball by Aaron McLean (Bradford City).

17:45

Corner, Shrewsbury Town. Conceded by Adam Reach.

16:49

Jon Taylor (Shrewsbury Town) wins a free kick on the right wing.

16:49

Foul by Adam Reach (Bradford City).

10:18

Corner, Shrewsbury Town. Conceded by Stephen Darby.

5:50

Foul by James Hanson (Bradford City).

5:50

Asa Hall (Shrewsbury Town) wins a free kick in the attacking half.

5:32

Attempt saved. Jermaine Grandison (Shrewsbury Town) header from the centre of the box is saved in the top centre of the goal.

5:01

Corner, Shrewsbury Town. Conceded by Stephen Darby.

3:58

Attempt missed. Tom Eaves (Shrewsbury Town) header from the right side of the six yard box is close, but misses to the right.

3:21

Attempt missed. James Hanson (Bradford City) right footed shot from the centre of the box is close, but misses to the right.

0:00

First Half begins.

0:00

Lineups are announced and players are warming up.

Live data and text provided by our data suppliers