The Justice Table

Each of Europe's top five league tables rebuilt on expected points over the last 12 months. A club's expected points are what its chances, and its opponents' chances, were worth match by match; the table sorts on them, with the rank on real points alongside. Gap is points minus expected points: positive means results have been kinder than the play. Biggest gaps: Rennes (+14.7, Ligue 1), Barcelona (+14.4, La Liga), Lazio (+13.3, Serie A). Furthest behind: Tottenham (-18.4, Premier League), Athletic Club (-13.9, La Liga), Osasuna (-13.6, La Liga).

Matches from 19 Oct 2025 to 11 Oct 2026 · clubs with 8+ matches · Understat data · updated 12 Oct 2026

Premier League justice table, last 12 months

17 clubs, 35 to 37 matches played. Above their expected points: Aston Villa (+11.8), Manchester City (+10.1), Arsenal (+6.1). Below: Tottenham (-18.4), Bournemouth (-12.0), Chelsea (-6.1).

xPosClubPosPWDLGFGAPtsxPtsGap
1Arsenal136256566298174.9+6.1
2Manchester City236248476348069.9+10.1
3Manchester United3371813669486761.5+5.5
4Liverpool73714121157515458.8-4.8
5Brentford5371414958465657.5-1.5
6Bournemouth1336918951564557.0-12.0
7Brighton6361591258405454.5-0.5
8Chelsea9361391457564854.1-6.1
9Leeds83611151050484851.8-3.8
10Aston Villa4371871256536149.2+11.8
11Tottenham17376121938613048.4-18.4
12Nottingham Forest143611111448444446.9-2.9
13Everton103612121246464845.8+2.2
14Newcastle United11351461555574845.4+2.6
15Crystal Palace16361091738553944.2-5.2
16Fulham12361371645494643.5+2.4
17Sunderland153611111439544440.5+3.5

La Liga justice table, last 12 months

20 clubs, 8 to 38 matches played. Above their expected points: Barcelona (+14.4), Atletico Madrid (+12.9), Getafe (+8.0). Below: Athletic Club (-13.9), Osasuna (-13.6), Alaves (-10.0).

xPosClubPosPWDLGFGAPtsxPtsGap
1Barcelona1373205105339681.6+14.4
2Real Madrid238265777348378.0+5.0
3Villarreal4371961269496361.8+1.2
4Atletico Madrid3372331164427259.1+12.9
5Real Betis5371712858476357.5+5.5
6Athletic Club14361171841554053.9-13.9
7Osasuna133710101745594053.6-13.6
8Rayo Vallecano83712141144505053.3-3.3
9Real Sociedad73814121264645453.2+0.8
10Alaves113811101747564353.0-10.0
11Celta Vigo63815111254445650.4+5.6
12Valencia103812101642564649.3-3.3
13Levante16361091742593943.8-4.8
14Espanyol15371091841553940.0-1.0
15Elche17388121849653640.0-4.0
16Getafe9381461827374840.0+8.0
17Sevilla12361271740554338.7+4.3
18Deportivo La Coruna1882421211109.9+0.1
19Racing Santander198224132389.1-1.1
20Malaga20804441346.1-2.1

Bundesliga justice table, last 12 months

15 clubs, 32 to 33 matches played. Above their expected points: Borussia Dortmund (+11.5), Bayern Munich (+6.8), Augsburg (+5.6). Below: FC Cologne (-12.9), Union Berlin (-9.3), Mainz 05 (-8.9).

xPosClubPosPWDLGFGAPtsxPtsGap
1Bayern Munich1322471111367972.2+6.8
2Borussia Dortmund232226468327260.5+11.5
3RasenBallsport Leipzig3321841071435859.8-1.8
4Bayer Leverkusen532167966445557.5-2.5
5Hoffenheim4331761065535753.8+3.2
6Mainz 0593211101149494351.9-8.9
7VfB Stuttgart632158968525349.8+3.2
8Freiburg7331571156525247.0+5.0
9Union Berlin1332891538613342.3-9.3
10Eintracht Frankfurt10339131153654042.2-2.2
11FC Cologne15326101645632840.9-12.9
12Augsburg8321281246554438.4+5.6
13Borussia M.Gladbach1232981543563536.4-1.4
14Werder Bremen1432881636543235.9-3.9
15Hamburger SV1132991438593632.1+3.9

Serie A justice table, last 12 months

17 clubs, 36 to 38 matches played. Above their expected points: Lazio (+13.3), Parma Calcio 1913 (+11.4), Napoli (+9.6). Below: Juventus (-13.2), Fiorentina (-6.8), Genoa (-4.5).

xPosClubPosPWDLGFGAPtsxPtsGap
1Inter137277389358881.7+6.4
2Juventus6381911861346881.2-13.2
3Como2382110767307370.8+2.2
4Roma337226966317267.7+4.3
5AC Milan5381912755376962.6+6.4
6Napoli437218856357161.4+9.6
7Atalanta83715101245385556.0-1.0
8Bologna9381491545485153.1-2.1
9Fiorentina153810131544564349.8-6.8
10Lazio7381712942376349.7+13.3
11Genoa143811101743534347.5-4.5
12Sassuolo11371381648524746.8+0.2
13Torino16361181743584144.5-3.5
14Udinese12371371747504643.8+2.2
15Cagliari10381391640504842.2+5.8
16Lecce17371152129523832.8+5.2
17Parma Calcio 1913133811111629494432.6+11.4

Ligue 1 justice table, last 12 months

16 clubs, 32 to 33 matches played. Above their expected points: Rennes (+14.7), Lille (+9.7), Lyon (+7.7). Below: Toulouse (-9.8), Brest (-6.7), Nice (-6.3).

xPosClubPosPWDLGFGAPtsxPtsGap
1Paris Saint Germain132224667277070.3-0.3
2Lens233204967396464.7-0.7
3Lille333196847316353.3+9.7
4Toulouse113310111245454150.8-9.8
5Lyon532168853365648.3+7.7
6Marseille7321451351464748.2-1.2
7Monaco6321661053465447.5+6.5
8Rennes433195960486247.3+14.7
9Paris FC93311121043414546.7-1.7
10Brest12331091444533945.7-6.7
11Strasbourg10321281252494442.9+1.1
12Lorient8331113945414642.5+3.5
13Auxerre14338101537503438.9-4.8
14Nice16326111530532935.3-6.3
15Le Havre15326131326363133.4-2.4
16Angers13321071532463731.3+5.7

xPos is the rank on expected points over the window; Pos is the rank on real points over the same window. Gap is points minus expected points.

How it is measured

Expected points come from Understat, which turns the xG of both sides in a match into win, draw and loss probabilities and scores them 3, 1 and 0. A match a side would win 60% of the time and draw 20% of the time is worth 2.0 expected points. Summed over the season they give the points a club's chances, and its opponents' chances, deserved. The window is a rolling 12 months of league matches, or 6 on the toggle, so it spans the end of last season and the start of this one; a club needs 8 matches in the window and a place in the division this season to appear. Each table is sorted on expected points, the justice order. Pos is the club's rank on real points over the same window, not its league position. Gap is points minus expected points. Data covers the Premier League, La Liga, Bundesliga, Serie A and Ligue 1 and refreshes every Monday; expected points count penalties, as xG does.

What the table means

The name comes from the clubs in Christoph Biermann's Football Hackers, Midtjylland and Brentford among them, which judged themselves on expected points because the real table lies for long stretches. It still does. In 2025/26, the average club finished 2.1 places from its expected-points position, 64 of 96 finished within two places of it, and the largest points gap was Pisa at -21.1. Read a large positive gap as results running ahead of the play, and a large negative one as the reverse. Whether the market has priced that in is a separate question; the closing prices for every match are in Closing Lines.

Questions

What is a justice table?

A league table sorted on expected points instead of points. It shows where each club would sit if its results matched the quality of the chances it created and allowed, with its real position alongside.

What are expected points (xPts)?

The points a club was likely to take from a match given the xG of both sides: the win, draw and loss probabilities scored 3, 1 and 0 and added up. Over a season they show what the play was worth, separate from what the results delivered.

Which teams are overachieving their expected points right now?

As of matches to 11 Oct 2026, the clubs furthest above their expected points over the last 12 months across the top five leagues are Rennes (+14.7, Ligue 1), Barcelona (+14.4, La Liga), Lazio (+13.3, Serie A). Their results have run ahead of their play.

Which teams are underachieving their expected points?

As of matches to 11 Oct 2026, the clubs furthest below their expected points over the last 12 months are Tottenham (-18.4, Premier League), Athletic Club (-13.9, La Liga), Osasuna (-13.6, La Liga). Their play has been worth more than their results.

Why a rolling 12 months rather than the league table?

Five or six matches into a season the gaps are mostly noise. Twelve months of league matches, about 34 to 38 per club, is enough for expected points to mean something, and the window moves on every week. A 6-month view is on the toggle.

How often is the justice table updated?

Every Monday at 03:30 UTC from Understat, covering the current and previous season so the 12-month window is always complete.

More on SteamWatch