Roma v Cagliari — Prediction, Odds & Stats
Sunday 16 March 2025 · ITA-Serie A · 2425
Serie A
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
Roma are conceding fewer than expected — 2.6 goals saved beyond what the chances suggest.
Cagliari are finishing sharply below their chances — 5.0 goals fewer than expected across 10 matches, despite creating the openings. They are also conceding fewer than expected — 4.0 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.96–0.92 | 0% | 0% | 0% | 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 |
|---|---|---|---|---|---|---|---|
| 8' |
|
Matìas Soulè Malvano | 0.04 | Open Play | Left Foot | Blocked Shot | Artem Dovbyk |
| 14' |
|
Artem Dovbyk | 0.02 | Open Play | Left Foot | Missed Shot | Kouadio Kone |
| 16' |
|
Kouadio Kone | 0.09 | Open Play | — | Missed Shot | Devyne Rensch |
| 18' |
|
Angelino | 0.02 | From Corner | Left Foot | Blocked Shot | — |
| 20' |
|
Artem Dovbyk | 0.08 | Open Play | Left Foot | Blocked Shot | Matìas Soulè Malvano |
| 29' |
|
Gianluca Mancini | 0.05 | From Corner | Right Foot | Blocked Shot | Leandro Paredes |
| 33' |
|
Roberto Piccoli | 0.03 | Open Play | Right Foot | Saved Shot | Adam Obert |
| 35' |
|
Artem Dovbyk | 0.02 | Open Play | — | Missed Shot | Matìas Soulè Malvano |
| 42' |
|
Artem Dovbyk | 0.04 | From Corner | — | Missed Shot | Matìas Soulè Malvano |
| 43' |
|
Nadir Zortea | 0.08 | Open Play | Right Foot | Missed Shot | Matteo Prati |
| 50' |
|
Alessandro Deiola | 0.02 | Open Play | Right Foot | Missed Shot | Ndary Adopo |
| 51' |
|
Alessandro Deiola | 0.03 | From Corner | — | Missed Shot | Nicolas Viola |
| 51' |
|
Matteo Prati | 0.03 | Open Play | Right Foot | Blocked Shot | — |
| 51' |
|
Roberto Piccoli | 0.48 | Open Play | Right Foot | Saved Shot | Nadir Zortea |
| 53' |
|
Matìas Soulè Malvano | 0.02 | Open Play | Left Foot | Missed Shot | Alexis Saelemaekers |
| 56' |
|
Leandro Paredes | 0.04 | Direct Freekick | Right Foot | Blocked Shot | — |
| 56' |
|
Leandro Paredes | 0.01 | Set Piece | Left Foot | Missed Shot | Artem Dovbyk |
| 59' |
|
Roberto Piccoli | 0.07 | Open Play | Right Foot | Blocked Shot | Ndary Adopo |
| 60' |
|
Artem Dovbyk | 0.55 | Open Play | Left Foot | Missed Shot | Tommaso Baldanzi |
| 61' |
|
Artem Dovbyk | 0.63 | From Corner | Left Foot | Goal | — |
| 67' |
|
Roberto Piccoli | 0.03 | Open Play | Right Foot | Saved Shot | Nadir Zortea |
| 70' |
|
Yerry Mina | 0.25 | Set Piece | — | Saved Shot | Tommaso Augello |
| 88' |
|
Kingstone Mutandwa | 0.08 | Open Play | — | Missed Shot | Sebastiano Luperto |
| 96' |
|
Leonardo Pavoletti | 0.03 | Open Play | — | Saved Shot | Sebastiano Luperto |
Players
Cagliari
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Roberto Piccoli FW | 90 | 0 | 0 | 4 | 0 | 0.61 | 0.00 | 0.61 |
| Yerry Mina DC | 90 | 0 | 0 | 1 | 0 | 0.25 | 0.00 | 0.14 |
| Nadir Zortea DMR | 90 | 0 | 0 | 1 | 2 | 0.08 | 0.50 | 0.67 |
| Sebastiano Luperto DC | 90 | 0 | 0 | 0 | 2 | 0.00 | 0.11 | 0.21 |
| Elia Caprile GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.61 |
| José Luis Palomino DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.65 |
| Alessandro Deiola MC | 81 | 0 | 0 | 2 | 0 | 0.05 | 0.00 | 0.15 |
| Ndary Adopo MC | 75 | 0 | 0 | 0 | 2 | 0.00 | 0.08 | 0.19 |
| Adam Obert DML | 66 | 0 | 0 | 0 | 1 | 0.00 | 0.03 | 0.03 |
| Matteo Prati MC | 65 | 0 | 0 | 1 | 1 | 0.03 | 0.08 | 0.17 |
| Nicolas Viola AMC | 65 | 0 | 0 | 0 | 1 | 0.00 | 0.03 | 0.51 |
| Kingstone Mutandwa Sub | 25 | 0 | 0 | 1 | 0 | 0.08 | 0.00 | 0.10 |
| Antoine Makoumbou Sub | 25 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.10 |
| Tommaso Augello Sub | 24 | 0 | 0 | 0 | 1 | 0.00 | 0.25 | 0.10 |
| Razvan Marin Sub | 15 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Leonardo Pavoletti Sub | 9 | 0 | 0 | 1 | 0 | 0.03 | 0.00 | 0.03 |
Roma
| Player | Min | G | A | Sh | KP | xG | xA | xGChain |
|---|---|---|---|---|---|---|---|---|
| Leandro Paredes MC | 90 | 0 | 0 | 2 | 1 | 0.05 | 0.05 | 0.17 |
| Gianluca Mancini DC | 90 | 0 | 0 | 1 | 0 | 0.05 | 0.00 | 0.13 |
| Angelino DML | 90 | 0 | 0 | 1 | 0 | 0.02 | 0.00 | 0.02 |
| Mile Svilar GK | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.57 |
| Evan Ndicka DC | 90 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.13 |
| Devyne Rensch DC | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.09 | 0.13 |
| Alexis Saelemaekers DMR | 90 | 0 | 0 | 0 | 1 | 0.00 | 0.02 | 0.10 |
| Artem Dovbyk FW | 73 | 1 | 0 | 6 | 2 | 1.34 | 0.06 | 0.72 |
| Kouadio Kone MC | 65 | 0 | 0 | 1 | 1 | 0.09 | 0.02 | 0.15 |
| Matìas Soulè Malvano AMC | 65 | 0 | 0 | 2 | 3 | 0.06 | 0.14 | 0.81 |
| Tommaso Baldanzi AMC | 65 | 0 | 0 | 0 | 1 | 0.00 | 0.55 | 0.69 |
| Bryan Cristante Sub | 25 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Stephan El Shaarawy Sub | 25 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Eldor Shomurodov Sub | 17 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Niccolò Pisilli Sub | 14 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |
| Paulo Dybala Sub | 11 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 |