Arsenal v Aston Villa — Prediction, Odds & Stats
Saturday 18 January 2025 · ENG-Premier League · 2425
Premier League
xG Prediction generated
AI prediction
dc-xg-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
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.
Aston Villa have scored 14 from 15.7 expected and conceded 17 from 15.7 — both ends in line with the chances, so the recent record is a fair reflection.
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 |
|---|---|---|---|---|---|---|
| dc-xg-oos | 2.25–0.90 | 2-0 11% | 61% | 53% | Home ✗ |
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 |
|---|---|---|---|---|---|---|---|
| 2' |
|
Gabriel Martinelli | 0.05 | Open Play | Right Foot | Saved Shot | Declan Rice |
| 12' |
|
Ian Maatsen | 0.06 | Open Play | Left Foot | Saved Shot | — |
| 17' |
|
Leandro Trossard | 0.03 | Open Play | Right Foot | Saved Shot | Kai Havertz |
| 27' |
|
Kai Havertz | 0.02 | Open Play | Left Foot | Missed Shot | Mikel Merino |
| 31' |
|
Ollie Watkins | 0.03 | Open Play | Right Foot | Missed Shot | — |
| 33' |
|
Ollie Watkins | 0.07 | Open Play | Right Foot | Blocked Shot | Morgan Rogers |
| 34' |
|
Gabriel Martinelli | 0.56 | Open Play | Right Foot | Goal | Leandro Trossard |
| 38' |
|
Leandro Trossard | 0.08 | Open Play | Right Foot | Missed Shot | — |
| 39' |
|
Mikel Merino | 0.08 | Open Play | Left Foot | Missed Shot | Thomas Partey |
| 47' |
|
Kai Havertz | 0.06 | Set Piece | — | Missed Shot | Martin Odegaard |
| 50' |
|
Leandro Trossard | 0.02 | From Corner | Right Foot | Blocked Shot | — |
| 54' |
|
Kai Havertz | 0.35 | Open Play | Left Foot | Goal | Leandro Trossard |
| 59' |
|
Youri Tielemans | 0.32 | Open Play | — | Goal | Lucas Digne |
| 60' |
|
Youri Tielemans | 0.06 | Open Play | Right Foot | Shot On Post | — |
| 64' |
|
Gabriel Martinelli | 0.05 | From Corner | Right Foot | Missed Shot | Gabriel |
| 64' |
|
Leandro Trossard | 0.01 | From Corner | Right Foot | Blocked Shot | Gabriel |
| 66' |
|
Leandro Trossard | 0.02 | From Corner | Left Foot | Missed Shot | — |
| 67' |
|
Ollie Watkins | 0.58 | Set Piece | Right Foot | Goal | Matthew Cash |
| 73' |
|
Declan Rice | 0.02 | Open Play | Right Foot | Missed Shot | Leandro Trossard |
| 81' |
|
Martin Odegaard | 0.08 | Open Play | Left Foot | Blocked Shot | Thomas Partey |
| 85' |
|
Lamare Bogarde | 0.07 | Open Play | Right Foot | Saved Shot | Leon Bailey |
| 86' |
|
Mikel Merino | 0.05 | Open Play | Left Foot | Blocked Shot | — |
| 90' |
|
Leandro Trossard | 0.07 | Open Play | Right Foot | Saved Shot | — |
| 90' |
|
Mikel Merino | 0.09 | Open Play | Left Foot | Shot On Post | — |
| 92' |
|
Youri Tielemans | 0.02 | Open Play | Right Foot | Missed Shot | Lamare Bogarde |
Players
Arsenal
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Kai Havertz FW | 90 | 1 | 0 | 3 | 1 | 0.43 | 0.03 | 1.07 |
| Leandro Trossard FWL | 90 | 0 | 2 | 6 | 3 | 0.23 | 0.93 | 1.36 |
| Mikel Merino MC | 90 | 0 | 0 | 3 | 1 | 0.22 | 0.02 | 0.95 |
| Martin Odegaard MC | 90 | 0 | 0 | 1 | 1 | 0.08 | 0.06 | 1.12 |
| Declan Rice MC | 90 | 0 | 0 | 1 | 1 | 0.02 | 0.05 | 0.81 |
| Thomas Partey DR | 90 | 0 | 0 | 0 | 2 | 0.00 | 0.16 | 1.10 |
| Myles Lewis-Skelly DL | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 1.12 |
| David Raya GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.07 |
| Jurriën Timber DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 1.12 |
| Gabriel DC | 90 | 0 | 0 | 0 | 2 | 0.00 | 0.07 | 1.12 |
| Gabriel Martinelli FWR | 84 | 1 | 0 | 3 | 0 | 0.66 | 0.00 | 0.63 |
| Raheem Sterling Sub | 6 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.07 |
Aston Villa
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Youri Tielemans AMC | 90 | 1 | 0 | 3 | 0 | 0.40 | 0.00 | 0.40 |
| Boubacar Kamara DMC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.02 |
| Matthew Cash DR | 90 | 0 | 1 | 0 | 1 | 0.00 | 0.58 | 0.00 |
| Tyrone Mings DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Ezri Konsa Ngoyo DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Emiliano Martinez GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Morgan Rogers AMR | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.07 | 0.14 |
| Jacob Ramsey AML | 87 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Ollie Watkins FW | 82 | 1 | 0 | 3 | 0 | 0.68 | 0.00 | 0.10 |
| Lamare Bogarde Sub | 54 | 0 | 0 | 1 | 1 | 0.07 | 0.02 | 0.09 |
| Ian Maatsen DL | 48 | 0 | 0 | 1 | 0 | 0.06 | 0.00 | 0.06 |
| Lucas Digne Sub | 42 | 0 | 1 | 0 | 1 | 0.00 | 0.32 | 0.02 |
| Amadou Onana DMC | 36 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.07 |
| Jhon Durán Sub | 8 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Leon Bailey Sub | 3 | 0 | 0 | 0 | 1 | 0.00 | 0.07 | 0.07 |