Sixyard logo

AC Milan's Surprising Loss to Cagliari: A Season Finale Analysis

Under the grey Milanese sky, the final whistle at Stadio Giuseppe Meazza sealed a result that felt like a plot twist rather than a routine closing chapter. AC Milan, Europa League–bound and finishing 5th on 70 points, fell 1-2 at home to a Cagliari side that wrapped up their campaign in 14th with 43 points. Following this result, the numbers tell a story of a season’s worth of habits distilled into 90 minutes.

Milan’s seasonal DNA was clear even here: a side that, overall, scored 53 and conceded 35 in 38 matches, built on control, a back three, and late surges. Their goal difference of 18 reflected a team usually in command. At home they had been solid if not ruthless, with 25 goals for and 21 against across 19 games, averaging 1.3 goals scored and 1.1 conceded at San Siro. Cagliari, by contrast, arrived as classic survivors: 40 scored, 53 conceded overall, a goal difference of -13, and a notably fragile away record with 18 goals for and 30 against in 19 trips, conceding an average of 1.6 away.

Yet on the final day, Fabio Pisacane’s men bent those trends without breaking their identity. Lining up in a mirrored 3-5-2, they turned Milan’s structure against them, matching lines, compressing zones, and trusting their wing-backs and midfield to survive long spells without the ball.

Tactical Voids and Selection Choices

For Cagliari, the absences were significant and structural. The list of players missing the fixture — M. Folorunsho (muscle injury), R. Idrissi (knee injury), S. Kilicsoy (personal reasons), J. Liteta (thigh injury), and L. Pavoletti (knee injury) — stripped Pisacane of different profiles across the pitch. The loss of Pavoletti in particular removed a classic penalty-box reference, forcing Cagliari to double down on mobility and combination play with G. Borrelli and S. Esposito up front.

That context made the starting XI even more revealing. Esposito, listed as a forward here but the team’s top assist provider in Serie A with 5 assists and 7 goals, became the hybrid spearhead: part runner, part creator, part outlet. Behind him, G. Gaetano and M. Adopo were tasked with bridging midfield and attack, while A. Obert — one of the league’s most card-prone defenders with 9 yellows and 1 yellow-red — patrolled the left side of the five, balancing aggression with discipline.

On the Milan side, Massimiliano Allegri stayed faithful to the season’s main blueprint. The 3-5-2 that had started 34 league games returned: M. Maignan behind a back three of S. Pavlovic, M. Gabbia, and F. Tomori; a midfield line of A. Saelemaekers, Y. Fofana, A. Jashari, A. Rabiot, and D. Bartesaghi; with S. Gimenez and C. Nkunku up front. The bench, however, hinted at latent firepower: Rafael Leão, Christian Pulisic, N. Fullkrug, and P. Estupiñán all waited as potential game-changers.

Disciplinary trends framed the risk profile. Across the season, Milan had shown a late spike in yellows, with 25.00% of their cautions arriving between 76-90 minutes. Cagliari were similar but even more volatile: 27.16% of their yellow cards came in that same late window, and all of their red cards (2) were shown between 76-90. This match, tense and finely poised, always threatened to tilt on a rash challenge or a moment of fatigue-induced panic.

Key Matchups: Hunter vs Shield

The “Hunter vs Shield” narrative sat on two axes: Milan’s attacking timing versus Cagliari’s defensive frailties, and Cagliari’s creative hub versus Milan’s compact block.

Heading into this game, Milan’s goals were heavily backloaded. Overall, 25.93% of their goals came in the 76-90 minute range, with another 24.07% between 46-60. They were a side that grew into matches, often overwhelming tiring opponents. Cagliari’s defensive minute distribution, though, exposed a very specific weakness: 26.42% of their goals conceded came between 76-90 minutes, their single most vulnerable phase, with 18.87% conceded between 46-60. On paper, the final half-hour was Milan’s hunting ground and Cagliari’s danger zone.

Instead, Cagliari found ways to disrupt the rhythm before that pattern could fully assert itself. The back three of J. Pedro, Y. Mina, and J. Rodriguez stayed narrow, forcing Milan’s forwards away from central zones and asking the wing-backs — G. Zappa and Obert — to live on the edge in one-v-one duels. Mina’s aerial presence and reading of crosses, combined with Obert’s willingness to step into midfield, blunted Milan’s attempts to flood the half-spaces.

On the other side of the ball, the “engine room” duel revolved around Esposito and Gaetano against Milan’s central triangle of Fofana, Jashari, and Rabiot. Esposito’s Serie A profile — 1003 total passes, 71 key passes, and 312 duels contested — underlined his role as Cagliari’s connective tissue. Here, he repeatedly dropped into pockets between Milan’s lines, dragging one of the centre-backs or a pivot out of position and creating space for Borrelli to attack.

Rabiot and Fofana tried to compress that space, stepping high to cut off passing lanes into Esposito. But Cagliari’s willingness to play long to Borrelli, then swarm the second ball with Adopo and Gaetano, prevented Milan from fully locking the game into the home side’s preferred, controlled tempo.

Statistical Prognosis and xG Lens

Across the season, the macro metrics still lean Milan’s way. Overall, they averaged 1.4 goals scored and 0.9 conceded per match, with 15 clean sheets and only 7 games where they failed to score. Cagliari, by contrast, averaged 1.1 goals scored and 1.4 conceded, with 14 games where they did not score at all. Milan’s penalty record was flawless — 7 scored from 7, 100.00% — while Cagliari’s 2 from 2 maintained their own perfect, if smaller, sample.

From an Expected Goals perspective, this match likely saw Milan generate a higher xG through volume and territory, especially given their historical tendency to create in waves between 31-45 (22.22% of their goals) and 46-60 (24.07%). Cagliari’s away profile — only 0.9 goals scored on their travels on average — suggests their xG was more concentrated in a few high-quality moments rather than sustained pressure.

But football’s knife-edge lies in those late-game margins. The very window where Milan usually surge and Cagliari usually crumble became, in this fixture, a test of mentality as much as structure. Cagliari’s back line held its nerve in the 76-90 corridor that had cost them 14 goals over the season, while Milan, chasing, could not convert pressure into the kind of clear-cut chances that move xG and scoreboards together.

Following this result, the narrative is double-edged. Milan close a strong season with a reminder that even a team with a positive goal difference of 18, a stable 3-5-2, and elite late-game scoring habits can be undone by a disciplined, well-prepared mid-table side. Cagliari, meanwhile, sign off having bent their own numbers, turning an away campaign defined by 30 goals conceded into one final, defiant act of resistance in Milan.