Exeter City substitute Jimmy Keohane came off the bench to beat struggling Accrington with two late goals.
The game's first effort of note came midway through the second half when the Grecians' Guillem Bauza almost got in.
Bauza's replacement Keohane then broke the deadlock when he fired home from the edge of the area on 79 minutes.
Then, just three minutes later, after Exeter's Danny Coles had hit his own bar, Jamie Cureton set up Keohane to tap in his victory-sealing second.
Exeter's win at St James Park moves them into the automatic promotion places, ahead of Saturday's fixtures.
Accrington, who stretched their winless run to six, are still without a victory away from the Store First Stadium since November.
VIEW FROM THE DRESSING ROOM
Exeter City manager Paul Tisdale:
"It was nice to have Jimmy Keohane come on with 25 minutes to go with that energy. He's improving all the time, and he's getting better with the tough parts of the game as well.
"It was a performance that wasn't perfect, but was solid enough and it had enough quality in it to make the difference, .
"Both the goals were creative, with assists from Tommy Doherty for the first, then Jamie Cureton for the second."
Accrington manager Leam Richardson told BBC Radio Lancashire:
"The spectacle for the neutral wouldn't have been pleasant. The two teams set up very identical and were trying to do the same thing.
"The two goals are not good to watch. They're very poor from our point of view and that's the message to the lads.
"We worked a lot this week on being solid. We were aware that Exeter struggle to break down teams at home. If you stay in the game and don't make mistakes, you get a result."
Live Text Commentary
Full Time The match has reached full-time.90:00 +3:30
The ball is delivered by Padraig Amond, clearance made by Pat Baldwin.90:00 +2:13
Jimmy Keohane gives away a free kick for an unfair challenge on Peter Murphy. Direct free kick taken by Mark Hughes.88:30 Substitution
Substitution James Gray goes off and Padraig Amond comes on.87:30
The official flags Jamie Cureton offside. Indirect free kick taken by Paul Rachubka.87:11
Free kick awarded for a foul by Scot Bennett on Peter Murphy. Luke Joyce takes the free kick.86:34
The ball is delivered by Nicky Hunt, clearance made by Pat Baldwin.86:08
The ball is crossed by Craig Woodman.85:10
Foul by Luke Joyce on Scot Bennett, free kick awarded. Free kick taken by Scot Bennett.84:21
James Gray challenges Kevin Amankwaah unfairly and gives away a free kick. Kevin Amankwaah takes the direct free kick.82:11 Substitution
Substitution Marcus Carver comes on in place of James Beattie.81:29
The assist for the goal came from Jamie Cureton.81:29 Goal scored
Goal! - Jimmy Keohane - Exeter 2 - 0 Accrington Jimmy Keohane gets on the score sheet with a goal from deep inside the penalty box high into the middle of the goal. Exeter 2-0 Accrington Stanley.80:14 Substitution
Substitution Lee Molyneux comes on in place of Laurence Wilson.78:12
Assist on the goal came from Tommy Doherty.78:12 Goal scored
Goal! - Jimmy Keohane - Exeter 1 - 0 Accrington A goal is scored by Jimmy Keohane from deep inside the penalty area to the top left corner of the goal. Exeter 1-0 Accrington Stanley.78:11
The ball is crossed by Arron Davies,77:42
Corner from the left by-line taken by Laurence Wilson, clearance by Pat Baldwin.75:54
Arron Davies gives away a free kick for an unfair challenge on James Gray. Shot on goal comes in from James Beattie from the free kick, blocked by Tommy Doherty.73:51
Shot from long range by Craig Woodman misses to the right of the goal.
Handball decision goes against James Gray. Direct free kick taken by Danny Coles.72:03
Scot Bennett fouled by Peter Murphy, the ref awards a free kick. Direct free kick taken by Kevin Amankwaah.70:44
Free kick awarded for a foul by Tommy Doherty on Peter Murphy. Free kick crossed right-footed by Luke Joyce, clearance made by Scot Bennett.69:06
Effort from outside the box by Craig Woodman goes wide right of the target.68:53
The ball is crossed by Arron Davies.68:30
Jimmy Keohane fouled by Mark Hughes, the ref awards a free kick. Tommy Doherty takes the free kick.67:38
James Gray produces a right-footed shot from just outside the box that misses to the right of the target.67:23
The ball is delivered by Tommy Doherty.66:28
Inswinging corner taken from the right by-line by Craig Woodman, Paul Rachubka makes a save.66:06
The ball is delivered by Jamie Cureton, Dean Winnard manages to make a clearance.64:51 Substitution
Substitution Guillem Bauza goes off and Jimmy Keohane comes on.64:37
Romuald Boco produces a cross.62:33
Free kick awarded for an unfair challenge on James Gray by Danny Coles. Free kick crossed right-footed by Luke Joyce, Pat Baldwin makes a clearance.61:55
The ball is swung over by Arron Davies.60:54
Centre by Jake Gosling.57:18
Guillem Bauza produces a cross.56:53
The ball is sent over by Arron Davies, Michael Liddle gets a block in.56:10
Free kick taken by Tommy Doherty.56:10 Booking
Booking Booking for Dean Winnard.55:53
Free kick awarded for an unfair challenge on Jamie Cureton by Dean Winnard.54:41 Substitution
Substitution Arron Davies is brought on as a substitute for Mark Molesley.51:36
The ball is sent over by Laurence Wilson.50:34
Mark Molesley crosses the ball, save by Paul Rachubka.49:15
Luke Joyce gives away a free kick for an unfair challenge on Mark Molesley. Scot Bennett restarts play with the free kick.48:54
Jake Gosling delivers the ball.47:46
Pat Baldwin delivers the ball, Dean Winnard manages to make a clearance.47:19
James Beattie gives away a free kick for an unfair challenge on Tommy Doherty. Rhys Evans takes the direct free kick.46:42
The ball is crossed by Romuald Boco, Danny Coles makes a clearance.45:01
The referee starts the second half.45:01 Substitution
Substitution Rhys Evans comes on in place of Artur Krysiak.45:00 +2:14 Half time
Half Time The referee blows for half time.45:00 +1:22
James Gray challenges Pat Baldwin unfairly and gives away a free kick. Artur Krysiak takes the direct free kick.45:00 +0:24
Craig Woodman crosses the ball from the free kick left-footed from right channel, Nicky Hunt makes a clearance.45:00 +0:24 Booking
Booking James Beattie is shown a yellow card.45:00 +0:22
Free kick awarded for an unfair challenge on Kevin Amankwaah by James Beattie.44:54
Foul by Luke Joyce on Tommy Doherty, free kick awarded. Pat Baldwin takes the direct free kick.43:53
The ball is swung over by Guillem Bauza, Mark Hughes gets a block in.40:09
James Gray has an effort at goal from outside the area missing to the wide right of the target.38:37
Peter Murphy fouled by Scot Bennett, the ref awards a free kick. Laurence Wilson crosses the ball in from the free kick.36:19
Nicky Hunt crosses the ball, clearance made by Kevin Amankwaah.33:34
Kevin Amankwaah delivers the ball, clearance made by Dean Winnard.32:53
Nicky Hunt delivers the ball, James Beattie challenges Kevin Amankwaah unfairly and gives away a free kick. Artur Krysiak takes the direct free kick.31:22
Shot from just outside the box by Jamie Cureton goes over the bar.26:21
Direct free kick taken by Laurence Wilson.26:21 Booking
Booking Danny Coles receives a caution for unsporting behaviour.26:18
Unfair challenge on James Gray by Danny Coles results in a free kick.24:34
The offside flag is raised against James Gray. Artur Krysiak takes the free kick.23:12
Tommy Doherty challenges Dean Winnard unfairly and gives away a free kick. Mark Hughes restarts play with the free kick.21:14
Foul by Mark Hughes on Guillem Bauza, free kick awarded. Kevin Amankwaah takes the free kick.19:25
The ball is sent over by Mark Hughes, Pat Baldwin manages to make a clearance.18:05
Unfair challenge on Kevin Amankwaah by Laurence Wilson results in a free kick. Artur Krysiak restarts play with the free kick.16:51
Centre by Jake Gosling, clearance made by Laurence Wilson.13:11
The ball is swung over by Guillem Bauza.11:41
The ball is swung over by Nicky Hunt, Tommy Doherty manages to make a clearance.10:52
Free kick awarded for an unfair challenge on Mark Hughes by Guillem Bauza. Mark Hughes takes the free kick.8:15
A cross is delivered by Jake Gosling.7:54
Guillem Bauza crosses the ball.4:11
Long distance effort from Guillem Bauza misses to the left of the goal.2:17
Inswinging corner taken by Craig Woodman from the right by-line, save made by Paul Rachubka.1:34
Corner taken left-footed by Craig Woodman to the near post, Jake Gosling has a volleyed shot. Blocked by Mark Hughes.0:35
James Gray is ruled offside. Artur Krysiak takes the free kick.0:00
The match begins.
Live data and text provided by our data suppliers