Ligue 1 top scorers 2025/2026
Every Ligue 1 player ranked on the goals he has scored this season, with the minutes he took to score them — and, where the competition carries per-match figures, the chances those goals came from.
Esteban Lepaul leads the scoring on 21 goals, from 2702 minutes. That is 5 clear of Joaquin Panichelli. Esteban Lepaul has scored 4.99 more than his chances were worth: 21 goals from 16.01 xG. Issa Soumaré has scored 7.82 fewer than his chances were worth: 8 goals from 15.82 xG.
Showing 201–250 of 600 players
| # | Player | Club | Apps | Min | G | npG | xG | G − xG | Min/G |
|---|---|---|---|---|---|---|---|---|---|
| 169 | Lanroy Machine | Angers | 22 | 516 | 1 | 1 | 1.98 | −0.98 | 516 |
| 169 | Julien Le Cardinal | Saint-Étienne | 8 | 533 | 1 | 1 | 0.80 | +0.20 | 533 |
| 169 | Florian Sotoca | RC Lens | 26 | 554 | 1 | 1 | 0.83 | +0.17 | 554 |
| 169 | Ibou Sane | Metz | 16 | 557 | 1 | 1 | 0.36 | +0.64 | 557 |
| 169 | Felix Mambimbi | Le Havre | 17 | 559 | 1 | 1 | 0.66 | +0.34 | 559 |
| 169 | Arnaud Nordin | Stade Rennais | 10 | 573 | 1 | 1 | 1.03 | −0.03 | 573 |
| 169 | Seko Fofana | Stade Rennais | 12 | 668 | 1 | 1 | 1.01 | −0.01 | 668 |
| 169 | Dro Fernández | Paris Saint-Germain | 12 | 682 | 1 | 1 | 0.91 | +0.09 | 682 |
| 169 | Isak Jansson | Nice | 24 | 683 | 1 | 1 | 1.89 | −0.89 | 683 |
| 169 | Mario Sauer | Toulouse | 25 | 683 | 1 | 1 | 1.31 | −0.31 | 683 |
| 169 | Mohamed Bamba | Lorient | 18 | 686 | 1 | 1 | 2.49 | −1.49 | 686 |
| 169 | Eric Dier | AS Monaco | 9 | 687 | 1 | 1 | 0.49 | +0.51 | 687 |
| 169 | Matt O'Riley | Olympique de Marseille | 15 | 739 | 1 | 1 | 0.85 | +0.15 | 739 |
| 169 | Panos Katseris | Lorient | 16 | 749 | 1 | 1 | 0.83 | +0.17 | 749 |
| 169 | Sebastian Szymański | Stade Rennais | 16 | 786 | 1 | 1 | 0.66 | +0.34 | 786 |
| 169 | Ruben Kluivert | Olympique Lyonnais | 16 | 805 | 1 | 1 | 0.43 | +0.57 | 805 |
| 169 | Oussama El Azzouzi | Auxerre | 11 | 813 | 1 | 1 | 0.52 | +0.48 | 813 |
| 169 | Lucas Tousart | Stade Brestois | 24 | 857 | 1 | 1 | 0.63 | +0.37 | 857 |
| 169 | Francisco Sierralta | Auxerre | 10 | 862 | 1 | 1 | 1.07 | −0.07 | 862 |
| 169 | Waren Kamanzi | Toulouse | 24 | 867 | 1 | 1 | 0.91 | +0.09 | 867 |
| 169 | Adam Karabec | Olympique Lyonnais | 21 | 941 | 1 | 1 | 1.64 | −0.64 | 941 |
| 169 | Sofiane Boufal | Le Havre | 17 | 1,028 | 1 | 1 | 1.66 | −0.66 | 1028 |
| 169 | Pathé Mboup | Stade Brestois | 28 | 1,069 | 1 | 1 | 2.89 | −1.89 | 1069 |
| 169 | Mohammed Salisu | AS Monaco | 12 | 1,080 | 1 | 1 | 0.79 | +0.21 | 1080 |
| 169 | Alexis Vossah | Toulouse | 23 | 1,094 | 1 | 1 | 0.57 | +0.43 | 1094 |
| 169 | Fabián Ruiz | Paris Saint-Germain | 20 | 1,129 | 1 | 1 | 1.34 | −0.34 | 1129 |
| 169 | Samir Chergui | Paris FC | 15 | 1,155 | 1 | 1 | 1.76 | −0.76 | 1155 |
| 169 | Pape Diop | Toulouse | 15 | 1,185 | 1 | 1 | 1.32 | −0.32 | 1185 |
| 169 | Przemysław Frankowski | Stade Rennais | 19 | 1,215 | 1 | 1 | 0.50 | +0.50 | 1215 |
| 169 | Igor Silva | Lorient | 17 | 1,223 | 1 | 1 | 0.52 | +0.48 | 1223 |
| 169 | Dehmaine Tabibou | Nantes | 27 | 1,282 | 1 | 1 | 1.72 | −0.72 | 1282 |
| 169 | Karim Dermane | Lorient | 30 | 1,364 | 1 | 1 | 1.22 | −0.22 | 1364 |
| 169 | Andrew Omobamidele | RC Strasbourg | 25 | 1,375 | 1 | 1 | 0.61 | +0.39 | 1375 |
| 169 | Boubacar Traoré | Metz | 20 | 1,391 | 1 | 1 | 0.96 | +0.04 | 1391 |
| 169 | Nayef Aguerd | Olympique de Marseille | 16 | 1,399 | 1 | 1 | 0.75 | +0.25 | 1399 |
| 169 | Louis Leroux | Nantes | 23 | 1,443 | 1 | 1 | 1.61 | −0.61 | 1443 |
| 169 | Josué Casimir | Auxerre | 31 | 1,532 | 1 | 1 | 2.87 | −1.87 | 1532 |
| 169 | Ngal'ayel Mukau | Lille | 30 | 1,566 | 1 | 1 | 2.00 | −1.00 | 1566 |
| 169 | Junior Mwanga | RC Strasbourg | 20 | 1,642 | 1 | 1 | 1.19 | −0.19 | 1642 |
| 169 | Daouda Guindo | Stade Brestois | 25 | 1,700 | 1 | 1 | 1.23 | −0.23 | 1700 |
| 169 | Hicham Boudaoui | Nice | 26 | 1,704 | 1 | 1 | 1.60 | −0.60 | 1704 |
| 169 | Anthony Rouault | Stade Rennais | 21 | 1,724 | 1 | 1 | 1.65 | −0.65 | 1724 |
| 169 | Simon Ebonog | Le Havre | 30 | 1,778 | 1 | 1 | 1.69 | −0.69 | 1778 |
| 169 | Marvin Senaya | Auxerre | 25 | 1,784 | 1 | 1 | 1.40 | −0.40 | 1784 |
| 169 | Otávio | Paris FC | 23 | 1,908 | 1 | 1 | 0.42 | +0.58 | 1908 |
| 169 | Thomas Meunier | Lille | 25 | 1,915 | 1 | 1 | 1.18 | −0.18 | 1915 |
| 169 | Benjamin Pavard | Olympique de Marseille | 27 | 1,952 | 1 | 1 | 0.76 | +0.24 | 1952 |
| 169 | Tanner Tessmann | Olympique Lyonnais | 29 | 1,960 | 1 | 1 | 2.32 | −1.32 | 1960 |
| 169 | Pierre Lees Melou | Paris FC | 24 | 1,966 | 1 | 1 | 1.30 | −0.30 | 1966 |
| 169 | Vitinha | Paris Saint-Germain | 29 | 2,121 | 1 | 1 | 1.06 | −0.06 | 2121 |
- goals 2+ above xG
- under 90 minutes
About these figures What each column counts, and which feed it was counted from. Show Hide
- Apps
- Matches he played in this competition this season. A match he was named in and did not play does not count.
- Min
- Minutes played.
- G
- Goals scored, penalties included.
- npG
- Goals with penalties taken out.
- xG
- Expected goals: the quality of the chances he took, summed.
- G − xG
- Goals less expected goals, over the matches with both.
- Min/G
- Minutes played for each goal scored.
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 →