Ligue 1 per 90 stats 2026/2027
Every Ligue 1 player's season divided by the minutes he played, which is the only basis a regular and a substitute can be compared on.
Ranked from 270 minutes played.
Florian Thauvin leads on expected goal involvement per 90 minutes with 1.04, over 450 minutes played. That is 0.14 clear of Kamory Doumbia.
Showing 1–50 of 163 players
| # | Player | Club | Min | G/90 | A/90 | xG/90 | xA/90 | xGI/90 |
|---|---|---|---|---|---|---|---|---|
| 1 | Florian Thauvin | RC Lens | 450 | 0.60 | 0.40 | 0.68 | 0.37 | 1.04 |
| 2 | Kamory Doumbia | Stade Brestois | 407 | 0.88 | 0.22 | 0.79 | 0.11 | 0.90 |
| 2 | Louis Mafouta | Le Mans | 423 | 0.64 | 0.21 | 0.81 | 0.09 | 0.90 |
| 4 | Lassine Sinayoko | Paris FC | 435 | 0.83 | 0.21 | 0.74 | 0.08 | 0.82 |
| 5 | Loïs Openda | Olympique Lyonnais | 334 | 0.27 | 0.27 | 0.65 | 0.13 | 0.78 |
| 6 | Ernest Nuamah | Olympique Lyonnais | 307 | 0.88 | 0.29 | 0.57 | 0.20 | 0.77 |
| 7 | Désiré Doué | Paris Saint-Germain | 301 | 0.00 | 0.30 | 0.25 | 0.49 | 0.74 |
| 7 | Paris Brunner | AS Monaco | 390 | 0.92 | 0.00 | 0.68 | 0.06 | 0.74 |
| 9 | Esteban Lepaul | Stade Rennais | 376 | 0.72 | 0.00 | 0.67 | 0.03 | 0.70 |
| 10 | Amine Gouiri | Olympique de Marseille | 448 | 0.80 | 0.20 | 0.52 | 0.16 | 0.68 |
| 11 | Amine Sbai | Angers | 427 | 0.21 | 0.21 | 0.24 | 0.38 | 0.62 |
| 12 | Khvicha Kvaratskhelia | Paris Saint-Germain | 283 | 0.00 | 0.32 | 0.26 | 0.32 | 0.59 |
| 13 | Dame Gueye | Le Mans | 297 | 0.30 | 0.00 | 0.57 | 0.01 | 0.58 |
| 13 | Jonathan Clauss | Nice | 428 | 0.00 | 0.00 | 0.20 | 0.37 | 0.58 |
| 15 | Jacen Russell Rowe | Toulouse | 342 | 0.26 | 0.00 | 0.46 | 0.10 | 0.56 |
| 16 | Thomas Jørgensen | Toulouse | 438 | 0.41 | 0.21 | 0.34 | 0.18 | 0.52 |
| 17 | Gessime Yassine | RC Strasbourg | 434 | 0.41 | 0.21 | 0.20 | 0.31 | 0.51 |
| 17 | Ally Samatta | Le Havre | 428 | 0.42 | 0.00 | 0.39 | 0.12 | 0.51 |
| 19 | Cristian Cásseres Jr. | Toulouse | 450 | 0.00 | 0.80 | 0.18 | 0.32 | 0.50 |
| 20 | João Neves | Paris Saint-Germain | 330 | 0.00 | 0.00 | 0.43 | 0.06 | 0.49 |
| 20 | Jacobo Ortega | RC Strasbourg | 302 | 0.30 | 0.30 | 0.32 | 0.16 | 0.49 |
| 22 | Renaud Ripart | Troyes | 275 | 0.33 | 0.00 | 0.43 | 0.04 | 0.47 |
| 23 | Corentin Tolisso | Olympique Lyonnais | 381 | 0.24 | 0.47 | 0.21 | 0.25 | 0.46 |
| 23 | Ilan Kebbal | Paris FC | 405 | 0.22 | 0.22 | 0.24 | 0.22 | 0.46 |
| 25 | Adrien Thomasson | Stade Rennais | 373 | 0.24 | 0.48 | 0.28 | 0.17 | 0.45 |
| 25 | Lucas Calodat | Le Mans | 277 | 0.32 | 0.32 | 0.14 | 0.30 | 0.45 |
| 27 | Angel Gomes | Olympique de Marseille | 372 | 0.24 | 0.24 | 0.29 | 0.15 | 0.44 |
| 28 | Vitinha | Paris Saint-Germain | 429 | 0.21 | 0.21 | 0.10 | 0.33 | 0.43 |
| 28 | Marquinhos | Paris Saint-Germain | 450 | 0.60 | 0.00 | 0.40 | 0.03 | 0.43 |
| 30 | Sebastian Nanasi | RC Strasbourg | 380 | 0.00 | 0.47 | 0.13 | 0.28 | 0.41 |
| 30 | Jim Allevinah | Angers | 364 | 0.00 | 0.00 | 0.20 | 0.22 | 0.41 |
| 30 | Pablo Pagis | Paris FC | 364 | 0.25 | 0.25 | 0.13 | 0.28 | 0.41 |
| 30 | Luca Koleosho | Paris FC | 291 | 0.00 | 0.31 | 0.25 | 0.16 | 0.41 |
| 34 | Diogo Sousa | RC Strasbourg | 384 | 0.23 | 0.23 | 0.25 | 0.15 | 0.40 |
| 35 | Matthieu Udol | RC Lens | 384 | 0.23 | 0.00 | 0.30 | 0.09 | 0.39 |
| 35 | Christ Tapé | Toulouse | 444 | 0.20 | 0.00 | 0.32 | 0.07 | 0.39 |
| 35 | Hakon Arnar Haraldsson | Lille | 371 | 0.24 | 0.00 | 0.16 | 0.23 | 0.39 |
| 35 | Michal Skoras | RC Lens | 273 | 0.00 | 0.33 | 0.00 | 0.39 | 0.39 |
| 35 | Mousa Tamari | Stade Rennais | 284 | 0.00 | 0.00 | 0.14 | 0.25 | 0.39 |
| 40 | Danny Namaso | Auxerre | 406 | 0.22 | 0.22 | 0.30 | 0.09 | 0.38 |
| 40 | Ludovic Ajorque | Stade Brestois | 446 | 0.20 | 0.00 | 0.23 | 0.14 | 0.38 |
| 42 | Elye Wahi | Nice | 277 | 0.32 | 0.00 | 0.31 | 0.06 | 0.37 |
| 42 | Antoine Mille | Troyes | 353 | 0.25 | 0.25 | 0.13 | 0.24 | 0.37 |
| 44 | Zachary Athekame | Olympique Lyonnais | 450 | 0.40 | 0.40 | 0.21 | 0.15 | 0.36 |
| 44 | Joris Chotard | Stade Brestois | 434 | 0.00 | 0.21 | 0.05 | 0.30 | 0.36 |
| 44 | Jean Victor Makengo | Lorient | 418 | 0.22 | 0.00 | 0.25 | 0.10 | 0.36 |
| 47 | Michaël Cuisance | RC Lens | 307 | 0.00 | 0.00 | 0.31 | 0.02 | 0.33 |
| 47 | Adil Bourabaa | Le Mans | 398 | 0.68 | 0.45 | 0.28 | 0.05 | 0.33 |
| 47 | Pathé Mboup | Stade Brestois | 397 | 0.23 | 0.00 | 0.26 | 0.07 | 0.33 |
| 50 | Abdallah Sima | RC Lens | 384 | 0.23 | 0.23 | 0.19 | 0.10 | 0.30 |
- under 90 minutes
About these figures What each column counts, and which feed it was counted from. Show Hide
- Min
- Minutes played.
- G/90
- Goals per 90 minutes played.
- A/90
- Assists per 90 minutes played.
- xG/90
- Expected goals per 90 minutes played.
- xA/90
- Expected assists per 90 minutes played.
- xGI/90
- Expected goal involvement per 90 minutes played.
Appearances, minutes, goals, assists and shots on this page are summed over the Ligue 1 matches we hold per-player figures for — the same matches the expected figures are summed over, so the two can be read against each other.
Learn how xgEdge calculates these figures →