Ligue 1 Regular Season - 25

Lyon 1 - 1 FT Paris FC

Parc Olympique Lyonnais

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

Futmetrix Verdict
64
FT
Sun, Mar 8
Français
Lyon
1-1
Paris FC
⚡ Intensity 49
⚖️ Balance 40
🏆 Stakes 56
🎲 Upset 57
Tolisso penalty rescues Lyon's Champions League hunt.

A Tale of Two Halves at Parc Olympique Lyonnais

Worth Watching Futmetrix Score: 64/100. Lyon salvaged a crucial point in the dying moments after a relentless but inefficient attacking display left them vulnerable to a Paris FC sucker-punch.

The Siege of the Capital

From the opening exchange at Parc Olympique Lyonnais, Lyon established a clear territorial dominance, controlling 62% of the ball. The Intensity was palpable as the home side unleashed a barrage of 27 shots, peppering the visitors' goal from all angles. Moussa Niakhaté was the standout architect from the back, balancing his defensive duties with three key passes that repeatedly sliced through the midfield. Despite the constant pressure and eight corners, the breakthrough remained elusive. Lyon’s build-up play was fluid, yet the final clinical touch was missing, leaving the home crowd restless as the first half ended in a stalemate despite the overwhelming statistical advantage.

The Unexpected Pivot

The narrative shifted dramatically in the 63rd minute when M. Munetsi stunned the stadium, firing Paris FC into the lead against the run of play. It was a classic counter-attack that completely disrupted the Balance of the match. Suddenly, Lyon found themselves chasing a result they had dominated for over an hour. The pressure shifted from tactical patience to desperate urgency. Every failed cross and blocked shot increased the tension, with the visitors retreating into a deep, disciplined low block. Lyon continued to create, but the psychological weight of the trailing scoreline began to show in their decision-making, as shots were rushed and opportunities squandered.

Tolisso’s Ice-Cold Resolution

With the clock ticking towards a demoralizing home defeat, the Stakes for Lyon’s Champions League qualification hopes couldn't have been higher. Having come off the bench in the 58th minute, C. Tolisso stepped up when it mattered most. A 90th-minute penalty offered a lifeline, and the substitute made no mistake, buried the ball with clinical precision to level the scores. While a draw at home against a mid-table side feels like a missed opportunity in the title race, the point keeps Lyon firmly in the hunt for the top four. For Paris FC, it was a valiant effort that almost resulted in the ultimate Upset, but Lyon’s persistence eventually cracked the code.

Key Questions

Did Lyon deserve the late equalizer?

Statistically yes. With 27 shots and 1.70 xG, Lyon’s constant pressure eventually forced the error they needed to score.

What does this mean for Lyon's season?

The draw keeps Lyon in 4th place and the Champions League zone, but slows their pursuit of the league leaders.

How did Moussa Niakhaté change the game?

He provided an elite platform from defense, recording 3 key passes and maintaining a high 8.3 rating throughout.

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
62%
38%
Lyon 62%
Paris FC 38%
Shots
13
14
Lyon 13
Paris FC 14
Shots on Target
4
4
Lyon 4
Paris FC 4
Expected Goals (xG)
1.70
1.72
Lyon 1.70
Paris FC 1.72
Passes
544
353
Lyon 544
Paris FC 353
Pass Accuracy
89%
81%
Lyon 89%
Paris FC 81%
Corners
8
2
Lyon 8
Paris FC 2
Fouls
7
9
Lyon 7
Paris FC 9
Yellow Cards
2
0
Lyon 2
Paris FC 0
Red Cards
0
0
Lyon 0
Paris FC 0

Match Events

27' 🟨 T. Morton
HT
50' 🟨 N. Tagliafico
58' 🔄 N. Tagliafico R. Yaremchuk
58' 🔄 K. Merah C. Tolisso
M. Munetsi 63'
65' 🔄 A. Karabec Endrick
65' 🔄 T. Tessmann N. Nartey
J. Ikone C. Immobile 🔄 73'
J. Krasso L. Koleosho 🔄 73'
M. Simon A. Gory 🔄 73'
82' 🔄 R. Himbert A. Hamdani
R. Matondo V. Marchetti 🔄 87'
M. Munetsi T. Ollila 🔄 90'+1
90'+6 C. Tolisso
FT

Player Cards

Our take on every player in this match

Lyon

Goalkeepers
Dominik Greif
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Defenders
Hans Hateboer
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Clinton Mata
MAGNET
MAGNET
99
Activity
99
Activity
92
Passes
7
Duels
Moussa Niakhaté
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
76%
Pass Acc
Nicolás Tagliafico
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
58
Total Mins
58
Entry
Midfielders
Tyler Morton
MAGNET
MAGNET
89
Activity
89
Activity
81
Passes
8
Duels
Adam Karabec
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
20%
Pass Acc
Tanner Tessmann
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
65
Total Mins
65
Entry
Khalis Merah
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
58
Total Mins
58
Entry
Abner Vinícius
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Forwards
Rémi Himbert
STORMTROOPER
STORMTROOPER
4
Shots
4
Shots
0
Goals
0
On Target
BENCH
Rémy Descamps
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Steeve Kango
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Corentin Tolisso
CLUTCH HERO
CLUTCH HERO
90
Goal Time
90
Goal Time
Penalty
Impact
7
Rating
Noah Nartey
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
31
Total Mins
Started
Entry
Orel Mangala
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Roman Yaremchuk
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
38
Total Mins
Started
Entry
Endrick
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
31
Total Mins
Started
Entry
Adil Hamdani
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
14
Total Mins
Started
Entry
Rachid Ghezzal
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

Paris FC

Goalkeepers
Kevin Trapp
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Defenders
Adama Camara
WALL
WALL
0
Dribbled Past
0
Dribbled Past
4
Tackles
78%
Duel Win %
Diego Coppola
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Moustapha Mbow
WALL
WALL
0
Dribbled Past
0
Dribbled Past
4
Tackles
100%
Duel Win %
Nhoa Sangui
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Midfielders
Marshall Munetsi
FINISHER
FINISHER
1
Goals
1
Goals
4
Shots
6.6
Rating
Pierre Lees Melou
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
96
Total Mins
Started
Entry
Rudy Matondo
NPC
NPC
87
Minutes
87
Minutes
27%
Pass Acc
6.6
Rating
Forwards
Jonathan Ikoné
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
73
Total Mins
73
Entry
Jean-Philippe Krasso
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
14%
Pass Acc
Moses Simon
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
0
Assists
14%
Pass Acc
BENCH
Obed Nkambadio
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Timothée Kolodziejczak
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Tuomas Ollila
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
5
Total Mins
Started
Entry
Mathieu Cafaro
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Vincent Marchetti
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
9
Total Mins
Started
Entry
Ciro Immobile
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
23
Total Mins
Started
Entry
Alimami Gory
FRIENDLY FIRE
FRIENDLY FIRE
Pen Given
Mistake
Pen Given
Mistake
1
Fouls
6.3
Rating
Luca Koleosho
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
23
Total Mins
Started
Entry
Willem Geubbels
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
29/10/2025 Paris FC 3 - 3 Lyon Ligue 1 Stade Jean Bouin
29/10/2025
3 - 3
Ligue 1 Stade Jean Bouin
Lyon Win
Paris FC Win
Draw

League Standings

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