Jed Wallace put a severe dent in Exeter City's hope of reaching the play-offs this season with a 90th minute winner for Portsmouth.
It is now five games without a win for the Grecians, who drop to 10th in the table on the back of the defeat at Fratton Park.
Portsmouth were good value for the victory with them striking the woodwork twice and missing a penalty, but it was a cruel blow on City who looked the more likely to score in the closing stages.
Wallace's goal actually came at a time when Portsmouth seemed happy to settle for a point - City manager Paul Tisdale even encouraged the home side to get on with the game quicker from the throw-in that led to the match-winning strike.
Tisdale made one change from the team that drew against Cambridge United on Tuesday night, with Christian Ribeiro coming in for Jamie McAllister.
Portsmouth named an unchanged side with three former Grecians – Paul Jones, James Dunne and Ryan Taylor – in the side.
City had the first shot on target after seven minutes as Ryan Harley played the ball out wide to Arron Davies and he had time to pick out a cross to the back post. Unfortunately Tom Nichols' header was tame and easily claimed by Jones.
Portsmouth's Matt Tubbs responded with a scuffed shot from 30 yards out, which was just as easy for City keeper Christy Pym to gather.
Then Jed Wallace, who scored at St James's Park earlier this season, flashed a 25-yard right-foot shot a foot wide of the post.
Pompey started growing in confidence as the match approached the 20-minute mark passing the ball around nicely on what was a muddy playing surface at Fratton Park. That forced Tisdale into a switch in formation, from 5-3-2 to a 4-4-2 diamond with Matt Oakley moving into a role just behind the two strikers.
However, Portsmouth had the best chance of the first half moments later as Josh Passley rattled the woodwork from just inside the area.
City looked comfortable for the rest of the first half though, with a good run from Alex Nicholls creating shooting opportunities for both Nichols and Sercombe – Jones was equal to both.
Moore-Taylor did manage to beat Jones with a header, from a Harley cross, nine minutes before the break but, captain, Paul Robinson was there to boot the ball clear from inside his own six-yard box for the home side.
Ribeiro then needed to produce some heroic defending for City at the other end as he put in two well-timed sliding challenges to stop Taylor from racing in on the City goal as both sides went into the break with cause for optimism.
It was Pompey who started the second-half the better though with Wallace sending an effort just past the post, with Pym getting nowhere near the sweetly struck shot. A minute later and he tried his luck again, but this time Pym produced an excellent save and gathered the rebound before Matt Tubbs could pounce.
City began to push forward more in the final half hour, with Sercombe sending shot in from distance and Nichols side-footing an effort wide from a corner.
Pompey responded though as Dunne lashed another shot against the City crossbar as the visiting defence backed off an allowed him time and space to shoot from 30 yards out.
City, at this stage, had brought on Clinton Morrison for Ryan Harley and were playing three up top. As a result the game was stretched as both sides went for a much-needed three points.
However, such was City's gung-ho approach in the final 20 minutes that right-back Ribeiro had a chance to win the game and then almost lost it for Exeter in the space of three minutes.
First he hit a shot narrowly wide of goal, after Davies cross into the box had been knocked into his path. Then, as Portsmouth counter-attacked, the former Scunthorpe United defender tripped Matt Tubbs inside the area earning a booking and the home side a spot kick. However, Wallace made mess of the penalty, blasting it over the top with Pym diving in the wrong direction.
City's best chance to win came on 85 minutes as Morrison showed strength to hold the ball up and tee up a chance for Davies but, like the Portsmouth players, he could only rattle a shot against the crossbar.
The defining moment came in stoppage time though with Portsmouth, seemingly happy to run down the clock and accept a point, were hurried along into taking a throw by Tisdale. When they did Wallace picked up the ball, managed to work a yard of space and fired past Pym to win the game.
Exeter City (5-3-2): Pym; Davies, Ribeiro, Oakley, Moore-Taylor, Woodman; Butterfield, Sercombe, Harley (Morrison, 62); Nicholls (Noble, 81), Nichols (Wheeler, 75). Subs not used: Hamon, Bennett, Koehane, McAllister, Noble, Wheeler, Morrison.
Booked: Harley (36), Butterfield (73), Ribeiro (73)
Portsmouth (3-4-1-2): Jones; Devera, Robinson, Whatmough; Passley (Barcham, 45), Dunne, Holland, Butler; Wallace (Atangana, 90); Tubbs, Taylor. Subs not used: Poke, Chorley, Barcham, Ertl, Westcarr, Atangana, Chaplin.
Booked: Wallace (59), Atangana (90)
Attendance: 14,097 (825 away).
![]()