Ligue 1 Regular Season - 30

Metz 1 - 3 FT Paris FC

Stade Saint-Symphorien

Match previews and recaps to help you decide which games are worth watching

Futmetrix Verdict
77
FT
Sun, Apr 19
Français
Metz
1-3
Paris FC
⚡ Intensity 56
⚖️ Balance 49
🏆 Stakes 98
🎲 Upset 0
Paris FC pushes Metz closer to relegation.

Paris FC's Ruthless Finish Condemns Desperate Metz

Highly Entertaining Futmetrix Score: 77/100. Paris FC showcased devastating late efficiency to break Metz hearts, pushing the struggling hosts perilously close to the Ligue 1 trapdoor.

Early Blows and Instant Replies

The Stakes couldn't be higher for the relegation-threatened hosts as they stepped onto the hallowed turf at Stade Saint-Symphorien. Metz edged possession early on, trying to dictate the tempo, but it was Paris FC who drew first blood through a clinical strike from A. Gory in the 21st minute. The home side's response, however, was instantaneous and electric. Just seconds after stepping onto the pitch, super substitute G. Kvilitaia found the back of the net to restore parity and ignite the stadium. This was never going to be a cagey, defensive affair. A combined barrage of 27 shots turned the pitch into a chaotic shooting gallery, driving the Intensity up significantly as both sides frantically hunted for the upper hand before the halftime whistle.

The Second-Half Breakthrough

The match hung in a delicate Balance throughout the early phases of the second act. Midfield maestro Georgiy Tsitaishvili worked tirelessly in the engine room to spark a vital survival push for the home side, but they severely lacked a clinical edge in the final third. Goalkeepers at both ends produced absolute heroics under pressure, combining for eight crucial saves to keep the scoreline stubbornly level. The definitive pivot of the afternoon finally arrived in the 69th minute. C. Immobile cleverly carved open the battered and exhausted Metz backline, perfectly teeing up Otávio for a superb finish. That devastating strike completely shifted the momentum, immediately deflating a passionate home crowd that was desperate for a much-needed lifeline.

Final Nails in the Coffin

Chasing a desperate equalising point to keep their fading season alive, the home side blindly threw bodies forward, leaving themselves completely exposed at the back. Paris FC capitalised flawlessly on this structural chaos. In the dying moments, D. Coppola picked out I. Kebbal, who ruthlessly delivered the knockout blow in the 89th minute to seal a commanding 3-1 away victory. The grim reality of this result leaves Metz staring directly into the abyss. Rooted firmly to the bottom of the table with just 15 points and an insurmountable 14-point gap to safety with only five games remaining, their relegation battle looks essentially lost. Paris FC, meanwhile, cement their comfortable mid-table status with a ruthless display of late efficiency on the road.

Key Questions

What does this mean for Metz's season?

With just 15 points and a massive 14-point gap to safety, this demoralising home defeat means Metz is staring down almost certain relegation from Ligue 1.

How did substitute Otávio change the game?

Despite starting the match, Otávio proved to be the ultimate difference-maker by scoring the pivotal second goal in the 69th minute to break Metz's resolve.

What is the Futmetrix Score?

The Futmetrix Score is our 0-100 verdict on how entertaining a match is. We look at intensity, balance, stakes, and star quality to tell you if it's worth your time.

Match Statistics

Possession
51%
49%
Metz 51%
Paris FC 49%
Shots
13
14
Metz 13
Paris FC 14
Shots on Target
6
7
Metz 6
Paris FC 7
Expected Goals (xG)
1.08
1.37
Metz 1.08
Paris FC 1.37
Passes
501
480
Metz 501
Paris FC 480
Pass Accuracy
87%
84%
Metz 87%
Paris FC 84%
Corners
6
4
Metz 6
Paris FC 4
Fouls
9
8
Metz 9
Paris FC 8
Yellow Cards
2
2
Metz 2
Paris FC 2
Red Cards
0
0
Metz 0
Paris FC 0

Match Events

13' 🟨 U. Mboula
A. Gory 21'
30' 🔄 H. Diallo G. Kvilitaia
31' G. Kvilitaia (S. Sane)
38' 🟨 K. Kouao
I. Kebbal 🟨 45'+1
HT
57' 🔄 U. Mboula B. Sarr
A. Gory 🟨 62'
A. Gory V. Marchetti 🔄 66'
Otavio (C. Immobile) 69'
74' 🔄 T. Yegbe J. Pandore
75' 🔄 N. Mbala L. Michal
75' 🔄 J. Deminguet B. Stambouli
C. Immobile W. Geubbels 🔄 77'
H. Traore A. Camara 🔄 77'
L. Koleosho M. Cafaro 🔄 88'
T. De Smet N. Sangui 🔄 88'
I. Kebbal (D. Coppola) 89'
FT

Player Cards

Our take on every player in this match

Metz

Goalkeepers
Pape Sy
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Defenders
Koffi Kouao
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Sadibou Sané
PROVIDER
PROVIDER
1
Assists
1
Assists
1
Key Passes
7
Rating
Terry Yegbe
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
74
Total Mins
74
Entry
Urie-Michel Mboula
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
57
Total Mins
57
Entry
Midfielders
Jessy Deminguet
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
75
Total Mins
75
Entry
Jean-Philippe Gbamin
MAGNET
MAGNET
74
Activity
74
Activity
67
Passes
7
Duels
Nathan Mbala
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
16%
Pass Acc
Gauthier Hein
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Georgiy Tsitaishvili
DRIBBLER
DRIBBLER
5
Dribbles
5
Dribbles
7
Attempts
71%
Success %
Forwards
Habib Diallo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
30
Total Mins
30
Entry
BENCH
Jonathan Fischer
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Moustapha Diop
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Bouna Sarr
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
37
Total Mins
Started
Entry
Benjamin Stambouli
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
19
Total Mins
Started
Entry
Alpha Touré
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Jahyann Pandore
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
20
Total Mins
Started
Entry
Giorgi Kvilitaia
SUPER SUB
SUPER SUB
1
Goal
1
Goal
64
Minutes
7.3
Rating
Lucas Michal
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
19
Total Mins
Started
Entry

Paris FC

Goalkeepers
Obed Nkambadio
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Defenders
Hamari Traore
LATE SHIFT
LATE SHIFT
13
Late Mins
13
Late Mins
78
Total Mins
77
Entry
Diego Coppola
PROVIDER
PROVIDER
1
Assists
1
Assists
1
Key Passes
7.3
Rating
Samir Sophian Chergui
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
94
Total Mins
Started
Entry
Otávio
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
Thibault De Smet
NPC
NPC
88
Minutes
88
Minutes
25%
Pass Acc
6.2
Rating
Midfielders
Ilan Kebbal
CLUTCH HERO
CLUTCH HERO
89
Goal Time
89
Goal Time
Goal
Impact
7.7
Rating
Rudy Matondo
DRIBBLER
DRIBBLER
4
Dribbles
4
Dribbles
4
Attempts
100%
Success %
Luca Koleosho
NPC
NPC
88
Minutes
88
Minutes
28%
Pass Acc
6.7
Rating
Alimami Gory
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
Forwards
Ciro Immobile
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
1
Assists
20%
Pass Acc
BENCH
Kevin Trapp
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Moustapha Mbow
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Nhoa Sangui
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
6
Total Mins
Started
Entry
Mathieu Cafaro
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
6
Total Mins
Started
Entry
Vincent Marchetti
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
28
Total Mins
Started
Entry
Adama Camara
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
16
Total Mins
Started
Entry
Marshall Munetsi
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Willem Geubbels
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
16
Total Mins
Started
Entry
Jonathan Ikoné
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
08/31/2025 Paris FC 3 - 2 Metz Ligue 1 Stade Jean Bouin
01/18/2025 Metz 3 - 1 Paris FC Ligue 2 Stade Saint-Symphorien
09/14/2024 Paris FC 1 - 2 Metz Ligue 2 Stade Charléty
04/29/2023 Metz 1 - 1 Paris FC Ligue 2 Stade Saint-Symphorien
11/12/2022 Paris FC 1 - 4 Metz Ligue 2 Stade Charléty
02/22/2019 Metz 2 - 0 Paris FC Ligue 2 Stade Saint-Symphorien
08/31/2025
3 - 2
Ligue 1 Stade Jean Bouin
01/18/2025
3 - 1
Ligue 2 Stade Saint-Symphorien
09/14/2024
1 - 2
Ligue 2 Stade Charléty
04/29/2023
1 - 1
Ligue 2 Stade Saint-Symphorien
11/12/2022
1 - 4
Ligue 2 Stade Charléty
02/22/2019
2 - 0
Ligue 2 Stade Saint-Symphorien
Metz Win
Paris FC Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Paris Saint Germain 29 66 65 25 +40 WParis Saint Germain 3 - 0 Nantes (22-04-2026)LParis Saint Germain 1 - 2 Lyon (19-04-2026)WParis Saint Germain 3 - 1 Toulouse (03-04-2026)WNice 0 - 4 Paris Saint Germain (21-03-2026)LParis Saint Germain 1 - 3 Monaco (06-03-2026)
2 Lens 29 62 57 29 +28 WLens 3 - 2 Toulouse (17-04-2026)LLille 3 - 0 Lens (04-04-2026)WLens 5 - 1 Angers (20-03-2026)LLorient 2 - 1 Lens (14-03-2026)WLens 3 - 0 Metz (08-03-2026)
3 Lille 30 54 49 34 +15 DLille 0 - 0 Nice (18-04-2026)WToulouse 0 - 4 Lille (12-04-2026)WLille 3 - 0 Lens (04-04-2026)WMarseille 1 - 2 Lille (22-03-2026)WRennes 1 - 2 Lille (15-03-2026)
4 Lyon 30 54 45 30 +15 WParis Saint Germain 1 - 2 Lyon (19-04-2026)WLyon 2 - 0 Lorient (12-04-2026)DAngers 0 - 0 Lyon (05-04-2026)LLyon 1 - 2 Monaco (22-03-2026)DLe Havre 0 - 0 Lyon (15-03-2026)
5 Rennes 30 53 52 41 +11 WStrasbourg 0 - 3 Rennes (19-04-2026)WRennes 2 - 1 Angers (11-04-2026)WStade Brestois 29 3 - 4 Rennes (04-04-2026)DRennes 0 - 0 Metz (22-03-2026)LRennes 1 - 2 Lille (15-03-2026)
6 Marseille 30 52 58 40 +18 LLorient 2 - 0 Marseille (18-04-2026)WMarseille 3 - 1 Metz (10-04-2026)LMonaco 2 - 1 Marseille (05-04-2026)LMarseille 1 - 2 Lille (22-03-2026)WMarseille 1 - 0 Auxerre (13-03-2026)
7 Monaco 30 50 52 45 +7 DMonaco 2 - 2 Auxerre (19-04-2026)LParis FC 4 - 1 Monaco (10-04-2026)WMonaco 2 - 1 Marseille (05-04-2026)WLyon 1 - 2 Monaco (22-03-2026)WMonaco 2 - 0 Stade Brestois 29 (14-03-2026)
8 Strasbourg 29 43 46 37 +9 LStrasbourg 0 - 3 Rennes (19-04-2026)WStrasbourg 3 - 1 Nice (04-04-2026)WNantes 2 - 3 Strasbourg (22-03-2026)DStrasbourg 0 - 0 Paris FC (15-03-2026)DAuxerre 0 - 0 Strasbourg (07-03-2026)
9 Lorient 30 41 40 44 -4 WLorient 2 - 0 Marseille (18-04-2026)LLyon 2 - 0 Lorient (12-04-2026)DLorient 1 - 1 Paris FC (05-04-2026)LToulouse 1 - 0 Lorient (21-03-2026)WLorient 2 - 1 Lens (14-03-2026)
10 Paris FC 30 38 40 46 -6 WMetz 1 - 3 Paris FC (19-04-2026)WParis FC 4 - 1 Monaco (10-04-2026)DLorient 1 - 1 Paris FC (05-04-2026)WParis FC 3 - 2 Le Havre (22-03-2026)DStrasbourg 0 - 0 Paris FC (15-03-2026)
11 Toulouse 30 37 41 42 -1 LLens 3 - 2 Toulouse (17-04-2026)LToulouse 0 - 4 Lille (12-04-2026)LParis Saint Germain 3 - 1 Toulouse (03-04-2026)WToulouse 1 - 0 Lorient (21-03-2026)WMetz 3 - 4 Toulouse (15-03-2026)
12 Stade Brestois 29 29 37 38 44 -6 DNantes 1 - 1 Stade Brestois 29 (19-04-2026)LStade Brestois 29 3 - 4 Rennes (04-04-2026)LAuxerre 3 - 0 Stade Brestois 29 (21-03-2026)LMonaco 2 - 0 Stade Brestois 29 (14-03-2026)WStade Brestois 29 2 - 0 Le Havre (08-03-2026)
13 Angers 30 34 26 40 -14 DAngers 1 - 1 Le Havre (18-04-2026)LRennes 2 - 1 Angers (11-04-2026)DAngers 0 - 0 Lyon (05-04-2026)LLens 5 - 1 Angers (20-03-2026)LAngers 0 - 2 Nice (14-03-2026)
14 Le Havre 30 30 25 38 -13 DAngers 1 - 1 Le Havre (18-04-2026)DNice 1 - 1 Le Havre (12-04-2026)DLe Havre 1 - 1 Auxerre (05-04-2026)LParis FC 3 - 2 Le Havre (22-03-2026)DLe Havre 0 - 0 Lyon (15-03-2026)
15 Nice 30 29 34 56 -22 DLille 0 - 0 Nice (18-04-2026)DNice 1 - 1 Le Havre (12-04-2026)LStrasbourg 3 - 1 Nice (04-04-2026)LNice 0 - 4 Paris Saint Germain (21-03-2026)WAngers 0 - 2 Nice (14-03-2026)
16 Auxerre 30 25 25 39 -14 DMonaco 2 - 2 Auxerre (19-04-2026)DAuxerre 0 - 0 Nantes (11-04-2026)DLe Havre 1 - 1 Auxerre (05-04-2026)WAuxerre 3 - 0 Stade Brestois 29 (21-03-2026)LMarseille 1 - 0 Auxerre (13-03-2026)
17 Nantes 30 20 25 49 -24 LParis Saint Germain 3 - 0 Nantes (22-04-2026)DNantes 1 - 1 Stade Brestois 29 (19-04-2026)DAuxerre 0 - 0 Nantes (11-04-2026)DMetz 0 - 0 Nantes (05-04-2026)LNantes 2 - 3 Strasbourg (22-03-2026)
18 Metz 30 15 27 66 -39 LMetz 1 - 3 Paris FC (19-04-2026)LMarseille 3 - 1 Metz (10-04-2026)DMetz 0 - 0 Nantes (05-04-2026)DRennes 0 - 0 Metz (22-03-2026)LMetz 3 - 4 Toulouse (15-03-2026)