Expected goals, or xG, is a number that tells you how likely a shot was to become a goal. Every shot gets a value between 0 and 1, based on similar shots from the past and factors such as distance from goal, angle, body part, the type of pass that created it and whether it came from open play or a set piece. Add up a team’s shots and you get the number of goals its chances were worth. In Serie A, the useful reading comes from setting that figure beside real goals scored and conceded. For me, xG is the best quick tool there is to tell a good team having a bad month from a bad team having a lucky one, and I read it the way I read a match, as a story about chances.
What does xG actually measure?
Opta, the data company behind most of the numbers you see on television and on stats sites, says expected goals “estimates the likelihood that any chance becomes a goal” (Stats Perform). A shot worth 0.10 xG is one that goes in about one time in ten. A penalty, in Opta’s model, is worth 0.76.
The model rates the chance, whoever takes it. Opta weighs up to 20 context factors for each attempt, including distance, angle, assist type, defensive pressure and where the goalkeeper stands. A tap-in from a cut-back might be worth 0.50 and a hopeful strike from 30 yards 0.02. Both count as one shot. That difference is the whole point.
A team’s xG is the sum of every shot it takes. xG against is the same sum for the shots it concedes. xG difference is one minus the other. Over a season, I think xG difference is the clearest single sign of which sides are really controlling games.
Why do different sites give different xG numbers?
Each provider builds its own model. Hudl StatsBomb, Opta’s main rival, adds the position of the goalkeeper and of every attacker and defender in the frame, plus the height of the ball when it is struck. Its own xG explainer shows how a basic model built on distance, angle, body part and assist type might value a shot at 0.30, while a richer model can give the same shot a different number.
WhoScored uses Opta data. FBref carried Opta’s xG too until 20 January 2026, when Stats Perform ended its access to the feeds, so it still shows basic numbers such as goalkeeper saves but no longer updates xG. Pick one source and stay with it. Every Serie A number in this piece comes from WhoScored after Matchday 5 of the 2026/27 season, pulled on 23 September 2026, unless I say otherwise.
How do you read xG for, xG against and xG difference in Serie A?
Start with attack. Inter have scored 15 goals from 14.68 xG. Their finishing is doing exactly what their chances deserve.
Roma are the more interesting case. They have scored 14 from 14.66 xG, and they have allowed only 6.45 xG against. That gives them the best xG difference in the league, about plus 8.2. Three teams sit level on 13 points at the top, and in my analysis of Roma, Inter and Lazio level on 13 points I argued that Roma are the real leaders. xG difference is the reason.
Now look at the bottom. Venezia have 0 points from five matches, yet their chances were worth 9.27 goals and they have scored 4. That is a gap of more than five goals. Venezia’s xG says they are creating enough to compete and failing at the last touch. If that pattern holds, I expect points to follow.
What does xG per shot tell you that shot counts hide?
xG per shot divides a team’s total xG by its number of shots. It measures the average quality of each attempt, and it quickly separates teams that shoot a lot from teams that shoot well.
Como took 117 shots in the first five matchdays, the most in Serie A, for 10.46 xG, or 0.09 per shot. Cesc Fàbregas’s side shoot often, but the average attempt is a low-value one.
Atalanta sit at the far end. Their 59 shots produced 4.09 xG, or 0.07 per shot, the lowest figure in the league. Milan are the opposite. They have taken 64 shots, about half as many as Como, for 9.9 xG. That is 0.15 per shot overall, and at home the figure rises to 0.22.
Why are five matches too small a sample for xG?
Five matches is about 13% of a 38-round season. One missed sitter can move a team’s numbers by a full goal. xG becomes more reliable as shots pile up, and Hudl StatsBomb notes there is always some leftover variance between goals and xG over shorter stretches. My guide to how Serie A works explains how those 38 rounds are spread across the season.
Bologna show why patience matters. They have scored 3 goals from 7.29 xG and allowed only 5.21 xG against, the second-lowest figure in Serie A. Those are the numbers of a sound side, yet Bologna are 18th with 2 points. The lowest xG against belongs to Juventus, with 2.68 from the 39 shots opponents have managed in five matches. I went through the full picture in my xG read on why the Serie A table is lying, and Bologna are the clearest case of a team the table is treating harshly.
What can’t xG see?
xG rates the chance and leaves out the player on the end of it and the goalkeeper facing it. A striker on a hot streak can beat his xG for weeks, and a nervous one can fall short of it. Stats Perform describes standard xG as a pre-shot model, which is why Opta built a separate post-shot measure, expected goals on target, to judge finishing and goalkeeping.
Cagliari are the best example this season. They have allowed chances worth 8.74 goals and conceded just 2, and they are fourth with 12 points. According to FBref, Cagliari’s goalkeepers have saved 90.5% of the shots on target they have faced, against a league average of roughly 70%. That is elite goalkeeping, and I would be surprised to see it hold for a full season. The xG tells me Cagliari are defending less well than their record suggests.
Game state, meaning the score when a chance happens, is the other blind spot. A team that goes 1-0 up often sits deeper and lets the opponent shoot, so its xG against climbs while the result stays safe. The totals do not tell you when the chances came, so I want to know the scoreline around them before I trust the number.
How should you use xG when you watch Serie A?
When a team’s goals and xG line up, like Inter’s, the table is probably telling the truth. When they split, like Venezia’s in attack or Cagliari’s in defence, something else is going on, and the coming weeks will show which way it breaks. Serie A returns on 10 October 2026 after the international break, and that is when these stories get tested.
That is why I read xG the way I read a match, as a story about chances, not a verdict. A good team having a bad month still creates chances and still stops them. A bad team having a lucky one does neither, and xG shows it long before the table does.




