xgEdge

Expected goals

Cagliari expected goals (xG) 2026/2027

Serie A · after 5 matches · updated 1 Oct

Cagliari's attacking and defensive expected goals in Serie A 2026/2027, compared with the results they produced and with the rest of the competition.

Cagliari xG and xGA per match

Every match ↓
Attack
1.09 xG per match
#15/20
Attack (xG per match) across Serie A, best first
Rank Club xG per match
#1 Inter 2.90
#2 Roma 2.56
#3 Como 1.89
#4 Monza 1.79
#5 Sassuolo 1.73
#6 Fiorentina 1.72
#7 Milan 1.58
#8 Juventus 1.55
#9 Lazio 1.55
#10 Frosinone 1.51
#11 Venezia 1.49
#12 Napoli 1.44
#13 Udinese 1.40
#14 Bologna 1.18
#15 Cagliari 1.09
#16 Lecce 1.06
#17 Torino 1.03
#18 Genoa 0.89
#19 Atalanta 0.81
#20 Parma 0.68
League avg
1.49
Total
5.47 5 matches
Defence
1.76 xGA per match
#15/20
Defence (xGA per match) across Serie A, best first
Rank Club xGA per match
#1 Juventus 0.48
#2 Bologna 0.95
#3 Monza 1.06
#4 Roma 1.11
#5 Milan 1.18
#6 Lazio 1.24
=7 Genoa 1.33
=7 Sassuolo 1.33
#9 Fiorentina 1.33
#10 Inter 1.34
#11 Napoli 1.40
#12 Como 1.53
#13 Parma 1.58
#14 Torino 1.69
#15 Cagliari 1.76
#16 Udinese 1.84
#17 Atalanta 1.87
#18 Frosinone 2.10
#19 Venezia 2.35
#20 Lecce 2.38
League avg
1.49
Total
8.79 5 matches
xG difference
-0.66 xGD per match
#16/20
xG difference (xGD per match) across Serie A, best first
Rank Club xGD per match
#1 Inter +1.55
#2 Roma +1.45
#3 Juventus +1.07
#4 Monza +0.73
#5 Sassuolo +0.41
#6 Milan +0.40
#7 Fiorentina +0.39
#8 Como +0.36
#9 Lazio +0.30
#10 Bologna +0.24
#11 Napoli +0.03
=12 Genoa -0.44
=12 Udinese -0.44
#14 Frosinone -0.59
#15 Torino -0.66
#16 Cagliari -0.66
#17 Venezia -0.87
#18 Parma -0.90
#19 Atalanta -1.06
#20 Lecce -1.32
League avg
0.00
Total
-3.32 5 matches
Expected points Model — Model output — computed from each match's xG, not a result. How xPts works →
1.11 xPts per match
#13/20
Expected points (xPts per match) across Serie A, best first
Rank Club xPts per match
#1 Roma 2.23
#2 Juventus 2.23
#3 Inter 2.21
#4 Monza 1.89
#5 Fiorentina 1.69
#6 Milan 1.63
#7 Sassuolo 1.63
#8 Lazio 1.62
#9 Como 1.60
#10 Bologna 1.55
#11 Napoli 1.50
#12 Udinese 1.13
#13 Cagliari 1.11
#14 Genoa 1.00
#15 Frosinone 0.98
#16 Venezia 0.93
#17 Torino 0.88
#18 Parma 0.70
#19 Atalanta 0.67
#20 Lecce 0.60
League avg
1.39
Total
5.54 vs 12 actual pts

Early-season figures: after 5 matches, per-match rates can move quickly.

What the xG says

Cagliari's underlying numbers are among the weakest in Serie A. They rank #16 for xG difference at -0.66 per match, from low shot volume and low chance quality. Their 5 goals are 0.47 below 5.47 xG, while 12 points are 6.46 above 5.54 xPts. After only 5 matches, those gaps should still be read cautiously.

Actual vs expected

Measure Actual Expected Difference Reading
Goals vs xG Includes 1.23 xG from penalties
5 5.47 -0.47 scored 0.47 fewer than xG within normal variance
2 8.79 -6.79 conceded 6.79 fewer than xGA far outside normal variance

Select a row to chart it across the season.

Goals minus xG, match by match

Cagliari are 0.47 goals below their xG after 5 matches. The gap was widest at -1.03, against Lecce on Mon 07/09.

Goals
5
xG
5.47
Gap
-0.47
Sat 22/08 Sun 30/08 Mon 07/09 Sat 12/09 Sat 19/09 -2 -1 0 +1 +0.06 -0.42 -1.03 -0.35 -0.47 +0.06 -0.48 -0.61 +0.68 -0.12 Running gap goals − xG Each match goals − xG
Cagliari: Goals vs xG, the gap after every match with xG
Date Opponent Goals xG Match gap Running gap
Sat 22/08 Parma 1 0.94 +0.06 +0.06
Sun 30/08 Inter 0 0.48 -0.48 -0.42
Mon 07/09 Lecce 1 1.61 -0.61 -1.03
Sat 12/09 Atalanta 2 1.32 +0.68 -0.35
Sat 19/09 Udinese 1 1.12 -0.12 -0.47

Goals vs xG ranking → Expected points ranking →

Cagliari xG trend

Current form -0.83 npxGD per match

All 5 matches with xG so far — the window fills at 6.

Out-created the opponent in 2 of 5 matches. The worst was against Inter on Sun 30/08 (-3.45).

npxG · last 5
0.85
npxGA · last 5
1.68
-4 -3 -2 -1 0 +1 +0.11 Sat 22/08 -3.45 Sun 30/08 +0.95 Mon 07/09 -0.95 Sat 12/09 -0.82 Sat 19/09 -0.83 season avg
Cagliari: non-penalty xG, xGA and their difference in each match, with the season's average so far
Date Opponent npxG npxGA npxGD Avg so far
Sat 22/08 Parma 1.00 0.89 +0.11 +0.11
Sun 30/08 Inter 0.45 3.90 -3.45 -1.67
Mon 07/09 Lecce 1.36 0.41 +0.95 -0.80
Sat 12/09 Atalanta 0.31 1.26 -0.95 -0.84
Sat 19/09 Udinese 1.12 1.94 -0.82 -0.83

Each bar is one match's non-penalty xG minus the non-penalty xG against; the line is that difference averaged over the season up to each match, and it finishes on the dashed season average — 0.85 npxG and 1.68 npxGA per match. Current form is the same difference over the last 6 matches with xG.

Form ranking →

Strength of schedule

Season so far
number 16 hardest of 20 in Serie A
−0.13 xG vs league average
Over 5 league matches
Opponents behind the figures

Season so far

−0.13 xG vs league average · over 5 matches · number 16 hardest of 20

  1. Udinese Away −0.26
  2. Atalanta Away −0.06
  3. Lecce Home −0.58
  4. Inter Home +0.75
  5. Parma Away −0.53

League schedule strength → How this is calculated →

Cagliari shots and chance quality

Low volume, low quality. Cagliari take 10.8 shots a match (league 14.6) at 0.08 npxG a shot (league 0.10), #17 in Serie A for volume and #18 for quality. 59% of their shots come from inside the box (league 66%), and set pieces produce 27% of their npxG (league 24%).

Attack

Shot volume
10.8 shots per match
#17/20
Shot volume (shots per match) across Serie A, best first
Rank Club shots per match
#1 Como 23.4
#2 Inter 23.2
#3 Roma 20.6
#4 Juventus 17.6
#5 Sassuolo 17.2
=6 Fiorentina 16.8
=6 Frosinone 16.8
#8 Monza 14.4
#9 Udinese 14.2
#10 Venezia 14.0
#11 Napoli 13.8
#12 Bologna 13.4
=13 Lazio 12.8
=13 Milan 12.8
=15 Atalanta 11.8
=15 Genoa 11.8
#17 Cagliari 10.8
#18 Torino 9.4
#19 Lecce 8.4
#20 Parma 8.2
League avg
14.6
Total
54 shots from 5 matches
Chance quality
0.08 npxG per shot
#18/20
Chance quality (npxG per shot) across Serie A, best first
Rank Club npxG per shot
#1 Roma 0.13
#2 Inter 0.12
#3 Monza 0.11
#4 Napoli 0.11
#5 Lecce 0.11
#6 Milan 0.11
#7 Lazio 0.11
#8 Venezia 0.10
#9 Fiorentina 0.10
#10 Torino 0.09
#11 Sassuolo 0.09
#12 Bologna 0.09
#13 Juventus 0.09
#14 Udinese 0.09
#15 Frosinone 0.09
#16 Como 0.08
#17 Parma 0.08
#18 Cagliari 0.08
#19 Genoa 0.06
#20 Atalanta 0.06
League avg
0.10
Total
4.24 npxG from 54 shots

Defence

Shots allowed
20.4 shots per match
#19/20
Shots allowed (shots per match) across Serie A, best first
Rank Club shots per match
#1 Juventus 7.8
#2 Milan 9.0
#3 Roma 9.2
#4 Inter 11.4
=5 Bologna 11.8
=5 Fiorentina 11.8
=5 Monza 11.8
#8 Lazio 13.0
#9 Venezia 14.4
#10 Como 15.0
#11 Torino 15.4
=12 Genoa 15.8
=12 Sassuolo 15.8
=14 Lecce 16.6
=14 Napoli 16.6
#16 Udinese 17.2
#17 Parma 18.4
#18 Atalanta 19.2
#19 Cagliari 20.4
#20 Frosinone 20.8
League avg
14.6
Total
102 shots allowed from 5 matches
Chance quality allowed
0.08 npxGA per shot
#5/20
Chance quality allowed (npxGA per shot) across Serie A, best first
Rank Club npxGA per shot
#1 Juventus 0.06
#2 Sassuolo 0.07
#3 Napoli 0.07
#4 Genoa 0.08
#5 Cagliari 0.08
#6 Bologna 0.08
#7 Lazio 0.08
#8 Frosinone 0.09
#9 Torino 0.09
#10 Como 0.09
#11 Monza 0.09
#12 Parma 0.09
#13 Atalanta 0.09
#14 Udinese 0.11
#15 Roma 0.11
#16 Inter 0.11
#17 Fiorentina 0.11
#18 Milan 0.13
#19 Lecce 0.14
#20 Venezia 0.15
League avg
0.10
Total
8.40 npxGA from 102 shots

Shot profile

Shot location

59% inside the box

League avg 66%

From 32 of 54 shots over 5 matches

Early-season figure: after 5 matches, the share can move quickly.

Shots allowed, location

65% allowed inside the box

League avg 66%

From 66 of 102 shots allowed over 5 matches

Early-season figure: after 5 matches, the share can move quickly.

Where the npxG comes from

73% open play · 27% set pieces

League avg 24% set pieces

From 1.2 of 4.3 npxG over 5 matches

Early-season figure: after 5 matches, the share can move quickly.

Where the npxG allowed comes from

71% open play · 29% set pieces

League avg 24% set pieces

From 2.4 of 8.3 npxG allowed over 5 matches

Early-season figure: after 5 matches, the share can move quickly.

Cagliari home and away xG

Cagliari per-match figures at home and away
Measure Home only 2 matches with xG Away
Matches 2 3
xG / match 1.05 1.13
xGA / match 2.09 1.54
xGD / match -1.04 -0.41
xPts / match Model — Model output — computed from each match's xG, not a result. How xPts works → 1.17 1.07

Every figure divides by that half's matches with xG. A half with fewer than 3 matches with xG is muted.

Every Cagliari match by xG

Window
Season Last 10 Last 5
Venue

Newest first. The dot is xG and the ring is xGA, on one scale from 0 to 3.00. Best and weakest underlying mark the highest and lowest xGD once 5 matches have xG. Against the chances marks a win with xGD of −1.00 or lower, or a loss with +1.00 or higher. P marks a side with at least 0.50 xG from penalties.

Every result, all competitions →

Cagliari in Serie A

Attack

Defence

About the data

xG data
Provided by TheStatsAPI, and stored as published.
Derived metrics
xGD, per-match rates, rankings and rolling averages are calculated from the match data.
Model metrics
xPts is produced by our probability model.

Learn how our xG analytics work →

How the model works →