FootballEdgeSeason 2026/27Self-updating record
xG table · 2026/27

The table underneath
the table.

The league table tells you what happened. This one tells you how well each side actually played — ranked by the quality of chances they created and conceded, not by results. This is the season in progress.

New here? Read these three columns. xG diff is the headline: chances created minus chances conceded, per match. The side at the top of it played the best football, whatever the results say. Pts +/- is the luck column — actual points minus what the chances in each match were worth. A big positive means a team has been finishing well, keeping well, or riding their luck. Goals vs xG is the same idea in goals. Both tend to drift back toward zero, which is why the sides at the top of them are usually the ones who fall away next season. Every column header explains itself if you hover over it, and every column sorts.

Prefer one league at a time? Teams & leagues →

↓ Download the full ratings table (CSV)free to reuse, a credit to Football Edge is appreciated

Premier League xG table 2026/27

On chance quality alone, Arsenal were the best side here (+0.85 xG difference per game). Brighton scored +7.0 goals more than their chances were worth, the biggest gap in the division. Arsenal collected +6.5 points more than those chances deserved. Gaps like that usually shrink over time, which is why sides at the top of them often fall away.

#TeamPldW-D-LPtsxPtsPts +/-GFGAxGF/gxGA/gxG diffG vs xG
1Arsenal98-0-12417.5+6.51451.670.81+0.85-1.0
2Manchester City97-0-22116.9+4.120102.071.27+0.79+1.4
3Bournemouth93-3-31215.2-3.214131.791.13+0.66-2.1
4Nottingham Forest91-3-5615.1-9.16121.541.01+0.53-7.9
5Brighton96-1-21914.5+4.52471.891.45+0.43+7.0
6Brentford93-5-11412.6+1.41691.611.37+0.23+1.5
7Fulham92-3-4913.4-4.49111.541.33+0.21-4.9
8Liverpool94-3-21513.3+1.71191.361.18+0.18-1.3
9Tottenham93-3-31213.5-1.510101.281.14+0.14-1.6
10Chelsea95-1-31612.1+3.919151.411.43-0.02+6.3
11Everton93-4-21311.8+1.2991.351.44-0.08-3.2
12Leeds92-5-21111.7-0.7981.241.32-0.08-2.1
13Manchester United91-4-4710.8-3.810151.501.67-0.16-3.5
14Sunderland91-2-6512.1-7.17171.451.72-0.26-6.1
15Hull City92-5-2119.7+1.311101.081.47-0.39+1.3
16Newcastle93-2-4119.3+1.712151.191.71-0.52+1.3
17Coventry93-0-699.0+0.09160.951.51-0.57+0.5
18Aston Villa93-3-3129.7+2.310131.151.73-0.58-0.3
19Ipswich93-2-41110.3+0.714181.341.93-0.60+2.0
20Crystal Palace92-1-678.8-1.89211.231.99-0.77-2.0
What each column means
  • Pld — Matches played
  • W-D-L — Wins, draws and losses
  • Pts — Actual league points won
  • xPts — Expected points — what the chances created and conceded in each match were worth, run through the same model as the rest of the site
  • Pts +/- — Actual points minus expected points. Positive means they took more from their chances than the chances deserved — finishing, goalkeeping, or luck
  • GF — Goals scored
  • GA — Goals conceded
  • xGF/g — Expected goals created per match — the quality of chances they made
  • xGA/g — Expected goals conceded per match — the quality of chances they allowed
  • xG diff — xGF/g minus xGA/g. The honest measure of how good a side has been, regardless of results
  • G vs xG — Goals scored minus expected goals. A big positive means clinical finishing or good luck, and it usually drifts back to zero

La Liga xG table

On chance quality alone, Barcelona were the best side here (+2.36 xG difference per game). Barcelona scored +8.7 goals more than their chances were worth, the biggest gap in the division. Atletico Madrid collected +9.6 points more than those chances deserved. Gaps like that usually shrink over time, which is why sides at the top of them often fall away.

#TeamPldW-D-LPtsxPtsPts +/-GFGAxGF/gxGA/gxG diffG vs xG
1Barcelona1110-0-13026.7+3.346123.391.03+2.36+8.7
2Real Madrid119-0-22722.1+4.928102.230.99+1.24+3.5
3Villarreal113-3-51220.0-8.015151.931.05+0.88-6.2
4Atletico Madrid119-1-12818.4+9.62281.581.07+0.51+4.6
5Athletic Club104-3-31516.1-1.114101.461.18+0.29-0.6
6Deportivo La Coruna113-5-31415.1-1.115141.291.19+0.10+0.8
7Osasuna113-2-61114.8-3.811221.421.50-0.07-4.6
8Alaves113-3-51214.8-2.815171.221.34-0.12+1.6
9Real Sociedad116-1-41914.8+4.220201.481.65-0.17+3.7
10Espanyol113-2-61113.7-2.713140.961.14-0.18+2.5
11Celta Vigo112-6-31213.5-1.510100.931.18-0.24-0.3
12Real Betis117-2-22314.0+9.018151.561.80-0.24+0.8
13Rayo Vallecano103-3-41212.5-0.515201.371.66-0.29+1.3
14Sevilla115-2-41713.3+3.717191.011.33-0.32+5.9
15Elche112-4-51014.0-4.014181.271.69-0.43+0.1
16Valencia112-3-6912.4-3.48171.031.49-0.45-3.4
17Levante112-4-51012.3-2.316211.361.93-0.57+1.0
18Getafe113-3-51210.3+1.78160.691.32-0.62+0.4
19Malaga110-5-659.7-4.78210.861.64-0.78-1.4
20Racing Santander113-2-61111.7-0.715291.372.25-0.88-0.1

Serie A xG table

On chance quality alone, Inter were the best side here (+1.72 xG difference per game). Lazio scored +8.0 goals more than their chances were worth, the biggest gap in the division. They also took +11.9 points more than those chances deserved. Gaps like that usually shrink over time, which is why sides at the top of them often fall away.

#TeamPldW-D-LPtsxPtsPts +/-GFGAxGF/gxGA/gxG diffG vs xG
1Inter108-1-12522.5+2.526132.751.03+1.72-1.5
2AS Roma107-3-02419.1+4.928102.291.35+0.94+5.1
3Juventus105-2-31719.0-2.013101.310.55+0.76-0.1
4Como107-2-12317.8+5.21881.851.22+0.63-0.5
5Napoli104-2-41416.5-2.517131.671.20+0.47+0.3
6Lazio109-1-02816.1+11.92481.601.15+0.45+8.0
7AC Milan106-3-12115.6+5.421121.621.26+0.36+4.8
8Monza102-1-7714.8-7.817241.591.38+0.21+1.1
9Fiorentina102-2-6814.8-6.815231.611.53+0.08-1.1
10Bologna104-2-41414.5-0.514131.381.37+0.02+0.2
11Genoa104-1-51311.9+1.110140.921.17-0.26+0.8
12Atalanta103-2-51111.5-0.516201.541.84-0.29+0.6
13Torino104-1-51311.5+1.514161.111.44-0.33+2.9
14Sassuolo102-2-6811.8-3.816261.361.73-0.36+2.4
15Frosinone106-2-22011.9+8.124141.722.11-0.39+6.8
16Venezia101-0-9312.1-9.16201.411.79-0.39-8.1
17Cagliari104-1-51310.5+2.59151.141.78-0.65-2.4
18Lecce103-0-798.8+0.211211.091.89-0.80+0.1
19Udinese101-2-758.7-3.711231.162.23-1.07-0.6
20Parma102-2-687.3+0.78150.741.83-1.09+0.6

Bundesliga xG table

On chance quality alone, Bayern München were the best side here (+2.64 xG difference per game). SV Elversberg scored +5.6 goals more than their chances were worth, the biggest gap in the division. They also took +5.8 points more than those chances deserved. Gaps like that usually shrink over time, which is why sides at the top of them often fall away.

#TeamPldW-D-LPtsxPtsPts +/-GFGAxGF/gxGA/gxG diffG vs xG
1Bayern München85-3-01821.0-3.02783.570.93+2.64-1.6
2RB Leipzig85-0-31515.3-0.322112.511.50+1.01+1.9
3FSV Mainz 0583-1-41013.9-3.917172.041.48+0.56+0.7
41899 Hoffenheim83-0-5913.5-4.514161.841.30+0.54-0.7
5SC Freiburg85-1-21613.4+2.618101.691.27+0.43+4.5
6Borussia Dortmund85-3-01813.5+4.51461.601.33+0.28+1.2
7Bayer Leverkusen84-1-31312.7+0.318162.001.74+0.26+2.0
8Werder Bremen84-3-11511.0+4.017141.651.58+0.07+3.8
91. FC Köln82-3-3911.3-2.39121.551.51+0.04-3.4
10Eintracht Frankfurt83-2-31110.6+0.413181.711.96-0.25-0.7
11VfB Stuttgart83-0-599.9-0.914152.002.37-0.37-2.0
12FC Augsburg82-3-399.5-0.518152.022.48-0.46+1.9
13SC Paderborn 0782-3-398.0+1.0690.981.58-0.60-1.8
14Borussia Mönchengladbach81-1-648.4-4.411221.532.19-0.67-1.2
15Hamburger SV83-0-597.3+1.77191.001.77-0.77-1.0
16Union Berlin81-4-378.3-1.37191.151.95-0.81-2.2
17SV Elversberg84-1-3137.2+5.816161.302.15-0.85+5.6
18FC Schalke 0481-3-466.0+0.0490.901.95-1.05-3.2

Ligue 1 xG table

On chance quality alone, Paris Saint Germain were the best side here (+1.04 xG difference per game). Marseille scored +7.2 goals more than their chances were worth, the biggest gap in the division. They also took +5.5 points more than those chances deserved. Gaps like that usually shrink over time, which is why sides at the top of them often fall away.

#TeamPldW-D-LPtsxPtsPts +/-GFGAxGF/gxGA/gxG diffG vs xG
1Paris Saint Germain85-2-11715.6+1.41992.151.10+1.04+1.8
2Paris FC95-2-21715.9+1.116101.680.93+0.74+0.9
3Toulouse92-4-31016.0-6.012131.811.12+0.68-4.3
4Stade Brestois 2993-3-31214.5-2.516121.781.28+0.50+0.0
5Lyon95-2-21714.4+2.61571.501.11+0.38+1.5
6Lens94-1-41313.1-0.116131.731.51+0.22+0.5
7Lorient93-3-31212.2-0.2781.111.09+0.01-3.0
8Lille95-3-11812.8+5.21261.361.39-0.03-0.2
9Estac Troyes92-2-5811.6-3.67161.241.32-0.08-4.1
10Monaco94-3-21511.7+3.312101.231.36-0.13+1.0
11Le Havre90-2-7211.2-9.29201.631.85-0.22-5.7
12Rennes95-1-31611.3+4.720191.952.26-0.31+2.4
13Marseille85-0-3159.5+5.519111.481.85-0.38+7.2
14Nice94-2-31410.5+3.513121.341.72-0.38+0.9
15Angers92-2-5810.4-2.49171.311.70-0.39-2.8
16Le Mans91-4-4710.2-3.211181.401.85-0.44-1.6
17Strasbourg93-1-5109.2+0.817191.301.77-0.46+5.3
18Auxerre93-1-5109.9+0.113231.362.03-0.68+0.8

Championship xG table

On chance quality alone, Middlesbrough were the best side here (+1.14 xG difference per game). West Ham scored +8.1 goals more than their chances were worth, the biggest gap in the division. Stoke City collected +7.7 points more than those chances deserved. Gaps like that usually shrink over time, which is why sides at the top of them often fall away.

#TeamPldW-D-LPtsxPtsPts +/-GFGAxGF/gxGA/gxG diffG vs xG
1Middlesbrough138-4-12826.2+1.830172.110.96+1.14+2.6
2Wolves137-3-32423.8+0.223161.610.91+0.70+2.0
3Millwall135-3-51822.2-4.223211.861.24+0.62-1.2
4West Ham136-4-32221.2+0.832171.841.24+0.60+8.1
5Southampton138-3-22721.0+6.028131.651.23+0.42+6.6
6QPR135-5-32020.4-0.421161.491.12+0.36+1.7
7Birmingham136-5-22320.3+2.723131.641.31+0.33+1.7
8Cardiff133-5-51419.9-5.919201.791.49+0.30-4.3
9Swansea138-2-32620.0+6.020131.471.19+0.29+0.8
10Bristol City135-3-51820.2-2.215171.421.18+0.23-3.4
11Norwich135-0-81517.7-2.723241.461.44+0.01+4.1
12Portsmouth135-4-41917.5+1.516151.161.19-0.02+0.9
13West Brom137-3-32417.3+6.719141.391.43-0.05+1.0
14Wrexham133-5-51417.1-3.115191.061.20-0.14+1.3
15Lincoln134-3-61517.4-2.414231.321.46-0.14-3.1
16Burnley131-6-6916.1-7.117251.341.54-0.20-0.4
17Sheffield Utd135-4-41915.2+3.817151.101.38-0.28+2.7
18Preston131-2-10514.6-9.610271.141.49-0.35-4.9
19Stoke City137-2-42315.3+7.720160.941.32-0.38+7.7
20Charlton133-5-51413.7+0.310200.961.41-0.46-2.4
21Bolton134-2-71414.1-0.118261.321.88-0.56+0.9
22Watford133-2-81111.9-0.912231.021.75-0.73-1.2
23Blackburn135-3-51812.0+6.019200.921.69-0.77+7.1
24Derby131-4-8712.7-5.711250.981.90-0.92-1.8