Ligue 1 Regular Season - 30

Nantes 1 - 1 FT Stade Brestois 29

Stade de la Beaujoire

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

Futmetrix Verdict
89
FT
Sun, Apr 19
Français
Nantes
1-1
Stade Brestois 29
⚡ Intensity 76
⚖️ Balance 44
🏆 Stakes 78
🎲 Upset 20
A stoppage-time dagger breaks Nantes' hearts.

Stoppage-Time Heartbreak Deepens Nantes' Relegation Nightmares

Must-Watch Futmetrix Score: 89/100. A desperately needed victory slipped through Nantes' fingers at the death, delivering a catastrophic blow to their fading survival hopes.

The Desperate Opener

Sitting ten points adrift of safety in the relegation zone, Nantes stepped onto the pitch at Stade de la Beaujoire knowing nothing less than three points would suffice. The Stakes in this Derby Breton were monumental, and the hosts channeled that desperation immediately. Just nine minutes in, Mostafa Mohamed electrified the home crowd by breaking the deadlock, finishing neatly after a sharp intervention from F. Coquelin. Despite conceding the bulk of possession to the visitors, the Canaries unleashed a relentless attacking siege. Racking up seventeen total shots and winning eleven corners, they transformed the opening hour into a suffocating barrage against the Brest penalty area.

The Disastrous Pivot

The Intensity of the contest completely fractured in the sixty-fifth minute. Just as the hosts looked comfortable protecting their narrow lead, D. Tabibou was shown a straight red card for a reckless challenge. The disciplinary meltdown deepened moments later when V. Halilhodzic was also dismissed from the sidelines. Playing a man down completely paralyzed the home side's attacking momentum. Stade Brestois 29 were suddenly handed a golden lifeline, pushing their defensive line higher up the pitch and laying siege to a tiring, shorthanded defensive unit.

The Stoppage-Time Blow

The final stages were an agonizing exercise in survival. The visitors controlled possession throughout the half, relentlessly probing for an opening as the tactical Balance shifted entirely in their favour. Just when it seemed the hosts had heroically weathered the storm, the devastating blow landed in the ninety-sixth minute. R. Del Castillo floated a precise delivery into the area, and B. Chardonnet rose highest to bury the equalizer, delivering a massive Upset Factor right at the death. Brest snatch a fortuitous mid-table point, while Nantes are left staring down the barrel of an agonizing drop to the second tier.

Key Questions

How did the red card for D. Tabibou impact the match?

The 65th-minute dismissal shattered Nantes' attacking rhythm, forcing them into a desperate defensive block that ultimately collapsed under relentless stoppage-time pressure.

What made Brendan Chardonnet the Man of the Match?

Beyond organizing the backline, he provided the decisive 96th-minute equalizer, single-handedly salvaging a point and breaking Nantes' heroic ten-man resistance.

Did Nantes deserve the late equalizer?

It was incredibly harsh. Nantes dominated offensively with 17 shots to 4, but playing with 10 men allowed Brest to ruthlessly exploit their possession advantage late on.

What is the Breton Derby?

The Breton Derby is the rivalry between Nantes and Stade Brestois 29, a passionate regional rivalry with deep local significance.

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
43%
57%
Nantes 43%
Stade Brestois 29 57%
Shots
17
4
Nantes 17
Stade Brestois 29 4
Shots on Target
4
2
Nantes 4
Stade Brestois 29 2
Expected Goals (xG)
0.91
0.36
Nantes 0.91
Stade Brestois 29 0.36
Passes
298
418
Nantes 298
Stade Brestois 29 418
Pass Accuracy
79%
82%
Nantes 79%
Stade Brestois 29 82%
Corners
11
0
Nantes 11
Stade Brestois 29 0
Fouls
13
17
Nantes 13
Stade Brestois 29 17
Yellow Cards
2
2
Nantes 2
Stade Brestois 29 2
Red Cards
1
0
Nantes 1
Stade Brestois 29 0

Match Events

9' Mostafa Mohamed (F. Coquelin)
D. Guindo 🟨 41'
R. Del Castillo 🟨 45'+1
HT
46' 🔄 F. Coquelin L. Leroux
56' 🟨 L. Leroux
65' 🟥 D. Tabibou
J. Dina Ebimbe H. Makalou 🔄 67'
D. Guindo K. Lala 🔄 67'
69' 🟥 V. Halilhodzic
77' 🔄 Mostafa Mohamed M. Abline
H. Magnetti P. Mboup 🔄 78'
90' 🔄 I. Ganago M. Acapandie
90'+4 🟨 A. Lopes
B. Chardonnet (R. Del Castillo) 90'+6
FT

Player Cards

Our take on every player in this match

Nantes

Goalkeepers
Anthony Lopes
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
Defenders
Frederic Guilbert
PROVOCATEUR
PROVOCATEUR
2
Fouls Won
2
Fouls Won
7
Duels Won
0
Pens Won
Ali Youssef
PROVOCATEUR
PROVOCATEUR
3
Fouls Won
3
Fouls Won
5
Duels Won
0
Pens Won
Nicolas Cozza
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
1
On Target
Deiver Machado
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
0
Assists
17%
Pass Acc
Midfielders
Francis Coquelin
PROVIDER
PROVIDER
1
Assists
1
Assists
1
Key Passes
6.7
Rating
Dehmaine Tabibou
FRIENDLY FIRE
FRIENDLY FIRE
Red Card
Mistake
Red Card
Mistake
2
Fouls
6
Rating
Ibrahima Sissoko
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
Johann Lepenant
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
Ignatius Ganago
NPC
NPC
91
Minutes
91
Minutes
9%
Pass Acc
6.6
Rating
Forwards
Mostafa Mohamed
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
BENCH
Patrik Carlgren
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Sékou Doucoure
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Chidozie Awaziem
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Uros Radakovic
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Mathieu Acapandié
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry
Louis Leroux
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
55
Total Mins
Started
Entry
Matthis Abline
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
23
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
0
Total Mins
Started
Entry

Stade Brestois 29

Goalkeepers
Grégoire Coudert
PROVOCATEUR
PROVOCATEUR
1
Fouls Won
1
Fouls Won
1
Duels Won
0
Pens Won
Defenders
Luc Zogbé
PROVOCATEUR
PROVOCATEUR
3
Fouls Won
3
Fouls Won
8
Duels Won
0
Pens Won
Brendan Chardonnet
CLUTCH HERO
CLUTCH HERO
90
Goal Time
90
Goal Time
Goal
Impact
8.5
Rating
Soumaila Coulibaly
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
Daouda Guindo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
67
Total Mins
67
Entry
Midfielders
Joris Chotard
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
Hugo Magnetti
LATE SHIFT
LATE SHIFT
12
Late Mins
12
Late Mins
78
Total Mins
78
Entry
Romain Del Castillo
PROVIDER
PROVIDER
1
Assists
1
Assists
1
Key Passes
6.3
Rating
Junior Dina Ebimbe
ENFORCER
ENFORCER
4
Tackles
4
Tackles
7
Duels Won
78%
Win %
Remy Labeau Lascary
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
Forwards
Ludovic Ajorque
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
100
Total Mins
Started
Entry
BENCH
Radosław Majecki
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Kenny Lala
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
33
Total Mins
Started
Entry
Raphaël Le Guen
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Hamidou Makalou
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
33
Total Mins
Started
Entry
Lucas Tousart
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Pathé Mboup
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
22
Total Mins
Started
Entry
Ibrahim Yayiya Kante
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Serigne Diop
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
10/04/2025 Stade Brestois 29 0 - 0 Nantes Ligue 1 Stade Francis-Le Blé
02/07/2025 Nantes 0 - 2 Stade Brestois 29 Ligue 1 Stade de la Beaujoire - Louis Fonteneau
01/15/2025 Stade Brestois 29 2 - 1 Nantes Coupe de France Stade Francis-Le Blé
12/15/2024 Stade Brestois 29 4 - 1 Nantes Ligue 1 Stade Francis-Le Blé
05/04/2024 Stade Brestois 29 0 - 0 Nantes Ligue 1 Stade Francis-Le Blé
12/17/2023 Nantes 0 - 2 Stade Brestois 29 Ligue 1 Stade de la Beaujoire - Louis Fonteneau
10/04/2025
Ligue 1 Stade Francis-Le Blé
02/07/2025
Ligue 1 Stade de la Beaujoire - Louis Fonteneau
01/15/2025
Coupe de France Stade Francis-Le Blé
12/15/2024
Ligue 1 Stade Francis-Le Blé
05/04/2024
Ligue 1 Stade Francis-Le Blé
12/17/2023
Ligue 1 Stade de la Beaujoire - Louis Fonteneau
Nantes Win
Stade Brestois 29 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)