Match ends, Bristol Rovers 2, Coventry City 2.
Coventry City twice came from behind to draw 2-2 at League One rivals Bristol Rovers and force a replay.
Jonson Clarke-Harris put the home side in front in the sixth minute from the penalty spot.
Liam Walsh levelled with a low 20-yard shot in the 31st minute but Bristol Rovers captain Tony Craig headed them back in front a minute later.
The first-half hero handed Coventry a second equaliser, turning a low Walsh cross into his own net on 53 minutes.
Bristol Rovers' top scorer Clarke-Harris fired home his 12th goal of the season to give the hosts the perfect start.
Coventry's Kyle McFadzean was booked after bringing down Cameron Hargreaves in the area following a poor pass out by goalkeeper Marko Marosi and the former Sky Blues striker ensured the mistake was punished from the penalty spot.
Bristol Rovers' stand-in goalkeeper Jordi van Stappershoef produced a fine reaction save with his right boot to ensure his side remained in front, deflecting what looked like a certain equaliser from Jordan Shipley in the 20th minute.
He could do nothing to stop Walsh's long-range strike, but the hosts hit back almost immediately as Craig rose highest to head home Liam Sercombe's free-kick from the right.
Bristol Rovers endured a rollercoaster start to the second half, Ed Upson seeing his volley come crashing back off the Coventry upright before Craig stuck out a boot to turn in Walsh's pull-back, denying manager Ben Garner a first win in his fourth game in charge.
The fourth-round draw will be made live on BBC One on Monday ahead of the Arsenal v Leeds United tie. Coverage starts at 19:30 GMT.
Bristol Rovers manager Ben Garner told BBC Radio Bristol: "It's probably a fair result on the balance of the game but we are obviously disappointed not to win it. A decent performance.
"There are signs we are going in the right direction, a lot of positives in there today. Pleasing that the first goal came off a press and we're delighted to get one from a set-piece as well.
"We are getting there, we need to create a little bit more in open play, we need to have a little bit more threat and penetration about us, but we are working on that and will get there."
Coventry manager Mark Robins told BBC Radio Coventry and Warwickshire: "I am frustrated because we gave them the two goals. We started brightly but then contrived to give them a penalty.
"Then you find yourself back in the game and I thought we played quite well before they got themselves back in front with a set-play goal. Then we have to come back again.
"We showed good character [to equalise again], created some good chances but just couldn't take them today to finish the tie off."
- 1van Stappershoef
- 15KilgourBooked at 76mins
- 36HargreavesSubstituted forAdeboyejoat 88'minutes
- 7SercombeBooked at 78mins
- 11LeahySubstituted forHolmes-Dennisat 83'minutes
- 10NicholsBooked at 36minsSubstituted forBennettat 64'minutes
- 9Clarke-HarrisBooked at 44mins
- 5McFadzeanBooked at 5mins
- 23DaboBooked at 45mins
- 31McCallumSubstituted forMasonat 84'minutes
- 25WestbrookeSubstituted forAllenat 73'minutes
- 26ShipleySubstituted forO'Hareat 51'minutes
- Gavin Ward
- Shots on Target
Second Half ends, Bristol Rovers 2, Coventry City 2.
Attempt saved. Jonson Clarke-Harris (Bristol Rovers) left footed shot from outside the box is saved in the centre of the goal.
Jamie Allen (Coventry City) wins a free kick in the attacking half.
Foul by Kyle Bennett (Bristol Rovers).
Attempt missed. Tony Craig (Bristol Rovers) header from the left side of the six yard box is just a bit too high following a corner.
Corner, Bristol Rovers. Conceded by Kyle McFadzean.
Attempt saved. Matt Godden (Coventry City) right footed shot from the right side of the box is saved in the top centre of the goal.
Substitution, Bristol Rovers. Victor Adeboyejo replaces Cameron Hargreaves.
Callum O'Hare (Coventry City) wins a free kick in the attacking half.
Foul by Ed Upson (Bristol Rovers).
Attempt missed. Jamie Allen (Coventry City) right footed shot from the left side of the box misses to the right.
Substitution, Coventry City. Brandon Mason replaces Sam McCallum because of an injury.
Substitution, Bristol Rovers. Tareiq Holmes-Dennis replaces Luke Leahy.
Fankaty Dabo (Coventry City) wins a free kick in the defensive half.
Foul by Luke Leahy (Bristol Rovers).
Attempt missed. Luke Leahy (Bristol Rovers) left footed shot from the left side of the six yard box is too high.
Liam Sercombe (Bristol Rovers) is shown the yellow card for a bad foul.
Jamie Allen (Coventry City) wins a free kick on the left wing.
Foul by Liam Sercombe (Bristol Rovers).