Eredivisie table 2025/2026
- Leader PSV Eindhoven 84 pts
- Most above xPts PSV Eindhoven +15.95 against expected points
- Most below xPts NAC Breda −11.10 against expected points
The standings, with the expected figures beside them: what each club's chances were worth, match by match, next to what it actually took.
| # restore the table order | Team | P sort descending | W sort descending | D sort descending | L sort descending | GF sort descending | GA sort descending | GD sort descending | Pts sort descending | xG sort descending | xGA sort descending | xGD sort descending | xPts sort descending | Pts vs xPts sort descending |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | PSV Eindhoven PSV | 34 | 27 | 3 | 4 | 101 | 45 | +56 | 84 | 69.01* | 38.63 | +30.38 | 65.05 | +15.95 |
| 2 | Feyenoord FEY | 34 | 19 | 8 | 7 | 70 | 44 | +26 | 65 | 64.49* | 37.44 | +27.05 | 61.47 | +2.53 |
| 3 | AFC Ajax AFC | 36 | 15 | 15 | 6 | 64 | 41 | +23 | 60 | 55.33* | 45.23 | +10.10 | 53.25 | +6.75 |
| 4 | NEC Nijmegen NEC | 34 | 16 | 11 | 7 | 77 | 53 | +24 | 59 | 62.26 | 48.41 | +13.85 | 54.90 | +4.10 |
| 5 | FC Twente FCT | 34 | 15 | 13 | 6 | 59 | 40 | +19 | 58 | 64.45 | 37.96 | +26.49 | 63.60 | −5.60 |
| 6 | FC Utrecht FCU | 36 | 16 | 9 | 11 | 58 | 44 | +14 | 57 | 51.62* | 46.17 | +5.45 | 53.69 | +0.31 |
| 7 | AZ Alkmaar AZA | 34 | 14 | 10 | 10 | 58 | 51 | +7 | 52 | 60.65* | 42.14 | +18.51 | 57.36 | −6.36 |
| 8 | SC Heerenveen SCH | 35 | 14 | 9 | 12 | 59 | 56 | +3 | 51 | 58.04 | 51.62 | +6.42 | 53.50 | −2.50 |
| 9 | FC Groningen FCG | 35 | 14 | 6 | 15 | 49 | 47 | +2 | 48 | 58.49 | 48.02 | +10.47 | 54.97 | −6.97 |
| 10 | Sparta Rotterdam SPA | 34 | 12 | 7 | 15 | 40 | 62 | −22 | 43 | 45.23 | 51.06 | −5.83 | 44.32 | −1.32 |
| 11 | Fortuna Sittard FOR | 34 | 11 | 6 | 17 | 49 | 63 | −14 | 39 | 39.84* | 58.36 | −18.52 | 34.03 | +1.97 |
| 12 | Go Ahead Eagles GOA | 34 | 8 | 14 | 12 | 54 | 53 | +1 | 38 | 41.63* | 62.42 | −20.79 | 35.56 | +2.44 |
| 13 | Excelsior EXC | 34 | 10 | 8 | 16 | 43 | 56 | −13 | 38 | 44.99 | 59.44 | −14.45 | 36.86 | +1.14 |
| 14 | SC Telstar SCT | 34 | 9 | 10 | 15 | 49 | 55 | −6 | 37 | 51.06 | 60.34 | −9.28 | 41.39 | −4.39 |
| 15 | PEC Zwolle PEC | 34 | 9 | 10 | 15 | 44 | 71 | −27 | 37 | 38.81* | 57.60 | −18.79 | 33.57 | +3.43 |
| 16 | FC Volendam FCV | 36 | 9 | 8 | 19 | 38 | 58 | −20 | 35 | 35.91* | 57.83 | −21.92 | 33.09 | −1.09 |
| 17 | NAC Breda NAC | 34 | 6 | 11 | 17 | 35 | 58 | −23 | 29 | 40.49 | 51.64 | −11.15 | 40.10 | −11.10 |
| 18 | Heracles Almelo HER | 34 | 5 | 4 | 25 | 35 | 85 | −50 | 19 | 38.92 | 66.91 | −27.99 | 29.77 | −10.77 |
| 19 | Willem II Tilburg WIL | 6 | 4 | 1 | 1 | 8 | 4 | +4 | 13 | — | — | — | — | — |
| 20 | Almere City FC ALM | 6 | 3 | 1 | 2 | 11 | 8 | +3 | 10 | — | — | — | — | — |
| 21 | RKC Waalwijk RKC | 4 | 0 | 3 | 1 | 3 | 4 | −1 | 3 | — | — | — | — | — |
| 22 | Roda JC Kerkrade ROD | 2 | 0 | 2 | 0 | 2 | 2 | 0 | 2 | — | — | — | — | — |
| 23 | De Graafschap DEG | 2 | 0 | 1 | 1 | 3 | 5 | −2 | 1 | — | — | — | — | — |
| 24 | FC Den Bosch FCD | 2 | 0 | 0 | 2 | 2 | 6 | −4 | 0 | — | — | — | — | — |
- More points than xPts
- Fewer points than xPts
- xG is available for 33 of 34 matches for PSV Eindhoven.
- xG is available for 33 of 34 matches for Feyenoord.
- xG is available for 35 of 36 matches for AFC Ajax.
- xG is available for 35 of 36 matches for FC Utrecht.
- xG is available for 33 of 34 matches for AZ Alkmaar.
- xG is available for 33 of 34 matches for Fortuna Sittard.
- xG is available for 33 of 34 matches for Go Ahead Eagles.
- xG is available for 33 of 34 matches for PEC Zwolle.
- xG is available for 34 of 36 matches for FC Volendam.
- xG is available for 0 of 6 matches for Willem II Tilburg.
- xG is available for 0 of 6 matches for Almere City FC.
- xG is available for 0 of 4 matches for RKC Waalwijk.
- xG is available for 0 of 2 matches for Roda JC Kerkrade.
- xG is available for 0 of 2 matches for De Graafschap.
- xG is available for 0 of 2 matches for FC Den Bosch.
- For those clubs the expected columns count only the matches with xG, and Pts vs xPts sets their expected points against the points from those same matches.
How to read this table
- xG
- Expected goals: the summed chance quality of the shots a club took. A chance scored nine times in ten is worth 0.9.
- xGA
- Expected goals against: the same measure for the shots a club allowed.
- xGD
- xG minus xGA: how far a club's chances outweighed its opponents', or the other way round.
- xPts
- Expected points: the points a club's match-by-match xG would be worth on average. Each match's two xG figures become chances of a win, a draw and a loss, and a win is worth 3 and a draw 1.
- Pts vs xPts
- Actual points minus expected points based on match xG. Positive, drawn in green, is more points than the chances were worth on average; negative, in red, is fewer. It measures the gap and says nothing about its cause.
- npxG
- Non-penalty xG: xG with penalties removed, offered where the competition's figures support it. It changes xG, xGA and xGD; xPts is always worked out from all xG.
Expected points are read off the same score matrix that prices the board: each played match's two xG totals are taken as scoring rates, and the team's share is 3 × P(win) + 1 × P(draw), summed over the season. Understat arrives at the same figure by simulating each shot, which needs per-shot data, held here for %{competitions}. Passes per defensive action and deep completions are not shown because no source here ingests the event data behind them.