Leeds United v Arsenal — Prediction, Odds & Stats
Saturday 31 January 2026 · ENG-Premier League · 2526
Premier League
xG Prediction generated
AI prediction
ai-blend-oos No snapshot has been taken for this fixture yet; this is the stored price.Probabilities, not certainties. How they are made: the methodology.
Was this pick made in advance?
-oos is out of sample: it was fitted only on matches
played before this one, so its pick is a genuine forecast rather than hindsight.
Anything without that suffix was fitted on all available data.What the chances say
Leeds United are finishing below their chances — 3.3 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding sharply fewer than expected — 5.2 goals saved beyond what the chances suggest.
Arsenal are finishing sharply below their chances — 6.9 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding fewer than expected — 3.4 goals saved beyond what the chances suggest.
Finishing swings far more than chance creation, so a gap this size usually narrows. Over ten matches it is suggestive, not settled — a genuinely elite finisher beats expected goals for years.
What the model said
| Model | Home / Draw / Away | Expected goals | Likeliest score | O2.5 | BTTS | Outcome |
|---|---|---|---|---|---|---|
| ai-blend-oos | 1.02–1.83 | 0% | 0% | 0% | Away ✓ | |
| dc-xg-oos | 1.12–1.61 | 1-1 12% | 51% | 54% | Away ✓ |
A model whose name ends -oos was produced by the walk-forward backtest:
it was fitted only on matches played before this one, so the pick is genuinely out of sample.
Reading the xG timeline
Expected goals by minute
Reading the shot map
Shot map
Every shot
| Min | Team | Player | xG | Situation | Body part | Result | Assisted by |
|---|---|---|---|---|---|---|---|
| 10' |
|
Ethan Ampadu | 0.02 | Open Play | Left Foot | Missed Shot | — |
| 14' |
|
Martín Zubimendi | 0.03 | Open Play | Right Foot | Saved Shot | Kai Havertz |
| 26' |
|
Martín Zubimendi | 0.33 | From Corner | — | Goal | Noni Madueke |
| 37' |
|
Karl Darlow | 0.00 | From Corner | — | Own Goal | — |
| 48' |
|
Pascal Struijk | 0.11 | From Corner | — | Saved Shot | Anton Stach |
| 50' |
|
Viktor Gyokeres | 0.41 | Open Play | Right Foot | Blocked Shot | Leandro Trossard |
| 51' |
|
Jurriën Timber | 0.29 | From Corner | — | Missed Shot | Noni Madueke |
| 68' |
|
Viktor Gyokeres | 0.61 | Open Play | Right Foot | Goal | Gabriel Martinelli |
| 71' |
|
Leandro Trossard | 0.01 | Open Play | Left Foot | Blocked Shot | Viktor Gyokeres |
| 76' |
|
Gabriel Jesus | 0.47 | Open Play | Right Foot | Missed Shot | Declan Rice |
| 78' |
|
Gabriel Jesus | 0.46 | Open Play | — | Saved Shot | Jurriën Timber |
| 79' |
|
Riccardo Calafiori | 0.13 | From Corner | — | Missed Shot | Declan Rice |
| 84' |
|
Sean Longstaff | 0.05 | Open Play | Right Foot | Blocked Shot | Jayden Bogle |
| 85' |
|
Gabriel Jesus | 0.12 | Open Play | Right Foot | Goal | Martin Odegaard |
| 87' |
|
Gabriel Martinelli | 0.11 | Open Play | Left Foot | Saved Shot | — |
| 88' |
|
Gabriel | 0.03 | From Corner | — | Saved Shot | — |
| 88' |
|
Gabriel Jesus | 0.06 | From Corner | — | Blocked Shot | Declan Rice |
| 92' |
|
Martín Zubimendi | 0.49 | From Corner | — | Missed Shot | Martin Odegaard |
Players
Arsenal
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Martín Zubimendi DMC | 90 | 1 | 0 | 3 | 0 | 0.85 | 0.00 | 1.51 |
| Jurriën Timber DR | 90 | 0 | 0 | 1 | 1 | 0.29 | 0.46 | 0.58 |
| Gabriel DC | 90 | 0 | 0 | 1 | 0 | 0.03 | 0.00 | 0.41 |
| David Raya GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.41 |
| William Saliba DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 1.48 |
| Declan Rice DMC | 90 | 0 | 0 | 0 | 3 | 0.00 | 0.65 | 1.05 |
| Leandro Trossard AML | 83 | 0 | 0 | 1 | 1 | 0.01 | 0.41 | 0.91 |
| Viktor Gyokeres FW | 78 | 1 | 0 | 2 | 1 | 1.02 | 0.01 | 1.06 |
| Piero Hincapié DL | 77 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.44 |
| Noni Madueke AMR | 63 | 0 | 1 | 0 | 2 | 0.00 | 0.62 | 0.00 |
| Kai Havertz AMC | 63 | 0 | 0 | 0 | 1 | 0.00 | 0.03 | 0.03 |
| Gabriel Martinelli Sub | 27 | 0 | 1 | 1 | 1 | 0.11 | 0.61 | 0.72 |
| Martin Odegaard Sub | 27 | 0 | 1 | 0 | 2 | 0.00 | 0.61 | 1.18 |
| Riccardo Calafiori Sub | 13 | 0 | 0 | 1 | 0 | 0.13 | 0.00 | 0.58 |
| Gabriel Jesus Sub | 12 | 1 | 0 | 4 | 0 | 1.10 | 0.00 | 1.04 |
| Eberechi Eze Sub | 7 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
Leeds United
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Pascal Struijk DC | 90 | 0 | 0 | 1 | 0 | 0.11 | 0.00 | 0.00 |
| Ethan Ampadu MC | 90 | 0 | 0 | 1 | 0 | 0.02 | 0.00 | 0.02 |
| Karl Darlow GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Joe Rodon DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Gabriel Gudmundsson DML | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Jayden Bogle DMR | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.05 | 0.05 |
| Dominic Calvert-Lewin FW | 87 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Anton Stach AMC | 83 | 0 | 0 | 0 | 1 | 0.00 | 0.11 | 0.00 |
| Brenden Aaronson AMC | 73 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| James Justin DC | 48 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Ilia Gruev MC | 48 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Sean Longstaff Sub | 42 | 0 | 0 | 1 | 0 | 0.05 | 0.00 | 0.05 |
| Noah Okafor Sub | 42 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Facundo Buonanotte Sub | 17 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.05 |
| Wilfried Gnonto Sub | 7 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.05 |
| Joël Piroe Sub | 3 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |