OXFORD United could not produce another late show against Portsmouth as the hosts claimed the points at Fratton Park.

Luke McNally’s 81st-minute strike gave the U’s hope of repeating their exploits at the Kassam Stadium just 24 days previous, but they could not find an equaliser.

The damage was done either side of half-time, with Sean Raggett and George Hirst scoring in quick succession before the break and Hayden Carter’s screamer making it 3-1 in the 58th minute.

It came after Marcus Browne put the U's ahead just three minutes into the first start of his third spell, on the ground where he notched his last goal for the club in July 2020.

But United could not make their early lead count as their winning run ended at three matches, while their wait for a first victory at Fratton Park since 2016 continues.

The U’s made three changes as Karl Robinson reverted to a 3-4-1-2 formation, with Mark Sykes absent after failing a fitness test over a chest injury this morning.

In came Browne, who joined Matty Taylor up front, plus Nathan Holland behind the front two and Ciaron Brown in the three-man defence. Gavin Whyte and Sam Baldock were rested.

Pompey made five changes as they also returned to a back three, with influential forward Ronan Curtis suspended in the one enforced alteration.

Browne answered any doubts about his sharpness inside three minutes with an emphatic strike in front of the travelling fans.

It was a well-worked goal, as Taylor flicked the ball around the corner for Holland. The West Ham United loanee fed Browne, who took it towards the byline and fired into the top corner.

Pompey looked for an instant response but chances were at a premium, with Louis Thompson shooting over the crossbar and Joe Morrell seeing an effort blocked by Cameron Brannagan.

United put together some neat moves without being able to unlock the home side’s defence, while Taylor tried to lob Gavin Bazunu from 40 yards - only to see the ball fly out for a throw.

The striker almost got on the end of Browne’s cross 12 minutes before the break, but the game remained scrappy and the home support grew frustrated as decisions went against them.

Pompey had enjoyed some good spells without seriously threatening – only to turn the contest on its head in the final five minutes of the half.

The U’s failed to clear after a spell of pressure and Morrell crossed for Raggett, who climbed high to guide a header over Jack Stevens and into the net.

Hirst shot wide moments later, but he made no mistake with his next chance. Marcus Harness was allowed all the time in the world to race over the halfway line and feed the striker, who found the far corner from the right edge of the box.

The goals transformed the mood inside Fratton Park and United had a tough task in the second period, although Ryan Williams nearly bent home an early equaliser after exchanging passes with Holland.

Instead, the volume went up a notch as Carter increased the lead in spectacular fashion.

The crowd urged the centre back to shoot as he received possession in the United half, but they may not have expected what followed: a fierce strike into the top corner from 25 yards to leave Stevens flailing.

Browne went down on the touchline shortly after and Robinson took the opportunity to make a double change, the forward and Steve Seddon coming off for Baldock and Whyte respectively.

United almost halved the deficit when Sam Long hooked towards goal, Bazunu palming the shot behind, but it was a rare sight of goal in the second half.

Pompey boss Danny Cowley looked to protect the lead by bringing on Clark Robertson and Ryan Tunnicliffe for Denver Hume and Harness as the game entered the final 15 minutes.

The U’s struggled to worry Bazunu, until McNally gave them a lifeline. Holland fed Baldock and the substitute cut a cross back from the byline, with the centre back applying a striker’s finish.

Anthony Forde replaced Holland in the aftermath of the goal as the visitors pushed for an equaliser, but they did not seriously threaten again.

Portsmouth (3-4-2-1): Bazunu, Carter, Raggett, Ogilvie, Romeo, Morrell, Thompson, Hume (Robertson 73), Harness (Tunnicliffe 75), O’Brien, Hirst (Walker 84).

Unused subs: Webber, Vincent, Mingi, Jewitt-White.

Booked: Carter.

Oxford United (3-4-1-2): Stevens, McNally, Long, Brown, Williams, Kane, Brannagan, Seddon (Whyte 63), Holland (Forde 82), Taylor, Browne (Baldock 63).

Unused subs: Eastwood, Mousinho, McGuane, Henry.

Booked: Long.

Referee: Sam Allison (Wiltshire).

Attendance: 15,113 (1,370 visitors).