Ligue 1 Regular Season - 13

Toulouse 0 - 1 FT Angers

Stadium de Toulouse

AI-powered match analysis and previews to help you decide which games are worth watching

30
FT
Sun, Nov 23
Français
Toulouse
0-1
Angers
⚡ Intensity 19
⚖️ Balance 20
🏆 Stakes 0
🎲 Upset 80
Angers Stun Toulouse in Ligue 1 Shocker

Angers Steal Glory in Epic Battle at Stadium de Toulouse

Skip It Futmetrix Score: 30/100. An upset of remarkable intensity, Angers transformed Toulouse's attacking onslaught into three crucial points that could define their survival fight.

Toulouse's Attacking Siege Meets an Unbreakable Wall

At Stadium de Toulouse, the script seemed inevitable: the hosts would overwhelm their visitors. With 25 shots fired against just 6 in return, Toulouse turned the pitch into a shooting gallery. Yet Hervé Koffi stood immovable. The Angers goalkeeper repelled six on-target efforts with remarkable composure, refusing to buckle under relentless pressure. Cristian Cásseres Jr. spearheaded Toulouse's assault with intensity, but balance shattered in the 16th minute.

Belkhdim Delivers the Knockout Blow

Yassin Belkhdim seized a rare opening to strike in the 16th minute. One clinical finish—that's all Angers needed. Despite 12 corners and sustained dominance, Toulouse could not find an equaliser. The stakes couldn't be higher: every point matters in a relegation battle, and Angers leave Stadium de Toulouse with treasure in their pockets.

A Shock Result That Reshapes the Table

With a probability gap of 42%, this victory represents a genuine upset. The numbers tell a cruel story for Toulouse: 25 shots, 8 on target, an xG of 1.98, zero goals. Angers, operating on 0.43 xG, converted their single chance into pure gold. This is football's brutal reality: dominance guarantees nothing. Toulouse slips deeper into crisis, while Angers breathe easier in their fight for survival.

Key Questions

What Made Hervé Koffi the Match Hero?

Six crucial saves against 25 shots: Koffi was unbreakable. His focus and reflexes turned an expected defeat into a historic victory for Angers.

How is the Futmetrix Score calculated?

The Futmetrix Score (0-100) combines multiple factors: match intensity, competitive balance, stakes importance, and entertainment value to help you decide if this match is worth watching.

Match Statistics

Possession
54%
46%
Toulouse 54%
Angers 46%
Shots
25
6
Toulouse 25
Angers 6
Shots on Target
6
2
Toulouse 6
Angers 2
Expected Goals (xG)
1.98
0.43
Toulouse 1.98
Angers 0.43
Passes
464
418
Toulouse 464
Angers 418
Pass Accuracy
84%
80%
Toulouse 84%
Angers 80%
Corners
11
1
Toulouse 11
Angers 1
Fouls
15
15
Toulouse 15
Angers 15
Yellow Cards
1
3
Toulouse 1
Angers 3
Red Cards
0
0
Toulouse 0
Angers 0

Match Events

Y. Belkhdim 16'
Haris Belkebla 🟨 29'
HT
66' 🔄 F. Magri R. Messali
S. Cherif P. Peter 🔄 68'
72' 🔄 A. Vossah D. Sidibe
72' 🔄 D. Methalie N. Edjouma
Jacques Ekomie 🟨 75'
L. Mouton H. Djibirin 🔄 81'
82' 🔄 M. McKenzie J. Vignolo
Djibirin Harouna 🟨 85'
H. Abdelli F. Hanin 🔄 90'+1
A. Sbai M. Courcoul 🔄 90'+1
90'+4 🟨 Emersonn
FT

Player Cards

Season performance ratings for players in this match

Toulouse

Goalkeepers
G. Restes
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
Defenders
M. McKenzie
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
0
Assists
42%
Pass Acc
C. Cresswell
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
0
Assists
61%
Pass Acc
R. Nicolaisen
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
0
On Target
Midfielders
A. Donnum
ARCHITECT
ARCHITECT
8
Key Passes
8
Key Passes
0
Assists
28%
Pass Acc
C. Casseres
MAGNET
MAGNET
72
Activity
72
Activity
57
Passes
15
Duels
A. Vossah
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
0
On Target
D. Methalie
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
72
Total Mins
72
Entry
Forwards
F. Magri
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
66
Total Mins
66
Entry
Y. Gboho
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
33%
Pass Acc
Emersonn
STORMTROOPER
STORMTROOPER
3
Shots
3
Shots
0
Goals
1
On Target
BENCH
K. Haug
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
W. Kamanzi
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
D. Sidibe
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
18
Total Mins
Started
Entry
S. Koumbassa
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
R. Messali
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
24
Total Mins
Started
Entry
N. Lahmadi
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
S. Hidalgo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
J. Vignolo
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
8
Total Mins
Started
Entry
N. Edjouma
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
18
Total Mins
Started
Entry

Angers

Goalkeepers
H. Koffi
OCTOPUS
OCTOPUS
6
Saves
6
Saves
0
Conceded
100%
Save %
Defenders
L. Raolisoa
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
62%
Duel Win %
O. Camara
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
J. Lefort
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
J. Ekomie
WALL
WALL
0
Dribbled Past
0
Dribbled Past
2
Tackles
71%
Duel Win %
Midfielders
H. Belkebla
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
90
Total Mins
Started
Entry
H. Abdelli
MAGNET
MAGNET
77
Activity
77
Activity
65
Passes
12
Duels
Y. Belkhdim
SWEEPER
SWEEPER
3
Cleanups
3
Cleanups
2
Interceptions
1
Blocks
L. Mouton
LATE SHIFT
LATE SHIFT
9
Late Mins
9
Late Mins
81
Total Mins
81
Entry
A. Sbai
NPC
NPC
89
Minutes
89
Minutes
22%
Pass Acc
6.2
Rating
Forwards
S. Cherif
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
68
Total Mins
68
Entry
BENCH
O. Pona
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
F. Hanin
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
1
Total Mins
Started
Entry
A. Bamba
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
C. Arcus
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
M. Courcoul
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
1
Total Mins
Started
Entry
P. Capelle
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
H. Djibirin
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry
L. Machine
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
P. Peter
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
22
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
02/03/2025 Angers 0 - 4 Toulouse Ligue 1 Stade Raymond Kopa
20/10/2024 Toulouse 1 - 1 Angers Ligue 1 Stadium de Toulouse
12/03/2023 Angers 0 - 2 Toulouse Ligue 1 Stade Raymond-Kopa
16/10/2022 Toulouse 3 - 2 Angers Ligue 1 Stadium de Toulouse
25/09/2019 Toulouse 0 - 2 Angers Ligue 1 Stadium de Toulouse
27/01/2019 Toulouse 0 - 0 Angers Ligue 1 Stadium de Toulouse
22/09/2018 Angers 0 - 0 Toulouse Ligue 1 Stade Raymond-Kopa
21/04/2018 Toulouse 2 - 0 Angers Ligue 1 Stadium Municipal
02/03/2025
Ligue 1 Stade Raymond Kopa
20/10/2024
Ligue 1 Stadium de Toulouse
12/03/2023
Ligue 1 Stade Raymond-Kopa
16/10/2022
Ligue 1 Stadium de Toulouse
25/09/2019
Ligue 1 Stadium de Toulouse
27/01/2019
Ligue 1 Stadium de Toulouse
22/09/2018
Ligue 1 Stade Raymond-Kopa
21/04/2018
Ligue 1 Stadium Municipal
Toulouse Win
Angers Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Paris Saint Germain 13 30 27 11 +16 WParis Saint Germain 3 - 0 Le Havre (22-11-2025)WLyon 2 - 3 Paris Saint Germain (09-11-2025)WParis Saint Germain 1 - 0 Nice (01-11-2025)DLorient 1 - 1 Paris Saint Germain (29-10-2025)WStade Brestois 29 0 - 3 Paris Saint Germain (25-10-2025)
2 Marseille 13 28 33 12 +21 WNice 1 - 5 Marseille (21-11-2025)WMarseille 3 - 0 Stade Brestois 29 (08-11-2025)WAuxerre 0 - 1 Marseille (01-11-2025)DMarseille 2 - 2 Angers (29-10-2025)LLens 2 - 1 Marseille (25-10-2025)
3 Lens 13 28 22 11 +11 WLens 1 - 0 Strasbourg (22-11-2025)WMonaco 1 - 4 Lens (08-11-2025)WLens 3 - 0 Lorient (02-11-2025)LMetz 2 - 0 Lens (29-10-2025)WLens 2 - 1 Marseille (25-10-2025)
4 Lille 13 23 27 17 +10 WLille 4 - 2 Paris FC (23-11-2025)LStrasbourg 2 - 0 Lille (09-11-2025)WLille 1 - 0 Angers (02-11-2025)LNice 2 - 0 Lille (29-10-2025)WLille 6 - 1 Metz (26-10-2025)
5 Strasbourg 13 22 24 17 +7 LLens 1 - 0 Strasbourg (22-11-2025)WStrasbourg 2 - 0 Lille (09-11-2025)LRennes 4 - 1 Strasbourg (02-11-2025)WStrasbourg 3 - 0 Auxerre (29-10-2025)LLyon 2 - 1 Strasbourg (26-10-2025)
6 Rennes 13 21 23 18 +5 WRennes 4 - 1 Monaco (22-11-2025)WParis FC 0 - 1 Rennes (07-11-2025)WRennes 4 - 1 Strasbourg (02-11-2025)DToulouse 2 - 2 Rennes (29-10-2025)LRennes 1 - 2 Nice (26-10-2025)
7 Lyon 13 21 18 15 +3 DAuxerre 0 - 0 Lyon (23-11-2025)LLyon 2 - 3 Paris Saint Germain (09-11-2025)DStade Brestois 29 0 - 0 Lyon (02-11-2025)DParis FC 3 - 3 Lyon (29-10-2025)WLyon 2 - 1 Strasbourg (26-10-2025)
8 Monaco 13 20 25 25 0 LRennes 4 - 1 Monaco (22-11-2025)LMonaco 1 - 4 Lens (08-11-2025)LMonaco 0 - 1 Paris FC (01-11-2025)WNantes 3 - 5 Monaco (29-10-2025)WMonaco 1 - 0 Toulouse (25-10-2025)
9 Nice 13 17 18 23 -5 LNice 1 - 5 Marseille (21-11-2025)LMetz 2 - 1 Nice (09-11-2025)LParis Saint Germain 1 - 0 Nice (01-11-2025)WNice 2 - 0 Lille (29-10-2025)WRennes 1 - 2 Nice (26-10-2025)
10 Toulouse 13 16 18 17 +1 LToulouse 0 - 1 Angers (23-11-2025)DLorient 1 - 1 Toulouse (09-11-2025)DToulouse 0 - 0 Le Havre (02-11-2025)DToulouse 2 - 2 Rennes (29-10-2025)LMonaco 1 - 0 Toulouse (25-10-2025)
11 Angers 13 16 11 15 -4 WToulouse 0 - 1 Angers (23-11-2025)WAngers 2 - 0 Auxerre (09-11-2025)LLille 1 - 0 Angers (02-11-2025)DMarseille 2 - 2 Angers (29-10-2025)WAngers 2 - 0 Lorient (26-10-2025)
12 Paris FC 13 14 20 25 -5 LLille 4 - 2 Paris FC (23-11-2025)LParis FC 0 - 1 Rennes (07-11-2025)WMonaco 0 - 1 Paris FC (01-11-2025)DParis FC 3 - 3 Lyon (29-10-2025)LParis FC 1 - 2 Nantes (24-10-2025)
13 Le Havre 13 14 13 20 -7 LParis Saint Germain 3 - 0 Le Havre (22-11-2025)DLe Havre 1 - 1 Nantes (08-11-2025)DToulouse 0 - 0 Le Havre (02-11-2025)WLe Havre 1 - 0 Stade Brestois 29 (29-10-2025)WAuxerre 0 - 1 Le Havre (26-10-2025)
14 Stade Brestois 29 13 13 17 23 -6 WStade Brestois 29 3 - 2 Metz (23-11-2025)LMarseille 3 - 0 Stade Brestois 29 (08-11-2025)DStade Brestois 29 0 - 0 Lyon (02-11-2025)LLe Havre 1 - 0 Stade Brestois 29 (29-10-2025)LStade Brestois 29 0 - 3 Paris Saint Germain (25-10-2025)
15 Nantes 13 11 12 19 -7 DNantes 1 - 1 Lorient (23-11-2025)DLe Havre 1 - 1 Nantes (08-11-2025)LNantes 0 - 2 Metz (02-11-2025)LNantes 3 - 5 Monaco (29-10-2025)WParis FC 1 - 2 Nantes (24-10-2025)
16 Lorient 13 11 15 27 -12 DNantes 1 - 1 Lorient (23-11-2025)DLorient 1 - 1 Toulouse (09-11-2025)LLens 3 - 0 Lorient (02-11-2025)DLorient 1 - 1 Paris Saint Germain (29-10-2025)LAngers 2 - 0 Lorient (26-10-2025)
17 Metz 13 11 14 30 -16 LStade Brestois 29 3 - 2 Metz (23-11-2025)WMetz 2 - 1 Nice (09-11-2025)WNantes 0 - 2 Metz (02-11-2025)WMetz 2 - 0 Lens (29-10-2025)LLille 6 - 1 Metz (26-10-2025)
18 Auxerre 13 8 7 19 -12 DAuxerre 0 - 0 Lyon (23-11-2025)LAngers 2 - 0 Auxerre (09-11-2025)LAuxerre 0 - 1 Marseille (01-11-2025)LStrasbourg 3 - 0 Auxerre (29-10-2025)LAuxerre 0 - 1 Le Havre (26-10-2025)