AC Milan have been a real rollercoaster over the past decade or so, but how much do the results on field correlate with one of the most divisive stats in football, Expected Goals?
First of all, we all know that actual goals are better than Expected Goals, but what exactly is the latter? Expected Goals (xG) measures the quality of a chance by calculating the likelihood that it will be scored by using information on similar shots in the past.
As StatsPerform write, Expected Goals is ‘typically a more consistent measure of performance than actual goals’. Goals are relatively rare events that can come in bursts from just a few chances and disappear for weeks despite a bombardment of the opposition’s net.
A team or player’s xG output tends to fluctuate much less from match-to-match, and they judge the quality of scoring chances, from which the team’s attacking threat can be deduced alongside other margins.
To cite a few individual examples from this season, Sunday’s game against Napoli had the home team at a 1.81 xG and Milan at 2.13, so not far off the eventual 2-2 scoreline.
On the other hand, the 3-0 defeat against PSG in the Champions League the game before was achieved with 1.02 xG for the Ligue 1 champions and 0.63 for the Rossoneri, leaving quite a bit of disparity.
The Dortmund away game was 0.99-1.42 suggesting both sides should have probably scored (it ended 0-0), while the 2.14 to 0.47 from the San Siro game against Lazio demonstrates how comfortable Stefano Pioli’s side were.
Looking at individual games is one thing and there can still be big fluctuations in xG, but how does it look across a trend of a few years? We will refer to the graphic below, put together by our writer ScoutCalcio.
The 2017-18 season was a chaotic one to say the least, with over €200m spent by new owner Yonghong Li in the summer before and pressure on Vincenzo Montella to make it work on the field.
A 3-0 win against Crotone and 2-1 victory against Cagliari show things started well, but defeats against Lazio, Sampdoria, Roma, Inter, Juventus and Napoli (three goals scored across those six games) reflect the sharp decline shown in the graph.
Then from the new year through to mid-March there was a resurgence in which the Rossoneri won eight out of nine games, but then a winless run of six games with three goals scored – starting with a 3-1 loss to Juve and ending with a 1-0 defeat to Benevento – once again reflect the sharp xG drop.
Gattuso took the helm and Milan were quite entertaining to begin the season, scoring four goals once, three goals twice and two goals four times in their first 10 games.
However, a tough run in December saw the Diavolo go four games without a gaol in the league as the attacking flair completely dropped, though that was to provoke another new year revival.
Milan won seven of nine games and returned to their free-scoring former selves, then a run of four defeats in seven (against Inter, Sampdoria, Juventus and Torino) is where we see the xG drop below the xGA (Expected Goals Against) for the first prolonged stretch.
In the end four wins in a row to close out the season would not be enough to secure a Champions League return, resulting in Gattuso leaving.
Pioli’s work begins
The less said about Marco Giampaolo’s ill-fated nine-game spell at the start of the 2019-20 campaign the better, though it is worth noting that Milan’s xG constantly rose throughout that small sample size (from 1.0 to 1.5ish) and was always ahead of the xGA.
Pioli arrived, and after some initial difficulties such as draws against Lecce plus defeats to Lazio and Juventus, the fun started to begin. It is from the behind-closed-doors 2-1 defeat to Genoa that the mountain started to form.
From beating Lecce 4-1 on 22 June 2020, Milan scored 35 goals in 12 games – netting at least four goals on four occasions – and the xG climbing above two per game shows it.
The graph demonstrates that Milan have been at their best in the six full seasons documented that the first third of the 2020-21 season is when the team were at their most creative from an attacking standpoint.
The results show it too, as Milan won 11 of their first 15 games and went unbeaten. In there were was a 3-0 win against Spezia, 2-0 wins over Bologna, Crotone, Fiorentina and Benevento, a 3-1 victory over Napoli and at least two goals per game scored in each.
When the injuries began to pile up and the team could no longer sustain the very intense press-and-counter style, the xG took a downturn in line with results. Milan lost 3-0 to Atalanta, 2-0 to Spezia, 3-0 to Inter, 1-0 to Napoli, 2-1 to Sassuolo and 3-0 to Lazio as the Scudetto bid disappeared.
In that period the xGA grew as the xG was declining, to the extent that there was a minimal gap between the two – i.e. the team were not dominating games like they had done before. The rapid climb right at the end was thanks to the 3-0 and 7-0 wins against Juve and Torino respectively.
The Scudetto season actually follows a remarkably similar trend to the season prior: start well, struggle in the middle and finish strong.
Milan won 10 of the first 11 games, scoring four goals twice, three goals twice and twice four times. The sharp dip in the middle of the season was when the wobble happened, with defeats against Fiorentina, Sassuolo, Napoli and Spezia.
The graph shows that Milan were – unlike the previous campaign – able to resurge and re-establish the gap between xG and xGA. They scraped 1-0 wins against Sampdoria, Napoli, Empoli, Cagliari and Fiorentina, but they got over the line.
The saying often goes that a defensive solidity is what wins titles and the huge drop in xGA made it much easier to win games. The Rossoneri conceded two in 11 games to end the season, winning nine of those games.
The 2022-23 season followed the exact same trend as the previous two: start like a house on fire, suffer a sharp drop in the middle, then recover just enough to reach an objective.
The first 11 games saw Milan score four against Udinese and Monza, three against Inter and Empoli and twice against Bologna, Sampdoria, Juventus and Verona. They were around 1.8 to 1.6 xG throughout, with the xGA well below.
As was well documented, the January crisis derailed the Scudetto defence bid as Napoli stormed away. Draws to Roma and Lecce (both 2-2) were followed by a 4-0 loss to Lazio, 5-2 to Sassuolo and 1-0 to Inter.
Milan also suffered a run of two wins in nine games from the start of March to the end of April, with the big spike marking that remarkable 4-0 against champions-elect Napoli at the Maradona.
What does this season tell us? Pioli’s side have maintained a gap of around 0.5 between the xG and xGA numbers.
The team have not hit the dizzy Expected Goal heights of the post-lockdown period, but they appear to be creating more than their opponents consistently, something reflected in the fact they won eight of their first nine.
While the xG can fluctuate from game to game in line with actual goals and the team’s performances more generally, the trend over Pioli’s tenure does show a consistent theme. Milan always seem to start very strongly and they are able to maintain that pace for one-third to half of the season.
However, injury crises have been a plague at around the same point in each of the last three campaigns and it results in various things which impact attacking and defensive capabilities, such as starters being missing or forced to work overtime, less ability to rotate and players being used out of position.
One of the ways to achieve success in football over a prolonged period is to control the variables. Milan have been a Jekyll and Hyde team through Pioli’s 201 games in charge, now we must see if the latest system – the 4-3-3 – has brought about the right balance to bring home trophies.