Montpellier have the biggest shortfall in the Ligue 1: 16 points from chances worth 29.5 xPts, a gap of 13.5. At the other end, Strasbourg have taken 57 points from an xPts figure of 38.5, 18.5 more than the underlying numbers justify.
Expected goals measure the quality of the chances a team creates and concedes, with every shot scored between 0 and 1 by how often shots like it are converted. Expected points come from running each finished match through a Poisson model using both sides' xG, giving a win, draw and loss probability, then awarding three points and one point against those probabilities. Underlying data is supplied by Sportmonks.
| # | Team | Played | Goals | xG | Goals minus xG | Goals against | xGA | Goals against minus xGA | Goal difference | xGD | Goal difference minus xGD | Points | xPts | Points minus xPts |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Paris Saint Germain | 17 | 45 | 46.1 | -1.1 | 16 | 15.6 | +0.4 | +29 | 30.4 | -1.4 | 44 | 39.6 | +4.4 |
| 2 | Monaco | 17 | 38 | 39.0 | -1.0 | 16 | 17.0 | -1.0 | +22 | 21.9 | +0.1 | 39 | 35.3 | +3.7 |
| 3 | Nice | 17 | 38 | 36.1 | +1.9 | 15 | 15.2 | -0.2 | +23 | 20.9 | +2.1 | 37 | 34.3 | +2.7 |
| 4 | Olympique Marseille | 17 | 41 | 36.7 | +4.3 | 23 | 18.6 | +4.4 | +18 | 18.2 | -0.2 | 34 | 31.5 | +2.5 |
| 5 | Olympique Lyonnais | 17 | 37 | 34.1 | +2.9 | 21 | 20.7 | +0.3 | +16 | 13.5 | +2.5 | 35 | 31.3 | +3.7 |
| 6 | Rennes | 17 | 25 | 28.0 | -3.0 | 17 | 17.8 | -0.8 | +8 | 10.2 | -2.2 | 28 | 29.8 | -1.8 |
| 7 | Lens | 17 | 19 | 29.7 | -10.7 | 22 | 22.0 | +0.0 | -3 | 7.7 | -10.7 | 23 | 28.0 | -5.0 |
| 8 | Toulouse | 17 | 20 | 22.2 | -2.2 | 22 | 19.1 | +2.9 | -2 | 3.1 | -5.1 | 20 | 25.8 | -5.8 |
| 9 | LOSC Lille | 17 | 31 | 24.6 | +6.4 | 18 | 22.2 | -4.2 | +13 | 2.4 | +10.6 | 37 | 25.4 | +11.6 |
| 10 | Nantes | 17 | 19 | 25.2 | -6.2 | 18 | 21.9 | -3.9 | +1 | 3.3 | -2.3 | 21 | 25.1 | -4.1 |
| 11 | Brest | 17 | 31 | 27.0 | +4.0 | 21 | 25.3 | -4.3 | +10 | 1.7 | +8.3 | 33 | 23.7 | +9.3 |
| 12 | Auxerre | 17 | 24 | 22.5 | +1.5 | 17 | 22.6 | -5.6 | +7 | 0.0 | +7.0 | 27 | 23.5 | +3.5 |
| 13 | Strasbourg | 17 | 33 | 22.0 | +11.0 | 20 | 27.6 | -7.6 | +13 | -5.7 | +18.7 | 35 | 20.2 | +14.8 |
| 14 | Reims | 17 | 17 | 21.2 | -4.2 | 25 | 26.4 | -1.4 | -8 | -5.2 | -2.8 | 16 | 20.1 | -4.1 |
| 15 | Saint-Étienne | 17 | 24 | 21.0 | +3.0 | 33 | 30.9 | +2.1 | -9 | -9.9 | +0.9 | 21 | 18.8 | +2.2 |
| 16 | Montpellier | 17 | 17 | 22.3 | -5.3 | 41 | 31.2 | +9.8 | -24 | -9.0 | -15.0 | 13 | 18.4 | -5.4 |
| 17 | Le Havre | 17 | 15 | 21.6 | -6.6 | 41 | 34.0 | +7.0 | -26 | -12.4 | -13.6 | 11 | 16.5 | -5.5 |
| 18 | Angers SCO | 17 | 18 | 17.4 | +0.6 | 33 | 30.9 | +2.1 | -15 | -13.5 | -1.5 | 17 | 16.3 | +0.7 |
| # | Team | Played | Goals | xG | Goals minus xG | Goals against | xGA | Goals against minus xGA | Goal difference | xGD | Goal difference minus xGD | Points | xPts | Points minus xPts |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Paris Saint Germain | 17 | 47 | 36.4 | +10.6 | 19 | 16.8 | +2.2 | +28 | 19.6 | +8.4 | 40 | 35.3 | +4.7 |
| 2 | Monaco | 17 | 25 | 33.5 | -8.5 | 25 | 18.7 | +6.3 | +0 | 14.8 | -14.8 | 22 | 31.0 | -9.0 |
| 3 | Toulouse | 17 | 24 | 27.7 | -3.7 | 21 | 18.0 | +3.0 | +3 | 9.7 | -6.7 | 22 | 28.8 | -6.8 |
| 4 | LOSC Lille | 17 | 21 | 27.7 | -6.7 | 18 | 20.4 | -2.4 | +3 | 7.4 | -4.4 | 23 | 27.8 | -4.8 |
| 5 | Olympique Marseille | 17 | 33 | 25.8 | +7.2 | 24 | 21.5 | +2.5 | +9 | 4.3 | +4.7 | 31 | 25.9 | +5.1 |
| 6 | Nice | 17 | 28 | 25.8 | +2.2 | 26 | 27.1 | -1.1 | +2 | -1.3 | +3.3 | 23 | 23.4 | -0.4 |
| 7 | Olympique Lyonnais | 17 | 28 | 23.9 | +4.1 | 25 | 24.4 | +0.6 | +3 | -0.5 | +3.5 | 22 | 23.0 | -1.0 |
| 8 | Lens | 17 | 23 | 24.9 | -1.9 | 17 | 26.1 | -9.1 | +6 | -1.2 | +7.2 | 29 | 22.7 | +6.3 |
| 9 | Rennes | 17 | 26 | 25.3 | +0.7 | 33 | 27.1 | +5.9 | -7 | -1.7 | -5.3 | 13 | 21.8 | -8.8 |
| 10 | Le Havre | 17 | 25 | 22.3 | +2.7 | 30 | 27.5 | +2.5 | -5 | -5.2 | +0.2 | 23 | 20.8 | +2.2 |
| 11 | Brest | 17 | 21 | 22.0 | -1.0 | 38 | 30.0 | +8.0 | -17 | -7.9 | -9.1 | 17 | 20.6 | -3.6 |
| 12 | Strasbourg | 17 | 23 | 20.6 | +2.4 | 24 | 30.3 | -6.3 | -1 | -9.6 | +8.6 | 22 | 18.3 | +3.7 |
| 13 | Angers SCO | 17 | 14 | 18.3 | -4.3 | 20 | 29.0 | -9.0 | -6 | -10.7 | +4.7 | 19 | 17.4 | +1.6 |
| 14 | Reims | 17 | 16 | 19.3 | -3.3 | 22 | 33.8 | -11.8 | -6 | -14.5 | +8.5 | 17 | 16.9 | +0.1 |
| 15 | Nantes | 17 | 20 | 17.3 | +2.7 | 34 | 33.4 | +0.6 | -14 | -16.0 | +2.0 | 15 | 16.0 | -1.0 |
| 16 | Auxerre | 17 | 24 | 18.5 | +5.5 | 34 | 32.5 | +1.5 | -10 | -13.9 | +3.9 | 15 | 15.2 | -0.2 |
| 17 | Montpellier | 17 | 6 | 13.0 | -7.0 | 38 | 34.9 | +3.1 | -32 | -21.8 | -10.2 | 3 | 11.1 | -8.1 |
| 18 | Saint-Étienne | 17 | 15 | 16.6 | -1.6 | 44 | 45.2 | -1.2 | -29 | -28.6 | -0.4 | 9 | 10.8 | -1.8 |
| # | Team | Played | Goals | xG | Goals minus xG | Goals against | xGA | Goals against minus xGA | Goal difference | xGD | Goal difference minus xGD | Points | xPts | Points minus xPts |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Paris Saint Germain | 5 | 10 | 11.1 | -1.1 | 8 | 3.4 | +4.6 | +2 | 7.7 | -5.7 | 7 | 11.6 | -4.6 |
| 2 | Olympique Marseille | 5 | 17 | 11.5 | +5.5 | 6 | 4.2 | +1.8 | +11 | 7.2 | +3.8 | 13 | 10.5 | +2.5 |
| 3 | LOSC Lille | 5 | 8 | 8.4 | -0.4 | 5 | 3.5 | +1.5 | +3 | 4.9 | -1.9 | 10 | 9.9 | +0.1 |
| 4 | Monaco | 5 | 6 | 8.1 | -2.1 | 6 | 4.3 | +1.7 | +0 | 3.8 | -3.8 | 8 | 8.8 | -0.8 |
| 5 | Olympique Lyonnais | 5 | 8 | 8.2 | -0.2 | 7 | 5.2 | +1.8 | +1 | 3.0 | -2.0 | 6 | 8.5 | -2.5 |
| 6 | Toulouse | 5 | 6 | 7.6 | -1.6 | 5 | 6.0 | -1.0 | +1 | 1.7 | -0.7 | 8 | 7.7 | +0.3 |
| 7 | Nice | 5 | 12 | 10.6 | +1.4 | 4 | 7.9 | -3.9 | +8 | 2.7 | +5.3 | 12 | 7.5 | +4.5 |
| 8 | Lens | 5 | 10 | 7.3 | +2.7 | 7 | 6.5 | +0.5 | +3 | 0.8 | +2.2 | 10 | 7.5 | +2.5 |
| 9 | Rennes | 5 | 8 | 8.3 | -0.3 | 11 | 7.9 | +3.1 | -3 | 0.4 | -3.4 | 6 | 7.5 | -1.5 |
| 10 | Nantes | 5 | 5 | 5.3 | -0.3 | 3 | 5.0 | -2.0 | +2 | 0.3 | +1.7 | 6 | 6.8 | -0.8 |
| 11 | Reims | 5 | 2 | 5.4 | -3.4 | 5 | 6.5 | -1.5 | -3 | -1.1 | -1.9 | 4 | 6.5 | -2.5 |
| 12 | Le Havre | 5 | 8 | 6.1 | +1.9 | 9 | 9.9 | -0.9 | -1 | -3.8 | +2.8 | 7 | 5.7 | +1.3 |
| 13 | Strasbourg | 5 | 8 | 6.0 | +2.0 | 7 | 8.0 | -1.0 | +1 | -2.0 | +3.0 | 7 | 5.5 | +1.5 |
| 14 | Brest | 5 | 5 | 5.5 | -0.5 | 13 | 10.7 | +2.3 | -8 | -5.2 | -2.8 | 6 | 5.1 | +0.9 |
| 15 | Saint-Étienne | 5 | 8 | 5.9 | +2.1 | 10 | 10.0 | +0.0 | -2 | -4.1 | +2.1 | 6 | 4.5 | +1.5 |
| 16 | Auxerre | 5 | 8 | 3.9 | +4.1 | 9 | 8.0 | +1.0 | -1 | -4.1 | +3.1 | 4 | 4.1 | -0.1 |
| 17 | Angers SCO | 5 | 4 | 3.7 | +0.3 | 7 | 9.4 | -2.4 | -3 | -5.7 | +2.7 | 6 | 3.9 | +2.1 |
| 18 | Montpellier | 5 | 2 | 3.4 | -1.4 | 13 | 10.0 | +3.0 | -11 | -6.5 | -4.5 | 1 | 3.4 | -2.4 |
Strasbourg overperformed their xG by more than any other side in Ligue 1 in 2024/2025, with 56 goals from chances worth 42.6 xG, a gap of 13.4. Olympique Marseille were next on 11.4.
Lens underperformed their xG by more than any other side in Ligue 1 in 2024/2025, with 42 goals from chances worth 54.6 xG, a shortfall of 12.6. Montpellier were next on 12.3.
Strasbourg were the luckiest side in Ligue 1 in 2024/2025, with 57 points from performances worth 38.5 xPts, 18.5 more than their chances deserved. Paris Saint Germain were next on 9.2.
Montpellier were the unluckiest side in Ligue 1 in 2024/2025, with 16 points from performances worth 29.5 xPts, 13.5 short of what they deserved. Toulouse were next on 12.6.
Paris Saint Germain were also top of Ligue 1 in 2024/2025 on expected points, with 74.8 xPts from 82.4 xG created and 32.5 conceded across 34 matches. Monaco were next on 66.3.
Paris Saint Germain created the most xG in Ligue 1 in 2024/2025, 82.4 from 34 matches, 2.4 a game against a competition average of 1.5. Monaco were next on 72.4.
Montpellier created the least xG in Ligue 1 in 2024/2025, 35.3 from 34 matches, 1.0 a game against a competition average of 1.5. Angers SCO were next on 35.8.
Saint-Étienne conceded the most xG in Ligue 1 in 2024/2025, 76.1 from 34 matches, 2.2 a game against a competition average of 1.5. Montpellier were next on 66.1.
Paris Saint Germain conceded the least xG in Ligue 1 in 2024/2025, 32.5 from 34 matches, 1.0 a game against a competition average of 1.5. Monaco were next on 35.8.
Ligue 1 teams averaged 1.50 xG a game in 2024/2025, from the 306 matches played, and scored 1.49 goals a game from it.
Ligue 1 teams created more xG at home in 2024/2025, 1.62 a game against 1.37 away, a home advantage of +0.25.
The same season by player, with the goals each one scored against the chances they had.
| # | Team | Played | Goals | xG | Goals minus xG | Goals against | xGA | Goals against minus xGA | Goal difference | xGD | Goal difference minus xGD | Points | xPts | Points minus xPts |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Paris Saint Germain | 34 | 92 | 82.4 | +9.6 | 35 | 32.5 | +2.5 | +57 | 50.0 | +7.0 | 84 | 74.8 | +9.2 |
| 2 | Monaco | 34 | 63 | 72.4 | -9.4 | 41 | 35.8 | +5.2 | +22 | 36.7 | -14.7 | 61 | 66.3 | -5.3 |
| 3 | Nice | 34 | 66 | 61.9 | +4.1 | 41 | 42.3 | -1.3 | +25 | 19.6 | +5.4 | 60 | 57.7 | +2.3 |
| 4 | Olympique Marseille | 34 | 74 | 62.6 | +11.4 | 47 | 40.1 | +6.9 | +27 | 22.4 | +4.6 | 65 | 57.4 | +7.6 |
| 5 | Toulouse | 34 | 44 | 49.9 | -5.9 | 43 | 37.0 | +6.0 | +1 | 12.9 | -11.9 | 42 | 54.6 | -12.6 |
| 6 | Olympique Lyonnais | 34 | 65 | 58.0 | +7.0 | 46 | 45.0 | +1.0 | +19 | 13.0 | +6.0 | 57 | 54.4 | +2.6 |
| 7 | LOSC Lille | 34 | 52 | 52.4 | -0.4 | 36 | 42.6 | -6.6 | +16 | 9.8 | +6.2 | 60 | 53.2 | +6.8 |
| 8 | Rennes | 34 | 51 | 53.3 | -2.3 | 50 | 44.9 | +5.1 | +1 | 8.5 | -7.5 | 41 | 51.6 | -10.6 |
| 9 | Lens | 34 | 42 | 54.6 | -12.6 | 39 | 48.1 | -9.1 | +3 | 6.5 | -3.5 | 52 | 50.7 | +1.3 |
| 10 | Brest | 34 | 52 | 49.0 | +3.0 | 59 | 55.2 | +3.8 | -7 | -6.2 | -0.8 | 50 | 44.3 | +5.7 |
| 11 | Nantes | 34 | 39 | 42.5 | -3.5 | 52 | 55.3 | -3.3 | -13 | -12.8 | -0.2 | 36 | 41.2 | -5.2 |
| 12 | Auxerre | 34 | 48 | 41.0 | +7.0 | 51 | 55.0 | -4.0 | -3 | -14.0 | +11.0 | 42 | 38.6 | +3.4 |
| 13 | Strasbourg | 34 | 56 | 42.6 | +13.4 | 44 | 57.9 | -13.9 | +12 | -15.3 | +27.3 | 57 | 38.5 | +18.5 |
| 14 | Le Havre | 34 | 40 | 43.9 | -3.9 | 71 | 61.5 | +9.5 | -31 | -17.6 | -13.4 | 34 | 37.2 | -3.2 |
| 15 | Reims | 34 | 33 | 40.5 | -7.5 | 47 | 60.2 | -13.2 | -14 | -19.8 | +5.8 | 33 | 37.0 | -4.0 |
| 16 | Angers SCO | 34 | 32 | 35.8 | -3.8 | 53 | 60.0 | -7.0 | -21 | -24.2 | +3.2 | 36 | 33.7 | +2.3 |
| 17 | Saint-Étienne | 34 | 39 | 37.6 | +1.4 | 77 | 76.1 | +0.9 | -38 | -38.5 | +0.5 | 30 | 29.6 | +0.4 |
| 18 | Montpellier | 34 | 23 | 35.3 | -12.3 | 79 | 66.1 | +12.9 | -56 | -30.8 | -25.2 | 16 | 29.5 | -13.5 |