Ligue 1 Regular Season - 33

Lens 1 - 0 FT Nantes

Stade Bollaert-Delelis

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

Futmetrix Verdict
46
FT
Fri, May 8
Français
Lens
1-0
Nantes
⚡ Intensity 26
⚖️ Balance 20
🏆 Stakes 100
🎲 Upset 0
Late strike shatters Nantes' survival hopes.

Soares Strikes Late as Lens Deepen Nantes' Misery

Average Entertainment Futmetrix Score: 46/100. Our verdict: A cruel but decisive clash where Lens cemented their Champions League credentials while effectively sealing Nantes' relegation fate.

Nerves Under the Floodlights

The Stakes were exceptionally high as this fixture kicked off at Stade Bollaert-Delelis, with both sides desperate for points at opposite ends of the table. Lens immediately established their rhythm and dominated possession, controlling the ball for 64% of the match. However, Nantes refused to roll over in their fight for survival. The visitors operated with a resilient defensive shape and looked incredibly dangerous on the break. Frédéric Guilbert delivered an outstanding performance in the middle of the park, creating four key passes and disrupting the home side's rhythm. His vision and tactical discipline kept the Balance of the match firmly on a knife-edge during a tense and scoreless first half, proving that the struggling visitors were prepared to fight until the bitter end.

VAR Drama and the Breakthrough

Following the interval, the Intensity skyrocketed as desperation began to set in for both squads. A staggering 29 combined shots turned the pitch into an absolute battleground. The home crowd erupted in the 71st minute when A. Sima seemingly broke the deadlock, only for VAR to silence the stadium by ruling the goal out for a handball. Rather than letting frustration derail their campaign, the home side ramped up the pressure through endless corner routines. The defining moment arrived in the 79th minute. Substitute Mezian Soares found exactly the pocket of space required, latching onto a precise delivery from A. Bulatovic. Soares dispatched a clinical finish past the keeper, finally fracturing the stubborn defensive wall and sending the home supporters into sheer delirium.

Champions League Calling

The final ten minutes required absolute defensive perfection from the title challengers. Nantes threw caution to the wind, ultimately outperforming their hosts in expected goals (1.11) and forcing a barrage of late opportunities. This is where Robin Risser earned his paycheck, producing three absolutely crucial saves to deny the visitors a desperate lifeline. The final whistle confirmed a massive 1-0 victory that solidifies second place for the hosts and keeps their Champions League dreams very much alive. For the Canaries, the defeat represents a devastating blow. Sitting seven points from safety with just one match remaining, their relegation battle has reached a tragic mathematical conclusion. The harsh reality of top-flight football was fully displayed tonight.

Key Questions

What does this mean for Lens's season?

This victory solidifies their grip on second place, keeping title hopes mathematically alive while practically guaranteeing lucrative Champions League football for the upcoming campaign.

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
64%
36%
Lens 64%
Nantes 36%
Shots
14
15
Lens 14
Nantes 15
Shots on Target
5
3
Lens 5
Nantes 3
Expected Goals (xG)
0.77
1.11
Lens 0.77
Nantes 1.11
Passes
469
259
Lens 469
Nantes 259
Pass Accuracy
82%
70%
Lens 82%
Nantes 70%
Corners
8
3
Lens 8
Nantes 3
Fouls
15
15
Lens 15
Nantes 15
Yellow Cards
2
1
Lens 2
Nantes 1
Red Cards
0
0
Lens 0
Nantes 0

Match Events

15' 🟨 A. Sima
36' 🟨 A. Bulatovic
HT
46' 🔄 R. Fofana F. Sotoca
59' 🔄 O. Edouard R. Aguilar
65' 🔄 A. Haidara F. Sylla
U. Radakovic Ali Youssef 🔄 66'
71' A. Sima
Ali Youssef 🟨 75'
78' 🔄 W. Said A. Bermont
79' 🔄 A. Sima M. Soares
79' M. Soares (A. Bulatovic)
I. Ganago Mostafa Mohamed 🔄 82'
M. Kaba L. Leroux 🔄 82'
M. Abline Y. El Arabi 🔄 82'
F. Guilbert D. Tabibou 🔄 87'
FT

Player Cards

Our take on every player in this match

Lens

Goalkeepers
Robin Risser
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
95
Total Mins
Started
Entry
Defenders
Ismaelo Ganiou
WALL
WALL
0
Dribbled Past
0
Dribbled Past
3
Tackles
71%
Duel Win %
Samson Baidoo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
95
Total Mins
Started
Entry
Malang Sarr
PROVOCATEUR
PROVOCATEUR
2
Fouls Won
2
Fouls Won
2
Duels Won
0
Pens Won
Midfielders
Abdallah Sima
LATE SHIFT
LATE SHIFT
11
Late Mins
11
Late Mins
79
Total Mins
79
Entry
Andrija Bulatovic
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
1
Assists
21%
Pass Acc
Amadou Haidara
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
65
Total Mins
65
Entry
Matthieu Udol
STORMTROOPER
STORMTROOPER
3
Shots
3
Shots
0
Goals
1
On Target
Forwards
Rayan Fofana
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
45
Total Mins
46
Entry
Wesley Saïd
LATE SHIFT
LATE SHIFT
12
Late Mins
12
Late Mins
79
Total Mins
78
Entry
Odsonne Édouard
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
59
Total Mins
59
Entry
BENCH
Mathieu Gorgelin
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Kyllian Antonio
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Arthur Masuaku
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Nidal Čelik
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Ruben Aguilar
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
36
Total Mins
Started
Entry
Anthony Bermont
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
16
Total Mins
Started
Entry
Fode Sylla
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
30
Total Mins
Started
Entry
Mezian Soares
👻 Invisible Nothing to note
Florian Sotoca
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
50
Total Mins
Started
Entry

Nantes

Goalkeepers
Anthony Lopes
STORMTROOPER
STORMTROOPER
1
Shots
1
Shots
0
Goals
0
On Target
Defenders
Chidozie Awaziem
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
95
Total Mins
Started
Entry
Uroš Radaković
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
66
Total Mins
66
Entry
Nicolas Cozza
PROVOCATEUR
PROVOCATEUR
2
Fouls Won
2
Fouls Won
3
Duels Won
0
Pens Won
Midfielders
Mathieu Acapandié
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
95
Total Mins
Started
Entry
Mohamed Kaba
PROVOCATEUR
PROVOCATEUR
3
Fouls Won
3
Fouls Won
7
Duels Won
0
Pens Won
Ibrahima Sissoko
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
95
Total Mins
Started
Entry
Johann Lepenant
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
95
Total Mins
Started
Entry
Frédéric Guilbert
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
0
Assists
15%
Pass Acc
Forwards
Matthis Abline
LATE SHIFT
LATE SHIFT
8
Late Mins
8
Late Mins
82
Total Mins
82
Entry
Ignatius Kpene Ganago
PROVOCATEUR
PROVOCATEUR
3
Fouls Won
3
Fouls Won
7
Duels Won
0
Pens Won
BENCH
Patrik Carlgren
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Ali Youssef
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
29
Total Mins
Started
Entry
Sékou Doucoure
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Dehmaine Tabibou
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
8
Total Mins
Started
Entry
Louis Leroux
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
13
Total Mins
Started
Entry
Rémy Cabella
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Mostafa Mohamed
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
13
Total Mins
Started
Entry
Bahereba Guirassy
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Youssef El Arabi
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
13
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
12/06/2025 Nantes 1 - 2 Lens Ligue 1 Stade de la Beaujoire
02/23/2025 Nantes 3 - 1 Lens Ligue 1 Stade de la Beaujoire - Louis Fonteneau
11/09/2024 Lens 3 - 2 Nantes Ligue 1 Stade Bollaert-Delelis
02/03/2024 Nantes 0 - 1 Lens Ligue 1 Stade de la Beaujoire - Louis Fonteneau
10/28/2023 Lens 4 - 0 Nantes Ligue 1 Stade Bollaert-Delelis
03/01/2023 Nantes 2 - 1 Lens Coupe de France Stade de la Beaujoire - Louis Fonteneau
02/19/2023 Lens 3 - 1 Nantes Ligue 1 Stade Bollaert-Delelis
09/18/2022 Nantes 0 - 0 Lens Ligue 1 Stade de la Beaujoire - Louis Fonteneau
04/30/2022 Lens 2 - 2 Nantes Ligue 1 Stade Bollaert-Delelis
12/10/2021 Nantes 3 - 2 Lens Ligue 1 Stade de la Beaujoire - Louis Fonteneau
12/06/2025
1 - 2
Ligue 1 Stade de la Beaujoire
02/23/2025
3 - 1
Ligue 1 Stade de la Beaujoire - Louis Fonteneau
11/09/2024
3 - 2
Ligue 1 Stade Bollaert-Delelis
02/03/2024
0 - 1
Ligue 1 Stade de la Beaujoire - Louis Fonteneau
10/28/2023
4 - 0
Ligue 1 Stade Bollaert-Delelis
03/01/2023
2 - 1
Coupe de France Stade de la Beaujoire - Louis Fonteneau
02/19/2023
3 - 1
Ligue 1 Stade Bollaert-Delelis
09/18/2022
0 - 0
Ligue 1 Stade de la Beaujoire - Louis Fonteneau
04/30/2022
2 - 2
Ligue 1 Stade Bollaert-Delelis
12/10/2021
3 - 2
Ligue 1 Stade de la Beaujoire - Louis Fonteneau
Lens Win
Nantes Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Paris Saint Germain 33 76 73 27 +46 WLens 0 - 2 Paris Saint Germain (13-05-2026)WParis Saint Germain 1 - 0 Stade Brestois 29 (10-05-2026)DParis Saint Germain 2 - 2 Lorient (02-05-2026)WAngers 0 - 3 Paris Saint Germain (25-04-2026)WParis Saint Germain 3 - 0 Nantes (22-04-2026)
2 Lens 33 67 62 35 +27 LLens 0 - 2 Paris Saint Germain (13-05-2026)WLens 1 - 0 Nantes (08-05-2026)DNice 1 - 1 Lens (02-05-2026)DStade Brestois 29 3 - 3 Lens (24-04-2026)WLens 3 - 2 Toulouse (17-04-2026)
3 Lille 33 61 52 35 +17 WMonaco 0 - 1 Lille (10-05-2026)DLille 1 - 1 Le Havre (03-05-2026)WParis FC 0 - 1 Lille (26-04-2026)DLille 0 - 0 Nice (18-04-2026)WToulouse 0 - 4 Lille (12-04-2026)
4 Lyon 33 60 53 36 +17 LToulouse 2 - 1 Lyon (10-05-2026)WLyon 4 - 2 Rennes (03-05-2026)WLyon 3 - 2 Auxerre (25-04-2026)WParis Saint Germain 1 - 2 Lyon (19-04-2026)WLyon 2 - 0 Lorient (12-04-2026)
5 Rennes 33 59 58 47 +11 WRennes 2 - 1 Paris FC (10-05-2026)LLyon 4 - 2 Rennes (03-05-2026)WRennes 2 - 1 Nantes (26-04-2026)WStrasbourg 0 - 3 Rennes (19-04-2026)WRennes 2 - 1 Angers (11-04-2026)
6 Marseille 33 56 60 44 +16 WLe Havre 0 - 1 Marseille (10-05-2026)LNantes 3 - 0 Marseille (02-05-2026)DMarseille 1 - 1 Nice (26-04-2026)LLorient 2 - 0 Marseille (18-04-2026)WMarseille 3 - 1 Metz (10-04-2026)
7 Monaco 33 54 56 49 +7 LMonaco 0 - 1 Lille (10-05-2026)WMetz 1 - 2 Monaco (02-05-2026)DToulouse 2 - 2 Monaco (25-04-2026)DMonaco 2 - 2 Auxerre (19-04-2026)LParis FC 4 - 1 Monaco (10-04-2026)
8 Strasbourg 33 50 53 43 +10 WStade Brestois 29 1 - 2 Strasbourg (13-05-2026)DAngers 1 - 1 Strasbourg (10-05-2026)LStrasbourg 1 - 2 Toulouse (03-05-2026)WLorient 2 - 3 Strasbourg (26-04-2026)LStrasbourg 0 - 3 Rennes (19-04-2026)
9 Lorient 33 45 48 49 -1 WMetz 0 - 4 Lorient (10-05-2026)DParis Saint Germain 2 - 2 Lorient (02-05-2026)LLorient 2 - 3 Strasbourg (26-04-2026)WLorient 2 - 0 Marseille (18-04-2026)LLyon 2 - 0 Lorient (12-04-2026)
10 Toulouse 33 44 47 46 +1 WToulouse 2 - 1 Lyon (10-05-2026)WStrasbourg 1 - 2 Toulouse (03-05-2026)DToulouse 2 - 2 Monaco (25-04-2026)LLens 3 - 2 Toulouse (17-04-2026)LToulouse 0 - 4 Lille (12-04-2026)
11 Paris FC 33 41 45 49 -4 LRennes 2 - 1 Paris FC (10-05-2026)WParis FC 4 - 0 Stade Brestois 29 (03-05-2026)LParis FC 0 - 1 Lille (26-04-2026)WMetz 1 - 3 Paris FC (19-04-2026)WParis FC 4 - 1 Monaco (10-04-2026)
12 Stade Brestois 29 33 38 42 54 -12 LStade Brestois 29 1 - 2 Strasbourg (13-05-2026)LParis Saint Germain 1 - 0 Stade Brestois 29 (10-05-2026)LParis FC 4 - 0 Stade Brestois 29 (03-05-2026)DStade Brestois 29 3 - 3 Lens (24-04-2026)DNantes 1 - 1 Stade Brestois 29 (19-04-2026)
13 Angers 33 35 28 47 -19 DAngers 1 - 1 Strasbourg (10-05-2026)LAuxerre 3 - 1 Angers (03-05-2026)LAngers 0 - 3 Paris Saint Germain (25-04-2026)DAngers 1 - 1 Le Havre (18-04-2026)LRennes 2 - 1 Angers (11-04-2026)
14 Le Havre 33 32 30 44 -14 LLe Havre 0 - 1 Marseille (10-05-2026)DLille 1 - 1 Le Havre (03-05-2026)DLe Havre 4 - 4 Metz (26-04-2026)DAngers 1 - 1 Le Havre (18-04-2026)DNice 1 - 1 Le Havre (12-04-2026)
15 Auxerre 33 31 32 44 -12 WAuxerre 2 - 1 Nice (10-05-2026)WAuxerre 3 - 1 Angers (03-05-2026)LLyon 3 - 2 Auxerre (25-04-2026)DMonaco 2 - 2 Auxerre (19-04-2026)DAuxerre 0 - 0 Nantes (11-04-2026)
16 Nice 33 31 37 60 -23 LAuxerre 2 - 1 Nice (10-05-2026)DNice 1 - 1 Lens (02-05-2026)DMarseille 1 - 1 Nice (26-04-2026)DLille 0 - 0 Nice (18-04-2026)DNice 1 - 1 Le Havre (12-04-2026)
17 Nantes 33 23 29 52 -23 LLens 1 - 0 Nantes (08-05-2026)WNantes 3 - 0 Marseille (02-05-2026)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)
18 Metz 33 16 32 76 -44 LMetz 0 - 4 Lorient (10-05-2026)LMetz 1 - 2 Monaco (02-05-2026)DLe Havre 4 - 4 Metz (26-04-2026)LMetz 1 - 3 Paris FC (19-04-2026)LMarseille 3 - 1 Metz (10-04-2026)
19 Rodez 2 4 3 2 +1 DSaint Etienne 0 - 0 (PEN 7-6) Rodez (15-05-2026)WRED Star FC 93 2 - 3 Rodez (12-05-2026)
20 Saint Etienne 1 1 0 0 0 DSaint Etienne 0 - 0 (PEN 7-6) Rodez (15-05-2026)
21 RED Star FC 93 1 0 2 3 -1 LRED Star FC 93 2 - 3 Rodez (12-05-2026)
20 Saint Etienne 1 pts
P: 1 GD: 0
21 RED Star FC 93 0 pts
P: 1 GD: -1