Full-back Terry Devlin (left) has now scored four goals this season

Swansea City missed the chance to return to the top of the Championship as they slumped to a 3-1 defeat by Portsmouth in a remarkable game at Fratton Park.

Terry Devlin guided home from 10 yards to give Pompey a deserved lead late in the first half and John Mousinho's team seemed for a long time like holding on for a 1-0 win.

Swansea then appeared to have snatched a point when substitute Zan Vipotnik coolly converted from the penalty spot five minutes from time after Regan Poole tugged the Slovenia striker's shirt.

Vitor Matos' team should then have gone ahead three minutes later when Ross Stewart shot against the bar, but it was Portsmouth who struck again when full-back Devlin drilled home from a half-cleared corner in the second minute of added time.

With Swansea throwing players forward in search of a second equaliser, Thomas Waddingham latched on to a long ball forward and got the better of Ben Cabango before steering in Portsmouth's third in the 98th minute.

That made certain of a third defeat in four matches for Matos' early-season pacesetters, who have lost momentum after their fine start to the campaign.

While Swansea drop out of the Championship's automatic promotion places and into fourth, Portsmouth climb to 10th – and are only outside the play-off spots on goal difference – after extending their unbeaten run to six games.

Portsmouth's only defeat since 1 September came in last month's derby against Southampton

Analysis: Frustration reigns for Swans as Pompey deservedly triumph

After beginning this season with defeats in three of their first four league games, Portsmouth have turned heads with a spectacular upturn in form which has seen them lose only one of their past 10.

They looked hungry to claim their most notable result yet against a Swansea side who were given a taste of their own medicine as they struggled in the face of a high press.

Pompey had chances before Devlin beat the dive of Lawrence Vigouroux to open the scoring after Swansea had lost possession in their own half.

Swansea, by contrast, were short of their best going forward throughout, yet they may well have snatched victory from the jaws of defeat had Stewart not turned Josh Key's inviting centre on to the woodwork.

Instead, Portsmouth found a way to win during a thrilling climax before players and staff from both clubs were involved in a melee after the final whistle.

While the home contingent were left to celebrate when calm was restored, frustration reigned for Swansea.

What did you think of Portsmouth's performance?

What did you make of Swansea's display?

'To respond like we did was absolutely magnificent' - reaction

Matos calls for calm despite Pompey defeat

Portsmouth head coach John Mousinho:

"A massive win and a rally important night for us for a lot of reasons.

"I thought we were excellent in the first half. I thought we were really diligent in the way we defended and broke forward a couple of times.

"Second half we started well and probably tired a bit. I was disappointed with the way we conceded the penalty.

"But to respond to the equaliser like we did was absolutely magnificent."

Swansea head coach Vitor Matos:

"It was a game that we expect, a lot of physicality, a lot of second balls, a lot of duels, a lot of verticality.

"That's how it was in the first half. We concede in one of those situations.

"Then step by step we started to bring the game back to us. I think we did really well after half-time. We scored and then the game could have come to us.

"In the end it went to Portsmouth from a corner, so that's something we need to do better. It ended 3-1 but that was a situation where we were really pushing to try to get a point."

Welsh injury adds to Swans' misery at Portsmouth

Player of the match

After the opportunity to rate players has closed, the score displayed represents the average from all the submissions by BBC Sport users.

Related topics

More on this story

Championship Scores & Fixtures

Tuesday 3rd November

Championship Table

Key

Last Updated 3rd November 2026 at 22:40

Team Lineups

home team, Portsmouth

Manager: John Mousinho

Formation: 4 - 2 - 3 - 1

away team, Swansea City

Manager: Vitor Matos

Formation: 4 - 3 - 3

Match Officials

Match Stats

Basic Stats

In-depth match stats

Attack

Expected

Distribution

Defence

Head to Head

Season so far

Championship

League position

Total points

Form guide

All competitions

Previous scores

Live Text

Match ends, Portsmouth 3, Swansea City 1.

Second Half ends, Portsmouth 3, Swansea City 1.

Goal! Portsmouth 3, Swansea City 1. Thomas Waddingham (Portsmouth) right footed shot from the centre of the box to the bottom left corner.

Foul by Ross Stewart (Swansea City).

Abu Kamara (Portsmouth) wins a free kick in the defensive half.

Delay over. They are ready to continue.

Delay in match because of an injury Madiodio Dia (Portsmouth).

Goal! Portsmouth 2, Swansea City 1. Terry Devlin (Portsmouth) right footed shot from the centre of the box to the bottom left corner following a corner.

Corner, Portsmouth. Conceded by Josh Tymon.

Fourth official has announced 4 minutes of added time.

Foul by Gonçalo Franco (Swansea City).

Madiodio Dia (Portsmouth) wins a free kick in the defensive half.

Ross Stewart (Swansea City) hits the bar with a left footed shot from the centre of the box. Assisted by Elijah Just.

Goal! Portsmouth 1, Swansea City 1. Zan Vipotnik (Swansea City) converts the penalty with a right footed shot to the bottom left corner.

Regan Poole (Portsmouth) is shown the yellow card for a bad foul.

Penalty Swansea City. Zan Vipotnik draws a foul in the penalty area.

Penalty conceded by Regan Poole (Portsmouth) after a foul in the penalty area.

Substitution, Portsmouth. Zak Swanson replaces Tyrese Shade.

Attempt saved. Marko Stamenic (Swansea City) right footed shot from outside the box is saved in the centre of the goal by Nicolas Schmid (Portsmouth). Assisted by Gonçalo Franco.

Attempt missed. Joseph Opoku (Swansea City) left footed shot from outside the box misses to the left. Assisted by Marko Stamenic following a corner.