The luck table
When the result lied.
The most recent round, 26 Oct–02 Nov: who created the better chances (xG) and who actually took the points. When a side clearly out-created its opponent and still didn’t win, the result defied the xG — flagged below. Six full-xG leagues, finished games only.
“Luck” is shorthand. A result can beat the xG through sharp
finishing, a keeper’s blinder or plain variance — not only fortune, and one game
proves nothing. These are raw match xG, not the league-normalised
ratings, so a big gap here is about a single afternoon, not team
quality. The model’s own calls and how they settle are on the
record. Nothing here is a tip.
Biggest gap this round. Bayern München out-created Borussia Dortmund 4.2–0.7 but drew.
The round the xG disagreed with
9 of 70 finished top-flight matches ran against the balance of chances, biggest gap first. The xG favourite is in bold.
| Match | League | Score | xG (h–a) | What happened |
|---|---|---|---|---|
| Bayern München v Borussia Dortmund | Bundesliga | 2–2 | 4.2–0.7 | Bayern München out-created Borussia Dortmund 4.2–0.7 but drew. Bayern München held |
| Atalanta v Parma | Serie A | 0–3 | 3.2–0.4 | Atalanta out-created Parma 3.2–0.4 but lost. Atalanta robbed Parma smash & grab |
| Burnley v Portsmouth | Championship | 0–0 | 1.8–0.3 | Burnley out-created Portsmouth 1.8–0.3 but drew. Burnley held |
| AC Milan v Inter | Serie A | 3–1 | 0.7–1.8 | Inter out-created AC Milan 1.8–0.7 but lost. Inter robbed AC Milan smash & grab |
| Manchester City v Brighton | Premier League | 0–1 | 2.0–1.0 | Manchester City out-created Brighton 2.0–1.0 but lost. Manchester City robbed Brighton smash & grab |
| Coventry v Sunderland | Premier League | 3–1 | 0.8–1.7 | Sunderland out-created Coventry 1.7–0.8 but lost. Sunderland robbed Coventry smash & grab |
| Levante v Atletico Madrid | La Liga | 0–2 | 1.3–0.6 | Levante out-created Atletico Madrid 1.3–0.6 but lost. Levante robbed Atletico Madrid smash & grab |
| Villarreal v Espanyol | La Liga | 0–1 | 0.9–0.3 | Villarreal out-created Espanyol 0.9–0.3 but lost. Villarreal robbed Espanyol smash & grab |
| Fiorentina v Atalanta | Serie A | 2–2 | 1.7–1.2 | Fiorentina out-created Atalanta 1.7–1.2 but drew. Fiorentina held |
The other 61 match(es) followed the chances
| Match | League | Score | xG (h–a) | What happened |
|---|---|---|---|---|
| Tottenham v Crystal Palace | Premier League | 2–0 | 3.3–0.2 | Result followed the chances. |
| Millwall v Derby | Championship | 4–1 | 4.2–1.3 | Result followed the chances. |
| FC Schalke 04 v RB Leipzig | Bundesliga | 0–2 | 0.6–3.3 | Result followed the chances. |
| Strasbourg v Auxerre | Ligue 1 | 5–1 | 3.1–0.5 | Result followed the chances. |
| Barcelona v Alaves | La Liga | 6–1 | 3.2–0.6 | Result followed the chances. |
| Sassuolo v Lazio | Serie A | 2–6 | 0.8–3.4 | Result followed the chances. |
| Racing Santander v Real Madrid | La Liga | 0–3 | 1.2–3.5 | Result followed the chances. |
| Stoke City v Preston | Championship | 2–0 | 2.2–0.2 | Result followed the chances. |
| Swansea v Blackburn | Championship | 4–0 | 2.4–0.4 | Result followed the chances. |
| Bolton v Bristol City | Championship | 2–3 | 1.3–3.2 | Result followed the chances. |
| Frosinone v Lecce | Serie A | 5–1 | 3.1–1.5 | Result followed the chances. |
| Sassuolo v Fiorentina | Serie A | 2–4 | 0.9–2.5 | Result followed the chances. |
| Athletic Club v Real Sociedad | La Liga | 2–1 | 3.0–1.4 | Result followed the chances. |
| Lille v Lens | Ligue 1 | 1–0 | 1.8–0.2 | Result followed the chances. |
| Lyon v Angers | Ligue 1 | 2–0 | 2.0–0.4 | Result followed the chances. |
| Chelsea v Manchester United | Premier League | 2–0 | 2.7–1.2 | Result followed the chances. |
| Estac Troyes v Le Mans | Ligue 1 | 2–0 | 1.8–0.3 | Result followed the chances. |
| Como v Venezia | Serie A | 1–0 | 1.6–0.2 | Result followed the chances. |
| Paris FC v Monaco | Ligue 1 | 3–1 | 2.1–0.8 | Result followed the chances. |
| Deportivo La Coruna v Osasuna | La Liga | 2–1 | 2.4–1.1 | Result followed the chances. |
| Middlesbrough v Charlton | Championship | 3–0 | 1.7–0.4 | Result followed the chances. |
| Frosinone v Torino | Serie A | 2–0 | 1.9–0.7 | Result followed the chances. |
| Le Havre v Paris Saint Germain | Ligue 1 | 1–5 | 1.9–3.1 | Result followed the chances. |
| Torino v Como | Serie A | 1–3 | 1.0–2.1 | Result followed the chances. |
| West Ham v West Brom | Championship | 1–3 | 1.0–2.1 | Result followed the chances. |
| Udinese v AS Roma | Serie A | 2–5 | 1.9–2.9 | Result followed the chances. |
| Eintracht Frankfurt v Hamburger SV | Bundesliga | 3–1 | 2.0–1.1 | Result followed the chances. |
| Getafe v Sevilla | La Liga | 3–1 | 1.6–0.7 | Result followed the chances. |
| Bayer Leverkusen v VfB Stuttgart | Bundesliga | 2–4 | 2.1–2.9 | Result followed the chances. |
| Nice v Rennes | Ligue 1 | 5–2 | 3.5–2.7 | Result followed the chances. |
| Newcastle v Everton | Premier League | 0–1 | 1.5–2.2 | Result followed the chances. |
| Monza v Napoli | Serie A | 1–4 | 0.8–1.4 | Result followed the chances. |
| Bournemouth v Leeds | Premier League | 2–0 | 1.3–0.7 | Result followed the chances. |
| AS Roma v Cagliari | Serie A | 4–2 | 2.9–2.3 | Result followed the chances. |
| Venezia v Inter | Serie A | 0–2 | 1.6–2.1 | Result followed the chances. |
| Aston Villa v Fulham | Premier League | 1–1 | 1.8–2.2 | Result followed the chances. |
| Wolves v Cardiff | Championship | 3–0 | 1.6–1.1 | Result followed the chances. |
| Marseille v Toulouse | Ligue 1 | 2–0 | 1.1–1.6 | Result followed the chances. |
| Sheffield Utd v Wrexham | Championship | 1–0 | 1.1–0.7 | Result followed the chances. |
| Southampton v QPR | Championship | 4–1 | 1.2–0.8 | Result followed the chances. |
| Lincoln v Birmingham | Championship | 1–3 | 1.6–2.1 | Result followed the chances. |
| Juventus v Napoli | Serie A | 2–0 | 0.9–0.4 | Result followed the chances. |
| Lorient v Stade Brestois 29 | Ligue 1 | 0–2 | 1.7–1.2 | Result followed the chances. |
| Elche v Valencia | La Liga | 0–1 | 1.3–1.0 | Result followed the chances. |
| Brentford v Nottingham Forest | Premier League | 2–0 | 0.5–0.9 | Result followed the chances. |
| Hull City v Ipswich | Premier League | 2–2 | 0.8–1.1 | Result followed the chances. |
| Lecce v Genoa | Serie A | 1–2 | 1.0–1.3 | Result followed the chances. |
| Union Berlin v 1. FC Köln | Bundesliga | 1–1 | 0.9–1.2 | Result followed the chances. |
| Parma v Udinese | Serie A | 0–0 | 1.1–1.4 | Result followed the chances. |
| Bologna v Monza | Serie A | 2–1 | 2.1–1.8 | Result followed the chances. |
| Real Betis v Malaga | La Liga | 2–1 | 1.4–1.2 | Result followed the chances. |
| Liverpool v Arsenal | Premier League | 0–1 | 1.2–1.0 | Result followed the chances. |
| Norwich v Watford | Championship | 3–2 | 1.2–1.0 | Result followed the chances. |
| SV Elversberg v FSV Mainz 05 | Bundesliga | 4–1 | 1.0–1.2 | Result followed the chances. |
| AC Milan v Bologna | Serie A | 2–4 | 1.8–1.9 | Result followed the chances. |
| Rayo Vallecano v Celta Vigo | La Liga | 3–0 | 1.1–1.3 | Result followed the chances. |
| Genoa v Juventus | Serie A | 2–0 | 1.0–0.9 | Result followed the chances. |
| FC Augsburg v SC Freiburg | Bundesliga | 1–2 | 1.5–1.4 | Result followed the chances. |
| Lazio v Cagliari | Serie A | 2–1 | 1.0–1.1 | Result followed the chances. |
| Werder Bremen v 1899 Hoffenheim | Bundesliga | 2–0 | 1.2–1.1 | Result followed the chances. |
| Borussia Mönchengladbach v SC Paderborn 07 | Bundesliga | 0–0 | 1.1–1.0 | Result followed the chances. |
↓ Download this round (CSV)free to reuse, a credit to Football Edge is appreciated
Chances warranted, not goals guaranteed. Over a season these gaps mostly wash out — which is the whole point of watching them.