Ryan Jarvis scored at both ends as Torquay twice came from behind to secure their survival in League Two.
Rovers led through Tom Hitchcock before Rovers' Michael Brown had a penalty saved by Michael Poke.
Elliot Benyon fired in to level before Jarvis headed past his own keeper.
Jarvis then pounced at the other end after Aaron Downes' header was saved to make it 2-2 and set up Benyon for the third, before Matt Harrold headed home a late leveller for the visitors.
The draw means Torquay, who only needed a draw to secure their Football League status, end the season on 53 points, two clear of the second relegation spots.
The Gulls could have further increased their lead when Ashley Yeoman almost got on the end of a 65th-minute cross, while the young Gulls striker also had a shout for a penalty turned down when his shot appeared to hit a defender's arm.
VIEW FROM THE DRESSING ROOM
Bristol Rovers manager John Ward tells BBC Bristol:
"It was a typical English football end-of-season game with a lot of excitement, thrills and spills and two teams that were at each other right the way for ninety minutes.
"I think that sums it up in a sense. People can say we haven't got the same things to play for.
"Then right at the death from our point of view the script was written when Matt Harrold scores his goal after seven-and-half months out of the game.
"It was a really exciting afternoon, even though maybe you could look at blame for goals, but its English football, it's what happens. It was a great afternoon."
Full Time The referee blows for the end of the match.
90:00 +4:23 Booking
Booking Matt Harrold is cautioned.
Michael Smith provided the assist for the goal.
90:00 +3:11 Goal scored
Goal! - Matt Harrold - Torquay 3 - 3 Bristol R Matt Harrold grabs a headed goal from inside the six-yard box. Torquay 3-3 Bristol Rovers.
The ball is delivered by Michael Smith,
Ashley Yeoman has an effort from just inside the box that misses to the left of the goal.
Michael Smith crosses the ball, save made by Michael Poke.
The ball is sent over by Lee Brown, clearance by Aaron Downes.
Free kick awarded for a foul by Aaron Downes on Matt Harrold. Oliver Norburn takes the indirect free kick.
Fabian Broghammer produces a cross, blocked by Joe Oastler. Corner from the left by-line taken by Mitch Harding, Header by Matt Harrold from deep inside the penalty area misses to the left of the target.
Ollie Clarke gives away a free kick for an unfair challenge on Billy Bodin. Michael Poke takes the indirect free kick.
Fabian Broghammer delivers the ball, Michael Poke makes a save.
Substitution Oumare Tounkara joins the action as a substitute, replacing Tom Hitchcock.
Free kick awarded for a foul by Lee Brown on Ryan Jarvis. Kevin Nicholson takes the indirect free kick.
Booking Tom Hitchcock booked for dissent.
Ollie Clarke takes a shot. Blocked by Billy Bodin.
Damon Lathrope makes a clearance.
Substitution Ryan Brunt goes off and Matt Harrold comes on.
Corner taken by Fabian Broghammer from the right by-line played to the near post,
Elliot Benyon fouled by Tom Parkes, the ref awards a free kick. Lee Mansell has a direct shot on goal from the free kick, Ollie Clarke makes a clearance. Billy Bodin is caught offside. Free kick taken by Steve Mildenhall.
Free kick awarded for an unfair challenge on Kevin Nicholson by Tom Hitchcock. Indirect free kick taken by Michael Poke.
Damon Lathrope sends in a cross, save made by Steve Mildenhall. A cross is delivered by Mitch Harding, Effort on goal by Fabian Broghammer from just inside the area clears the bar.
Substitution (Bristol Rovers) makes a substitution, with Mitch Harding coming on for Ellis Harrison.
Assist on the goal came from Ryan Jarvis.
67:50 Goal scored
Goal! - Elliot Benyon - Torquay 3 - 2 Bristol R Elliot Benyon fires in a goal from inside the six-yard box low into the middle of the goal. Torquay 3-2 Bristol Rovers.
Free kick awarded for a foul by Ellis Harrison on Kevin Nicholson. Lee Mansell takes the indirect free kick.
The ball is swung over by Ryan Jarvis, save by Steve Mildenhall.
Outswinging corner taken by Kevin Nicholson from the right by-line.
Unfair challenge on Aaron Downes by Ryan Brunt results in a free kick. Michael Poke takes the indirect free kick.
Lee Mansell takes a shot. Steve Mildenhall makes a save.
61:33 Goal scored
Goal! - Ryan Jarvis - Torquay 2 - 2 Bristol R Ryan Jarvis scores a goal from close range to the bottom left corner of the goal. Torquay 2-2 Bristol Rovers.
Inswinging corner taken by Lee Mansell from the left by-line played to the near post, Aaron Downes takes a shot. Save by Steve Mildenhall.
Ryan Jarvis takes a shot from just outside the penalty area clears the crossbar.
Tom Hitchcock challenges Brian Saah unfairly and gives away a free kick. Kevin Nicholson restarts play with the free kick.
54:07 Goal scored
Goal! - Ryan Jarvis - Torquay 1 - 2 Bristol R Headed own goal by Ryan Jarvis. Torquay 1-2 Bristol Rovers.
Ryan Jarvis concedes a free kick for a foul on Lee Brown. Free kick taken by Lee Brown. Fabian Broghammer fouled by Joe Oastler, the ref awards a free kick.
Booking Elliot Benyon is shown a yellow card for unsporting behaviour.
The assist for the goal came from Joe Oastler.
51:29 Goal scored
Goal! - Elliot Benyon - Torquay 1 - 1 Bristol R Elliot Benyon scores a goal from inside the area to the bottom left corner of the goal. Torquay 1-1 Bristol Rovers.
Joe Oastler delivers the ball,
Centre by Lee Mansell.
Corner taken by Lee Mansell from the left by-line, Tom Parkes makes a clearance.
Penalty taken by Lee Brown saved by Michael Poke. Torquay 0-1 Bristol Rovers.
Booking Michael Poke shown a yellow card.
Brian Saah challenges Ryan Brunt unfairly and gives away a Penalty.
Free kick awarded for an unfair challenge on Ryan Brunt by Brian Saah. Lee Brown restarts play with the free kick.
The second half begins.
45:00 +2:21 Half time
Half Time The ref blows to end the first period.
Billy Bodin is ruled offside.
45:00 +0:24 Booking
Booking Ellis Harrison receives a caution.
The ball is sent over by Ashley Yeoman.
Corner taken by Kevin Nicholson from the right by-line to the near post, clearance by Ellis Harrison.
Ollie Clarke challenges Ryan Jarvis unfairly and gives away a free kick. Free kick crossed by Kevin Nicholson, save made by Steve Mildenhall.
Lee Mansell gives away a free kick for an unfair challenge on Ollie Clarke. Direct free kick taken by Fabian Broghammer.
Foul by Mark McChrystal on Elliot Benyon, free kick awarded. Free kick taken by Damon Lathrope. Billy Bodin has an effort at goal from outside the box which goes wide left of the goal.
Effort from the edge of the penalty box by Oliver Norburn goes wide of the right-hand upright.
Ellis Harrison fouled by Lee Mansell, the ref awards a free kick. Tom Parkes takes the direct free kick.
A cross is delivered by Elliot Benyon, clearance made by Michael Smith.
Centre by Ryan Jarvis.
Free kick awarded for a foul by Ryan Brunt on Joe Oastler. Joe Oastler takes the indirect free kick.
Shot by Damon Lathrope from deep inside the penalty area misses to the right of the goal. Shot from just outside the box by Fabian Broghammer misses to the left of the target.
30:12 Goal scored
Goal! - Tom Hitchcock - Torquay 0 - 1 Bristol R Tom Hitchcock finds the back of the net with a goal from inside the area high into the middle of the goal. Torquay 0-1 Bristol Rovers.
Foul by Ryan Brunt on Joe Oastler, free kick awarded. Joe Oastler takes the free kick.
Effort from inside the area by Tom Hitchcock misses to the left of the goal.
A cross is delivered by Kevin Nicholson, save made by Steve Mildenhall.
The ball is delivered by Lee Mansell, blocked by Michael Smith.
Centre by Kevin Nicholson, clearance by Lee Brown. Lee Mansell takes the inswinging corner, Ollie Clarke makes a clearance.
Lee Mansell takes the inswinging corner, Steve Mildenhall makes a save.
A cross is delivered by Ryan Jarvis.
Ryan Brunt produces a left-footed shot from just outside the box that misses to the right of the goal.
Fabian Broghammer produces a right-footed shot from outside the penalty box and misses right.
Joe Oastler sends in a cross, Tom Parkes makes a clearance. Corner from the right by-line taken by Kevin Nicholson, Header from close range by Brian Saah misses to the right of the goal.
Joe Oastler produces a cross.
Billy Bodin takes a shot. Save by Steve Mildenhall.
Kevin Nicholson fouled by Ellis Harrison, the ref awards a free kick. Michael Poke takes the indirect free kick.
Shot from just outside the box by Ryan Jarvis goes over the target.
Centre by Ellis Harrison, Tom Hitchcock takes a shot. Save by Michael Poke. Corner taken by Fabian Broghammer from the left by-line to the near post, clearance made by Brian Saah.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.