Liam Mandeville came off the bench to make a huge impact as he helped Doncaster Rovers roar back from a goal down to secure victory at Exeter City.
Off-colour Rovers had found themselves behind after Reuben Reid smashed home a penalty early in the second half following a foul on David Wheeler by Marko Marosi.
But following his introduction on 69 minutes, Mandeville sparked a brilliant comeback, heading home an equaliser before setting up John Marquis for a brace.
It allowed Rovers to cut the gap on second placed Carlisle United, who lost for the first time in the league this term.
But there will be some concern over the manner of the performance as Rovers struggled for cohesion and lacked control of a game they will have been expected to win.
READ MORE Ferguson's fury over performance but praise for impact sub Mandeville
Darren Ferguson made two changes from the previous league fixture, the draw with Wycombe Wanderers a fortnight before. Joe Wright returned to central defence in place of Mathieu Baudry while Marko Marosi was back in goal ahead of Ross Etheridge.
The game began at a frantic pace with both sides looking to launch forward quickly.
It took a brave sliding tackle from Andy Butler to deny Exeter's Ollie Watkins a clear shot on goal from the edge of the box inside the opening minute.
Rovers worked space well down the left side but struggled to find targets with crosses into the box.
Lee Holmes curled a free kick from close to 30 yards but it proved to be a simple save for Marosi.
At the other end, Butler attempted to loop a header from a corner from 15 yards but put it well wide.
Rovers broke rapidly from an Exeter corner and James Coppinger tumbled on the edge of the box, appealing for a penalty, but referee Charles Breakspear was unmoved.
There was no reaction from the official moments later at the other end when Cedric Evina appeared to bundle over David Wheeler, again on the edge of the box.
Tommy Rowe drew a fine save from James Hamon after a brilliant run to the edge of the box and a rasping drive.
Rovers finished the half the stronger and forged the best chance of the half. Coppinger latched onto the ball at close range and drilled low only for Hamon to palm away superbly.
Wright headed over the bar from a deep John Marquis cross as Exeter's defence began to show nerves.
Matty Blair should have done much better after being played in on the edge of the box by Coppinger but sliced a first time shot well wide.
Perhaps put off by his poor miss, Blair attempted to play in Coppinger in a similar position after the ball was robbed but offside was called.
Ferguson was forced into a change at the break as Butler came off to be replaced by Mathieu Baudry.
A mix up the back gifted Exeter the lead six minutes into the second half.
With the sun in his eyes, Marosi misjudged a long ball forward and raced well out of his goal, clattering Wheeler as he shaped to shoot.
Referee Breakspeak pointer to the spot from which Reid smashed home a penalty.
Exeter had their tails up and quickly won a free kick on the edge of the box which Reid saw charged down as he drilled a shot.
Ferguson reacted quickly as his side wobbled, sending on Craig Alcock for Joe Wright and switching to a 3-4-3 system with Niall Mason pushing into midfield.
As Rovers began to see more of the ball, Ferguson sent on Mandeville and was rewarded by the young forward.
But first, Marosi atoned for his earlier error by racing out and hacking a clearance as Watkins raced onto a through ball.
On 72 minutes, Rovers were level. Coppinger showed good composure to work space for a cross and picked out Mandeville, who looped a header over the keeper and in off the underside of the crossbar.
Marosi continued his redemption with an excellent save. Reid was played in on the angle and powered a low shot which Marosi blocked and held well.
Exeter threatened again with a testing cross into the box which Wheeler failed to get a good connection on, allowing Marosi to claim.
After riding the mini-backlash from Exeter, Rovers took a 77th minute lead with Mandeville again key.
Played in out wide, he spotted the run of Marquis and slid a pass into the box which the striker met and powered past Hamon.
Exeter pushed for an equaliser and it took another great stop from Marosi to keep them out. Watkins fired a testing effort from 30 yards with the ball bobbling before Marosi parried away.
Substitute Robbie Simpson arguably should have done better with two efforts. First, he failed to get anything on a low cross into the box with the goal at his mercy.
And he scuffed a header from a deep cross well wide.
As Exeter committed men forward, Rovers punished them on the counterattack to round off the win as the game entered added time.
Mandeville charged forward with a direct run and timed a square ball to the free Marquis to perfection, allowing the forward to slot home his ninth goal of the season from the edge of the box.
Exeter: Hamon, Stacey, Sweeney, Oakley, Woodman, Wheeler (Simpson 78), James, Taylor, Holmes, Watkins, Reid (Jay 83). Subs not used: Olejnik, Grant, McAlinden, Ripley-Lowe, Brown.
Rovers: Marosi, Mason (Mandeville 69), Wright (Alcock 57), Butler (Baudry 46), Evina, Houghton, Blair, Calder, Rowe, Coppinger, Marquis. Subs not used: Etheridge, Keegan, Beestin, Longbottom.
Referee: Charles Breakspear (Surrey)
Attendance: 3,540 (332 away)