AC Milan vs Atalanta: Tactical Breakdown of 3-2 Defeat
AC Milan’s 3-2 home defeat to Atalanta at San Siro was shaped less by volume of play and more by structural fragilities in the early phases. Massimiliano Allegri’s 3-5-2 had territorial and statistical control – 57% possession, 20 shots and 541 passes – but Raffaele Palladino’s 3-4-2-1 was sharper in exploiting space and game state, racing to a 3-0 lead and then managing the chaos as Milan’s late surge arrived too late.
I. Scoring sequence and disciplinary log
All goals (home first in scoreline, chronologically):
- 7' Ederson (Atalanta) — no assist. Early central break, punishing Milan’s loose midfield coverage.
- 29' Davide Zappacosta (Atalanta) — assisted by Nikola Krstovic. Wide overload down Milan’s right converted into a 0-2 lead.
- 51' Giacomo Raspadori (Atalanta) — assisted by Ederson. Transition strike for 0-3 that effectively defined the match’s tactical landscape.
- 88' Strahinja Pavlovic (AC Milan) — assisted by Samuele Ricci. Set-piece or second-phase presence from the left centre-back for 1-3.
- 90' Christopher Nkunku (AC Milan) — penalty, no assist. Late conversion for 2-3, narrowing the margin but not altering the outcome.
Cards (exact totals: AC Milan 4, Atalanta 3, Total 7), in strict chronological order:
- 34' Rafael Leão (AC Milan) — Foul
- 70' Isak Hien (Atalanta) — Argument
- 89' Adrien Rabiot (AC Milan) — Argument
- 89' Pervis Estupiñán (AC Milan) — Foul
- 90' Alexis Saelemaekers (AC Milan) — Argument
- 90+5' Nikola Krstović (Atalanta) — Time wasting
- 90+6' Raoul Bellanova (Atalanta) — Foul
II. Tactical breakdown and personnel
Allegri’s 3-5-2: Maignan behind a back three of Koni De Winter, Matteo Gabbia and Strahinja Pavlovic, with Alexis Saelemaekers and Davide Bartesaghi as wing-backs, a central trio of Ruben Loftus-Cheek, Samuele Ricci and Adrien Rabiot, and a front two of Santiago Gimenez and Rafael Leão. The idea was clear: use the extra centre-back to control Atalanta’s single striker, free wing-backs high, and let Leão attack space off a reference 9.
The problem was the early vertical compactness. Atalanta’s 3-4-2-1 – Giorgio Scalvini, Isak Hien and Sead Kolasinac as the back three, Davide Zappacosta and Nicola Zalewski wide, Marten De Roon and Ederson inside, with Charles De Ketelaere and Giacomo Raspadori behind Nikola Krstovic – consistently found pockets between Milan’s midfield and defence. Ederson’s 7th-minute opener came from exactly that zone: Milan’s central three were too flat and reactive, with Ricci often left covering too much width as Loftus-Cheek and Rabiot stepped out late.
On Milan’s right, Saelemaekers was pinned by Zalewski and Zappacosta’s joint pressure. The 29' goal from Zappacosta, assisted by Krstovic, exposed the weak side of the 3-5-2: when the wing-back is high and the outside centre-back is dragged out, the channel behind opens. De Winter and Saelemaekers never fully synchronized their pressing and covering cues, leaving Maignan exposed to a clean, low-percentage but high-value chance.
At 0-2 by half-time, Allegri reacted immediately. On 46', Christopher Nkunku (IN) came on for Ruben Loftus-Cheek (OUT), shifting Milan into a more aggressive, quasi 3-4-1-2/3-4-3. Nkunku operated between the lines, with Leão and Gimenez higher. However, the structural risk increased: with one fewer true midfielder, Milan’s rest defence became even more vulnerable to Atalanta’s vertical breaks.
Palladino responded with a like-for-like defensive adjustment at 48': Odilon Kossounou (IN) came on for Scalvini (OUT), adding fresh legs and physicality on the right side of the back three. The 51' goal by Raspadori, assisted by Ederson, was the purest expression of Atalanta’s game plan: win the ball, break quickly into the spaces left by Milan’s advanced wing-backs and stretched midfield, and finish clinically. At 0-3, Atalanta could sink into a mid-low block, protecting the box and playing the clock.
Substitution waves around the hour mark defined the final phase. At 55', Raoul Bellanova (IN) replaced Zappacosta (OUT), adding recovery speed against Leão’s flank. At 58', Allegri executed a triple change to chase the game and re-energize the front line and right side of defence:
- Z. Athekame (IN) came on for Koni De Winter (OUT)
- Niclas Füllkrug (IN) came on for Santiago Gimenez (OUT)
- Youssouf Fofana (IN) came on for Rafael Leão (OUT)
This reshaped Milan into a more direct, physically oriented attacking unit, with Füllkrug as a penalty-box focal point and Fofana adding late runs and ball-carrying from midfield. Defensively, though, it further destabilized the original structure, forcing Ricci and Rabiot into more aggressive, risk-heavy positions.
Atalanta’s bench management was equally calculated. At 63', H. Ahanor (IN) entered the pitch, and Mario Pasalic (IN) came on for Charles De Ketelaere (OUT), giving Palladino fresh legs in the half-spaces and another midfielder capable of holding possession. The 70' yellow for Hien (Argument) illustrated Atalanta’s growing emphasis on game management and duels rather than expansive play.
Milan’s final throw came on 80' when Pervis Estupiñán (IN) replaced Davide Bartesaghi (OUT). Estupiñán immediately offered more aggressive overlapping and crossing threat from the left. The 88' goal – Pavlovic heading or finishing after a Samuele Ricci delivery – came from sustained pressure and superior numbers in Atalanta’s box, with the left centre-back stepping into advanced zones as Atalanta retreated deeper.
The late disciplinary sequence – Rabiot (Argument), Estupiñán (Foul), Saelemaekers (Argument) between 89' and 90', followed by Krstović (Time wasting, 90+5') and Bellanova (Foul, 90+6') – reflected a match that had tilted into emotional and temporal management. Atalanta were content to disrupt rhythm; Milan were desperate to accelerate it.
Nkunku’s 90' penalty for 2-3 rewarded Milan’s territorial dominance but underlined the core tactical truth: they needed a spot-kick and a set-piece to breach an Atalanta side that had already inflicted decisive damage in open play.
III. The statistical verdict
The underlying numbers reinforce the tactical story. Milan’s 1.94 xG from 20 shots versus Atalanta’s 1.08 xG from 9 attempts show a home side that accumulated volume but not necessarily high-quality open-play chances until late, and an away side that maximized the value of fewer attacks. Milan’s passing structure was clean – 541 passes, 478 accurate (88%) – indicating strong circulation and control in the middle and build-up thirds, but insufficient incision against a compact 5-4-1/5-3-2 Atalanta block after the 3-0.
Atalanta, with 411 passes and 330 accurate (80%), were more direct and pragmatic, especially after going ahead. Their defensive index was underlined by 8 goalkeeper saves from Marco Carnesecchi and 17 fouls, reflecting a willingness to break play and protect central zones. Milan, with only 8 fouls and 4 yellows, tried to keep structure and tempo but lacked early defensive aggression in key spaces.
Both goalkeepers posted 1.1 goals prevented, suggesting that finishing on both sides slightly exceeded the raw xG expectations. Yet the distribution of those chances – Atalanta’s early, vertical strikes versus Milan’s late, pressure-based opportunities – made the 2-3 scoreline feel like a tactical victory for Palladino’s game plan and a structural warning sign for Allegri’s 3-5-2 against dynamic, half-space-heavy opponents.





