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 251–300 of 600 players
| # | Player | Club | Apps | Min | G | npG | xG | G − xG | Min/G |
|---|---|---|---|---|---|---|---|---|---|
| 169 | Samir El Mourabet | RC Strasbourg | 33 | 2,141 | 1 | 1 | 0.33 | +0.67 | 2141 |
| 169 | Adama Camara | Paris FC | 29 | 2,171 | 1 | 1 | 2.03 | −1.03 | 2171 |
| 169 | Chidozie Awaziem | Nantes | 26 | 2,232 | 1 | 1 | 0.77 | +0.23 | 2232 |
| 169 | Antoine Mendy | Nice | 27 | 2,278 | 1 | 1 | 2.01 | −1.01 | 2278 |
| 169 | Laurent Abergel | Lorient | 28 | 2,324 | 1 | 1 | 0.80 | +0.20 | 2324 |
| 169 | Arouna Sangante | Le Havre | 28 | 2,333 | 1 | 1 | 0.40 | +0.60 | 2333 |
| 169 | Yanis Zouaoui | Le Havre | 30 | 2,348 | 1 | 0 | 1.42 | −0.42 | 2348 |
| 169 | Ilya Zabarnyi | Paris Saint-Germain | 28 | 2,387 | 1 | 1 | 0.48 | +0.52 | 2387 |
| 169 | Gautier Lloris | Le Havre | 29 | 2,400 | 1 | 1 | 0.97 | +0.03 | 2400 |
| 169 | Nathan Ngoy | Lille | 29 | 2,412 | 1 | 1 | 1.30 | −0.30 | 2412 |
| 169 | Aïssa Mandi | Lille | 29 | 2,435 | 1 | 1 | 1.24 | −0.24 | 2435 |
| 169 | Ainsley Maitland-Niles | Olympique Lyonnais | 30 | 2,485 | 1 | 1 | 2.39 | −1.39 | 2485 |
| 169 | Jean-Philippe Gbamin | Metz | 31 | 2,488 | 1 | 1 | 1.90 | −0.90 | 2488 |
| 169 | Jordan Teze | AS Monaco | 33 | 2,494 | 1 | 1 | 0.80 | +0.20 | 2494 |
| 169 | Quentin Merlin | Stade Rennais | 33 | 2,532 | 1 | 1 | 1.49 | −0.49 | 2532 |
| 169 | Brendan Chardonnet | Stade Brestois | 29 | 2,547 | 1 | 1 | 0.74 | +0.26 | 2547 |
| 169 | Rasmus Nicolaisen | Toulouse | 32 | 2,570 | 1 | 1 | 0.81 | +0.19 | 2570 |
| 169 | Kojo Peprah Oppong | Nice | 31 | 2,607 | 1 | 1 | 1.32 | −0.32 | 2607 |
| 169 | Hugo Magnetti | Stade Brestois | 33 | 2,697 | 1 | 1 | 0.70 | +0.30 | 2697 |
| 169 | Ousmane Camara | Angers | 32 | 2,719 | 1 | 1 | 0.54 | +0.46 | 2719 |
| 169 | Matthieu Udol | RC Lens | 34 | 3,003 | 1 | 1 | 4.64 | −3.64 | 3003 |
| 272 | Brice Maubleu | Saint-Étienne | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Georges Gomis | Le Havre | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Hamza Koutoune | Nice | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Martin Bley | Lorient | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Neal Maupay | Olympique de Marseille | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Samuel Nibombe | AS Monaco | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Yvan Zaddy | Auxerre | 1 | 1 | 0 | 0 | — | — | — |
| 272 | Bertuğ Yıldırım | Stade Rennais | 1 | 2 | 0 | 0 | — | — | — |
| 272 | Henrick Do Marcolino | Stade Rennais | 1 | 2 | 0 | 0 | — | — | — |
| 272 | Lucas Rosier | Stade Rennais | 2 | 2 | 0 | 0 | — | — | — |
| 272 | Mamoudou Cissokho | Auxerre | 2 | 2 | 0 | 0 | — | — | — |
| 272 | Billal Brahimi | Nice | 1 | 8 | 0 | 0 | — | — | — |
| 272 | Ibrahim Yayiya Kante | Stade Brestois | 1 | 8 | 0 | 0 | — | — | — |
| 272 | Bané Diatta | Angers | 1 | 9 | 0 | 0 | — | — | — |
| 272 | Enzo Molebe | Olympique Lyonnais | 1 | 9 | 0 | 0 | — | — | — |
| 272 | Hilan Hamzaoui Slimani | Olympique de Marseille | 1 | 9 | 0 | 0 | — | — | — |
| 272 | Mohamed Benoit-Dao | — | 1 | 9 | 0 | 0 | — | — | — |
| 272 | Zoumana Diallo | Nice | 1 | 9 | 0 | 0 | — | — | — |
| 272 | Daniel Semedo | Lorient | 1 | 10 | 0 | 0 | — | — | — |
| 272 | Mathis Jangeal | Paris Saint-Germain | 1 | 10 | 0 | 0 | — | — | — |
| 272 | Ugo Raghouber | Lille | 1 | 10 | 0 | 0 | — | — | — |
| 272 | Jean-Baptiste Bosey | RC Strasbourg | 1 | 11 | 0 | 0 | — | — | — |
| 272 | Noham Kamara | Olympique Lyonnais | 2 | 11 | 0 | 0 | — | — | — |
| 272 | Axel Camblan | Stade Brestois | 1 | 12 | 0 | 0 | — | — | — |
| 272 | Mikayil Faye | Stade Rennais | 1 | 12 | 0 | 0 | — | — | — |
| 272 | Samy Benchama | Rodez AF | 2 | 12 | 0 | 0 | — | — | — |
| 272 | André Gomes | Lille | 2 | 14 | 0 | 0 | — | — | — |
| 272 | Erawan Garnier | RC Lens | 1 | 14 | 0 | 0 | — | — | — |
| 272 | Joseph N'Duquidi | Metz | 1 | 14 | 0 | 0 | — | — | — |
- 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 →