Ligue 1 Regular Season - 31

Le Havre 4 - 4 FT Metz

Stade Océane

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

Futmetrix Verdict
100
FT
Sun, Apr 26
Français
Le Havre
4-4
Metz
⚡ Intensity 100
⚖️ Balance 100
🏆 Stakes 98
🎲 Upset 79
An eight-goal thriller at Stade Océane.

Eight Goals and Endless Drama at Stade Océane

Must-Watch Futmetrix Score: 100/100. This relegation clash morphed into a sensational shootout where both sides abandoned caution, delivering relentless entertainment for the neutrals.

The Explosive Opening

The Stakes could not have been higher in this relegation scrap, yet fear was entirely absent from the pitch. A. Samatta sparked the madness with a 5th-minute breakthrough for Le Havre. The lead lasted a mere four minutes before G. Kvilitaia leveled proceedings, only for Y. Kechta to restore the home side's advantage shortly after. Three goals inside 13 minutes showcased a furious Intensity rarely seen at the foot of the table. The midfield lines were bypassed with ease, and every venture forward looked capable of splitting the frail defensive lines apart.

The Tactical Pendulum

A chaotic Balance defined the second period, driven largely by attacking substitutions and defensive fragility. Following a spot-kick conversion by G. Hein right before the interval, Y. Zouaoui buried a penalty of his own to put the hosts 3-2 up at minute 52. However, Metz edged possession (53%) and utilised their bench brilliantly. Substitute N. Mbala immediately turned provider for fellow arrival J. Pandore to make it 3-3. The goals kept flowing as F. Doucoure connected with an I. Soumare pass to seemingly seal the win for the Normandy outfit.

The Late Drama

The visitors were staring down the barrel of another agonizing defeat, but the sheer Upset Factor of their resilience shone through in the closing stages. With five minutes remaining on the clock, Hein cemented his man-of-the-match status, finishing off another superb assist from Mbala to snatch a dramatic 4-4 draw. While this solitary point keeps the away side deeply entrenched in the drop zone, the fighting spirit on display proves they have not thrown in the towel. For the hosts, a porous defence ultimately derailed a vital step towards safety.

Key Questions

What made Gauthier Hein the Man of the Match?

He dictated the game with two goals, including a late equalizer, and provided a crucial assist, earning a stellar overall match evaluation.

What caused the 8-goal thriller?

Extremely clinical finishing defined the match. The teams combined for just 10 shots on target, yet eight of them found the back of the net.

Did Le Havre deserve the late equalizer?

Given the visitors edged possession and consistently created chances through impactful substitutes, their dramatic late leveller felt earned rather than stolen.

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
47%
53%
Le Havre 47%
Metz 53%
Shots
13
12
Le Havre 13
Metz 12
Shots on Target
5
5
Le Havre 5
Metz 5
Expected Goals (xG)
2.11
1.50
Le Havre 2.11
Metz 1.50
Passes
349
389
Le Havre 349
Metz 389
Pass Accuracy
82%
87%
Le Havre 82%
Metz 87%
Corners
6
4
Le Havre 6
Metz 4
Fouls
12
12
Le Havre 12
Metz 12
Yellow Cards
3
1
Le Havre 3
Metz 1
Red Cards
0
0
Le Havre 0
Metz 0

Match Events

5' A. Samatta
G. Kvilitaia (G. Hein) 9'
13' Y. Kechta
J. Gbamin N. Mbala 🔄 18'
G. Hein 45'+5
HT
A. Toure B. Stambouli 🔄 46'
46' 🔄 R. Ndiaye L. Gourna-Douath
U. Mboula J. Pandore 🔄 46'
G. Kvilitaia 🟨 47'
52' Y. Zouaoui
J. Pandore (N. Mbala) 54'
61' F. Doucoure (I. Soumare)
69' 🔄 F. Doucoure G. Kyeremeh
79' 🔄 Y. Zouaoui T. Pembele
79' 🔄 Y. Kechta S. Boufal
80' 🟨 L. Gourna-Douath
J. Deminguet G. Abuashvili 🔄 83'
G. Kvilitaia L. Michal 🔄 83'
G. Hein (N. Mbala) 85'
90'+2 🟨 S. Ebonog
90'+4 🔄 S. Ebonog D. N. Mosengo
90'+6 🟨 T. Pembele
FT

Player Cards

Our take on every player in this match

Le Havre

Goalkeepers
Mory Diaw
SIEVE
SIEVE
20%
Save %
20%
Save %
4
Conceded
1
Saves
Defenders
Loic Négo
ENFORCER
ENFORCER
4
Tackles
4
Tackles
6
Duels Won
75%
Win %
Ayumu Seko
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Gautier Lloris
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
80%
Duel Win %
Yanis Zouaoui
FRIENDLY FIRE
FRIENDLY FIRE
Pen Given
Mistake
Pen Given
Mistake
2
Fouls
6.9
Rating
Midfielders
Rassoul Ndiaye
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
45
Total Mins
46
Entry
Simon Ebonog
NPC
NPC
94
Minutes
94
Minutes
12%
Pass Acc
6.5
Rating
Fodé Doucouré
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
Yassine Kechta
SNIPER
SNIPER
50%
Conversion
50%
Conversion
1
Goals
2
Shots
Issa Soumaré
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
1
Assists
11%
Pass Acc
Forwards
Mbwana Ally Samatta
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
BENCH
Lionel M'Pasi
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Timothee Pembele
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
18
Total Mins
Started
Entry
Étienne Youte Kinkoue
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Lucas Gourna-Douath
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
52
Total Mins
Started
Entry
Daren Nbenbege Mosengo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
3
Total Mins
Started
Entry
Sofiane Boufal
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
18
Total Mins
Started
Entry
Noam Obougou Jacquet
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Godson Kyeremeh
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
28
Total Mins
Started
Entry
Felix Mambimbi
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

Metz

Goalkeepers
Pape Sy
SIEVE
SIEVE
20%
Save %
20%
Save %
4
Conceded
1
Saves
Defenders
Sadibou Sané
WALL
WALL
0
Dribbled Past
0
Dribbled Past
3
Tackles
75%
Duel Win %
Terry Yegbe
FRIENDLY FIRE
FRIENDLY FIRE
Pen Given
Mistake
Pen Given
Mistake
1
Fouls
5.5
Rating
Urie-Michel Mboula
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
45
Total Mins
46
Entry
Midfielders
Bouna Sarr
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Jessy Deminguet
LATE SHIFT
LATE SHIFT
7
Late Mins
7
Late Mins
82
Total Mins
83
Entry
Jean-Philippe Gbamin
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
18
Total Mins
18
Entry
Alpha Touré
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
45
Total Mins
46
Entry
Georgiy Tsitaishvili
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
97
Total Mins
Started
Entry
Forwards
Gauthier Hein
CLUTCH HERO
CLUTCH HERO
85
Goal Time
85
Goal Time
Goal
Impact
9.2
Rating
Giorgi Kvilitaia
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
BENCH
Jonathan Fischer
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Koffi Kouao
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Moustapha Diop
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Benjamin Stambouli
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
52
Total Mins
Started
Entry
Nathan Mbala
SUPER SUB
SUPER SUB
2
Assists
2
Assists
79
Minutes
7.3
Rating
Jahyann Pandore
SUPER SUB
SUPER SUB
1
Goal
1
Goal
52
Minutes
7.3
Rating
Giorgi Abuashvili
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
15
Total Mins
Started
Entry
Lucas Michal
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
15
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
09/28/2025 Metz 0 - 0 Le Havre Ligue 1 Stade Saint-Symphorien
04/21/2024 Le Havre 0 - 1 Metz Ligue 1 Stade Océane
10/29/2023 Metz 0 - 0 Le Havre Ligue 1 Stade Saint-Symphorien
03/13/2023 Metz 1 - 1 Le Havre Ligue 2 Stade Saint-Symphorien
10/24/2022 Le Havre 2 - 0 Metz Ligue 2 Stade Océane
03/04/2019 Le Havre 2 - 2 Metz Ligue 2 Stade Océane
09/29/2018 Metz 0 - 1 Le Havre Ligue 2 Stade Saint-Symphorien
02/13/2016 Metz 0 - 1 Le Havre Ligue 2 Stade Saint-Symphorien
09/22/2015 Le Havre 1 - 1 Metz Ligue 2 Stade Océane
05/09/2014 Metz 3 - 0 Le Havre Ligue 2 Stade Saint-Symphorien
09/28/2025
0 - 0
Ligue 1 Stade Saint-Symphorien
04/21/2024
0 - 1
Ligue 1 Stade Océane
10/29/2023
0 - 0
Ligue 1 Stade Saint-Symphorien
03/13/2023
1 - 1
Ligue 2 Stade Saint-Symphorien
10/24/2022
2 - 0
Ligue 2 Stade Océane
03/04/2019
2 - 2
Ligue 2 Stade Océane
09/29/2018
0 - 1
Ligue 2 Stade Saint-Symphorien
02/13/2016
0 - 1
Ligue 2 Stade Saint-Symphorien
09/22/2015
1 - 1
Ligue 2 Stade Océane
05/09/2014
3 - 0
Ligue 2 Stade Saint-Symphorien
Le Havre Win
Metz Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Paris Saint Germain 30 69 68 25 +43 WAngers 0 - 3 Paris Saint Germain (25-04-2026)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)
2 Lens 30 63 60 32 +28 DStade Brestois 29 3 - 3 Lens (24-04-2026)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)
3 Lille 31 57 50 34 +16 WParis FC 0 - 1 Lille (26-04-2026)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)
4 Lyon 31 57 48 32 +16 WLyon 3 - 2 Auxerre (25-04-2026)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)
5 Rennes 31 56 54 42 +12 WRennes 2 - 1 Nantes (26-04-2026)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)
6 Marseille 31 53 59 41 +18 DMarseille 1 - 1 Nice (26-04-2026)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)
7 Monaco 31 51 54 47 +7 DToulouse 2 - 2 Monaco (25-04-2026)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)
8 Strasbourg 30 46 49 39 +10 WLorient 2 - 3 Strasbourg (26-04-2026)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)
9 Lorient 31 41 42 47 -5 LLorient 2 - 3 Strasbourg (26-04-2026)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)
10 Toulouse 31 38 43 44 -1 DToulouse 2 - 2 Monaco (25-04-2026)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)
11 Stade Brestois 29 30 38 41 47 -6 DStade Brestois 29 3 - 3 Lens (24-04-2026)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)
12 Paris FC 31 38 40 47 -7 LParis FC 0 - 1 Lille (26-04-2026)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)
13 Angers 31 34 26 43 -17 LAngers 0 - 3 Paris Saint Germain (25-04-2026)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)
14 Le Havre 31 31 29 42 -13 DLe Havre 4 - 4 Metz (26-04-2026)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)
15 Nice 31 30 35 57 -22 DMarseille 1 - 1 Nice (26-04-2026)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)
16 Auxerre 31 25 27 42 -15 LLyon 3 - 2 Auxerre (25-04-2026)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)
17 Nantes 31 20 26 51 -25 LRennes 2 - 1 Nantes (26-04-2026)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)
18 Metz 31 16 31 70 -39 DLe Havre 4 - 4 Metz (26-04-2026)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)