xgEdge

Saturday, 05/09/2026 at 20:45

Full time
Match report · Serie A

Roma 2:1 Atalanta

Roma Home 2.97 xG · 39 shots
Atalanta Away 0.70 xG · 6 shots
21 The scoreline reflected the chances

Roma were the model's likeliest winner before kick-off at 54%. They won 2–1. The biggest difference was Roma's attack: 2.97 xG against 1.67 projected (+1.30).

Goals

  1. 47' Éderson Atalanta · 0.08 xG chance 0–1
  2. 89' Mario Hermoso Roma · 0.07 xG chance 1–1
  3. 90' Matías Soulé Roma · 0.02 xG chance 2–1

The model against the result

priced before kick-off
Roma
54% What happened
Draw
28%
Atalanta
17%

Data coverage Both teams have the full 20-match model window available.

Projected vs produced

Expected goals
Roma The model projected 1.67 Produced 2.97 Difference +1.30
Atalanta The model projected 0.91 Produced 0.70 Difference -0.21

Roma produced 1.30 xG more than projected

Projected before kick-off Produced on the night

The shots behind it

Roma Atalanta
Shots
39
6
On target
10
2
Inside the box
28
6
xG per shot
0.08
0.13
Open play xG
2.75
0.76
Set-piece xG
0.45
0.03
Penalties
—
—
Shot-level xG may differ from the published match total

The provider publishes the match total separately from its shot-by-shot values. Those values are rounded to two decimals and, leaving out penalties and own goals, add up to its non-penalty xG: 3.24 for Roma and 0.77 for Atalanta.

Shot map

Both teams shown attacking the same goal for comparison.

Atalanta · Nikola Krstović · 59' · No goal · 15 m · 0.41 xG Roma · Paulo Dybala · 34' · No goal · 5 m · 0.25 xG Roma · Santiago Castro · 71' · No goal · 10 m · 0.19 xG Roma · Matías Soulé · 90' · No goal · 3 m · 0.18 xG Roma · Paulo Dybala · 3' · No goal · 6 m · 0.17 xG Roma · Gianluca Mancini · 14' · No goal · 8 m · 0.16 xG Atalanta · Lazar Samardžić · 56' · No goal · 11 m · 0.16 xG Roma · Paulo Dybala · 89' · No goal · 14 m · 0.16 xG Roma · Rodrigo Mora · 41' · No goal · 9 m · 0.13 xG Roma · Mario Hermoso · 68' · No goal · 13 m · 0.13 xG Roma · Rodrigo Mora · 43' · No goal · 7 m · 0.12 xG Roma · Evan Ndicka · 44' · No goal · 7 m · 0.12 xG Roma · Paulo Dybala · 87' · No goal · 11 m · 0.12 xG Roma · Santiago Castro · 88' · No goal · 9 m · 0.11 xG Roma · Santiago Castro · 90' · No goal · 18 m · 0.10 xG Roma · Bryan Cristante · 21' · No goal · 8 m · 0.09 xG Roma · Rodrigo Mora · 24' · No goal · 24 m · 0.08 xG Roma · Manu Koné · 42' · No goal · 18 m · 0.08 xG Atalanta · Éderson · 47' · Goal · 13 m · 0.08 xG Roma · Manu Koné · 54' · No goal · 18 m · 0.08 xG Roma · Matías Soulé · 71' · No goal · 9 m · 0.08 xG Roma · Paulo Dybala · 90' · No goal · 8 m · 0.08 xG Roma · Rodrigo Mora · 38' · No goal · 10 m · 0.07 xG Roma · Santiago Castro · 64' · No goal · 9 m · 0.07 xG Roma · Bryan Cristante · 75' · No goal · 10 m · 0.07 xG Roma · Mario Hermoso · 89' · Goal · 8 m · 0.07 xG Roma · Gianluca Mancini · 21' · No goal · 11 m · 0.06 xG Atalanta · Gianluca Scamacca · 32' · No goal · 14 m · 0.06 xG Roma · Donyell Malen · 40' · No goal · 6 m · 0.05 xG Atalanta · Charles De Ketelaere · 60' · No goal · 16 m · 0.05 xG Roma · Bryan Cristante · 81' · No goal · 8 m · 0.05 xG Roma · Rodrigo Mora · 27' · No goal · 18 m · 0.04 xG Roma · Matías Soulé · 62' · No goal · 19 m · 0.04 xG Roma · Matías Soulé · 71' · No goal · 15 m · 0.04 xG Atalanta · Odilon Kossounou · 51' · No goal · 10 m · 0.03 xG Roma · Bryan Cristante · 62' · No goal · 20 m · 0.03 xG Roma · Paulo Dybala · 72' · No goal · 12 m · 0.03 xG Roma · Matías Soulé · 78' · No goal · 19 m · 0.03 xG Roma · Matías Soulé · 87' · No goal · 25 m · 0.03 xG Roma · Manu Koné · 17' · No goal · 22 m · 0.02 xG Roma · Rodrigo Mora · 29' · No goal · 25 m · 0.02 xG Roma · Matías Soulé · 90' · Goal · 7 m · 0.02 xG Roma · Donyell Malen · 15' · No goal · 13 m · 0.01 xG Roma · Donyell Malen · 18' · No goal · 11 m · 0.01 xG Roma · Manu Koné · 27' · No goal · 24 m · 0.01 xG

All shots

45 shots · 3.99 xG

Hover, focus or tap a shot to read it.

  • Roma
  • Atalanta
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
Roma

2.63 xG created 0.59 xGA

  • W 2.24 created, 0.14 conceded against Fiorentina
  • W 2.62 created, 0.73 conceded against Parma
  • W 1.19 created, 0.69 conceded against Lazio
  • W 3.39 created, 0.84 conceded against Hellas Verona
  • W 3.07 created, 0.35 conceded against Fiorentina
  • W 3.27 created, 0.80 conceded against Lecce
Atalanta

1.09 xG created 1.34 xGA

  • D 1.96 created, 0.52 conceded against Genoa
  • W 1.38 created, 2.21 conceded against Milan
  • L 0.76 created, 0.69 conceded against Bologna
  • D 1.38 created, 0.85 conceded against Fiorentina
  • W 0.88 created, 2.70 conceded against Sassuolo
  • W 0.15 created, 1.05 conceded against Bologna

xG created xG conceded (xGA) W / D / L: the match result

Head to head

Roma: 0 won · 1 drawn · 1 lost

Pre-match model & market record

2 opportunities flagged0 won2 lost

  • Lost
  • Lost
View pre-match record
The outcomes the model flagged on Roma against Atalanta before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
Draw 4.00 +12.5% Lost
Under 2.5 goals 2.20 +12.4% Lost

Pre-match model vs market

Outcome Model Market Difference Fair odds
Roma 54.5% 56.6% −2.1 pp 1.84
Draw 28.1% 23.6% +4.5 pp 3.56
Atalanta 17.4% 19.9% −2.5 pp 5.75

Other markets

Outcome Model Market Difference Fair odds
Roma to score 83.7% 82.8% +0.9 pp 1.19
Roma not to score 16.3% 17.2% −0.9 pp 6.13
Atalanta to score 62.8% 60.8% +2.0 pp 1.59
Atalanta not to score 37.2% 39.2% −2.0 pp 2.69
Both teams to score 54.2% 54.7% −0.5 pp 1.85
Both teams not to score 45.8% 45.3% +0.5 pp 2.18
Roma 2+ goals 51.5% 51.5% +0.1 pp 1.94
Roma at most 1 goal 48.5% 48.5% −0.1 pp 2.06
Atalanta 2+ goals 22.8% 25.0% −2.2 pp 4.39
Atalanta at most 1 goal 77.2% 75.0% +2.2 pp 1.29
Over 1.5 goals 77.1% 78.0% −0.9 pp 1.30
Under 1.5 goals 22.9% 22.0% +0.9 pp 4.37
Over 2.5 goals 48.9% 56.9% −8.0 pp 2.04
Under 2.5 goals 51.1% 43.1% +8.0 pp 1.96

Prices and probabilities are the ones stored before kick-off; nothing here is recalculated. Edge is the model's probability times the price, minus one, so a flagged outcome that lost is the ordinary case rather than a contradiction.

Model details

Show
Fit window
the last 20 matches, recency weighted (a match 107 days old counts half)
Roma sample
20 matches
Atalanta sample
20 matches
Computed
5 hours before kick-off
Prices taken
5 hours before kick-off

Limitations

The model reads expected goals and nothing else. It does not know the lineups, who is injured or suspended, what either side has to play for, the weather, or how congested the schedule around this match is.