Action from Napoli vs Milan 1-0 at the Stadio Diego Armando Maradona, Serie A 2025-2026 Matchday 31

A bitter Easter Monday for AC Milan. At the Stadio Diego Armando Maradona, on Matchday 31 of Serie A, Antonio Conte's Napoli beat the Rossoneri 1-0 thanks to a Matteo Politano goal in the 79th minute, scored just seconds after coming off the bench. The defeat stings not so much for the result itself — a match decided by a single moment — but for its consequences: Milan drop from second to third place in the Serie A standings and Massimiliano Allegri delivers the verdict no Rossoneri fan wanted to hear: "I think the Scudetto race is over for us". The target now is clear: secure Champions League qualification.

A cagey first half: tactics trump spectacle at the Maradona

The much-anticipated clash between Napoli and Milan, billed as a potential Scudetto showdown, turned out to be a game of chess rather than fireworks. Conte set up in a 3-4-2-1 with a forced change up front: Rasmus Hojlund, ruled out with a stomach bug, was replaced by young Brazilian Giovane as the lone striker, supported by De Bruyne and McTominay. Allegri opted for a compact 3-5-2, pairing Nkunku and Füllkrug in attack while leaving star men Leao and Pulisic on the bench.

The first 45 minutes drifted by without any real drama. Napoli controlled possession — they would end the evening with 60% of the ball — but failed to carve out clear-cut chances. Milan, for their part, defended with discipline but offered virtually nothing in transition. Giovane tested Maignan with a left-footed effort from distance that the French goalkeeper dealt with comfortably. At the other end, Nkunku tried to inject some urgency with a couple of direct runs, but his shot was Milan's only attempt of the half. Pavlovic produced a superb last-ditch intervention to deny Giovane in the box, confirming his status as Milan's best defender on the night. Buongiorno received the first half's only booking in the 12th minute.

The numbers painted a picture of stalemate: plenty of possession for Napoli but few dangerous moments, excellent defensive organisation from Milan but zero creativity going forward. A tactical arm-wrestle in which neither side was willing to take the first risk.

The second half and Politano's 79th-minute winner

The restart brought a slightly more adventurous Napoli. Giovane forced a decent save from Maignan with a well-struck left-footer from outside the area. Allegri made his first changes on 62 minutes: off went Saelemaekers and Füllkrug, on came Athekame and Gimenez in search of greater dynamism and penalty-box threat. Conte responded in the 70th minute, sending on Brazilian forward Alisson for Giovane to freshen up the front line.

On 74 minutes, Allegri played another card: Nkunku made way for Pulisic in an attempt to shift the momentum. But the decisive moment arrived five minutes later. Conte introduced Politano for Spinazzola at the 79th minute, and the Napoli winger needed mere seconds to make his mark.

The goal that decided the match

The move began on the left flank: Olivera whipped in a cross from the left channel, the ball took an unfortunate deflection off De Winter which wrongfooted the Milan back line, and Politano, freshly on the pitch, found the ball at his feet just yards from goal. His angled finish left Maignan with no chance: Napoli 1-0 Milan.

On 82 minutes Allegri threw Leao and Loftus-Cheek into the fray, replacing Fofana and Tomori in a desperate bid for an equaliser. But Milan's attacking play remained toothless, unable to fashion a single clear chance. At the 85th minute Conte sealed the victory by introducing Elmas and Beukema for De Bruyne and Juan Jesus, shutting up shop until referee Doveri blew the final whistle.

Allegri's selection: the 3-5-2 without Leao and Pulisic

The most debated decision of the evening was leaving Milan's two most talented attackers on the bench. Allegri explained his reasoning after the game: "Pulisic only got back from international duty on Friday, Leao had been out for 12 days with injury. Players are not machines that you just switch on and they go". A pragmatic call that prioritised fitness over raw quality, but one that deprived Milan of their most dangerous weapons.

The 3-5-2 provided defensive solidity — Napoli created almost nothing for over 75 minutes — but the lack of imagination and pace in the final third took a heavy toll. Füllkrug looked isolated and never threatened, while Nkunku tried a few solo efforts without success. By the time Allegri introduced his offensive reinforcements, it was already too late to change the momentum.

Allegri's tactical verdict

"It was a match with few chances and whoever got the decisive moment would win it". The coach also hinted at a possible 4-3-3 from the start in upcoming fixtures: "It is a solution we could use, but it always depends on the players' fitness".

Official line-ups and match details

NAPOLI (3-4-2-1): Milinković-Savić; Juan Jesus (85' Beukema), Buongiorno, Olivera; Gutiérrez, Lobotka, Anguissa, Spinazzola (79' Politano); De Bruyne (85' Elmas), McTominay; Giovane (70' Alisson).
Manager: Conte

AC MILAN (3-5-2): Maignan; Tomori (82' Loftus-Cheek), De Winter, Pavlović; Saelemaekers (62' Athekame), Fofana (82' Leão), Modrić, Rabiot, Bartesaghi; Nkunku (74' Pulisic), Füllkrug (62' Gimenez).
Manager: Allegri

Referee: Doveri (VAR: Mariani)
Goal: 79' Politano (N)
Bookings: Buongiorno (N)
Venue: Stadio Diego Armando Maradona, Naples

Milan player ratings

Maignan 6 — no blame for the goal, barely tested otherwise. Alert when called upon.

Tomori 6 — solid and composed on his side, rarely troubled. Replaced at 82' to make room for Loftus-Cheek.

De Winter 5 — assured until the 79th minute, then his clumsy deflection off Olivera's cross cut out the entire defence and gifted Politano the winner. The mistake that cost three points.

Pavlovic 6.5 — the best of the bunch. Commanding, decisive and magnificent in a first-half intervention on Giovane. Won the majority of his aerial and ground duels.

Saelemaekers 5.5 — Spinazzola pinned him back throughout. Offered little going forward, withdrawn at 62'.

Fofana 5.5 — tireless ball-winner as usual, but his positioning was found wanting in the build-up to the goal.

Modric 6 — pure class on the ball in the first half, with exquisite one-touch passing and switches of play. Faded after the break along with the rest of the team.

Rabiot 6 — covered enormous ground and never stopped running. Lacked the final pass to create genuine danger.

Bartesaghi 5.5 — disciplined defensively but too cautious going forward. Never took the risk that might have broken the deadlock.

Nkunku 5.5 — showed flashes of pace that unsettled the Napoli defence, but wasteful in front of goal. More is expected from a player of his calibre.

Füllkrug 5 — the worst performer in a Milan shirt. Isolated, invisible and unable to link with his teammates. A night to forget.

Athekame 6 (from 62') — injected energy and width down the flank. More positive than the man he replaced.

Gimenez 6 (from 62') — lively and involved, went close with a header. Added depth to the attack.

Pulisic 5.5 (from 74') — entered with good intentions but could not change the rhythm. Perhaps introduced too late.

Leao n/r (from 82') — too little time to make an impact.

Loftus-Cheek n/r (from 82') — came on with the game already lost.

Allegri 5.5 — a well-organised and compact team, but the decision to start without Leao and Pulisic stripped Milan of their primary attacking threat. The offensive substitutions came too late to change the course of the match.

Post-match reaction

Allegri spoke candidly after the game. The defining quote of this season was blunt: "I think the Scudetto race is over for us — Inter are 9 points clear and Napoli are second". The Livorno-born tactician added: "Let's think about Udinese, we need to stay calm — we're still on track for our objective".

On the match itself: "You need to be quicker getting your shots away, otherwise opponents recover". A clear warning to his players about the need for greater clinical edge. He also sounded the alarm over the Champions League race: "We need to watch out for Como, Juventus, Roma and Atalanta, who are back in the mix".

Pavlovic, one of the few Rossoneri to emerge with credit, made no attempt to hide his disappointment: "We are really disappointed, we wanted the three points to stay close to Inter". The Serbian centre-back conceded the team's shortcomings: "We were slow and created very little — in the end they scored and we didn't". Then came the pragmatism: "We shouldn't worry about other teams — let's focus on ourselves. Our objective is the Champions League".

An intriguing post-match observation came from journalist Gianluca Di Marzio on Leao's future, after another subdued cameo: "Milan's mindset is to build around him. The club has shown that nobody is unsellable, but no serious offers have arrived. So the question of whether to put him on the market has never even been raised".

Serie A standings and the Champions League objective

3rd League position
-9 Points behind leaders Inter
63 Milan's points tally
7 Matches remaining

The defeat reshapes the Serie A standings in stark terms: Inter lead with 72 points, Napoli sit second on 65, and Milan are third on 63. The Scudetto dream is definitively over at nine points from the summit, but the job is far from done. Champions League qualification remains the primary target and is anything but guaranteed: snapping at Milan's heels are Como, Juventus, Roma and a resurgent Atalanta who have been clawing back ground week after week.

Milan's next assignment is a trip to Udine to face an Udinese side that Allegri has described as "a physical, very dangerous team". An immediate response is needed — much like the one that followed the Lazio defeat, when Milan produced a thrilling 3-2 comeback against Torino at San Siro — to avoid slipping further down the table. With seven matchdays to go, every dropped point could prove extremely costly.

Easter Monday at the Maradona leaves a bitter taste for the Rossoneri. A match in which Milan showed defensive resilience but were sorely lacking in attack, punished by a single moment at the worst possible time. The Scudetto is gone — there is no point pretending otherwise. But this squad owes it to itself to bounce back immediately: Champions League qualification is not a consolation prize, it is the minimum acceptable outcome for a squad of this calibre. Eyes on Udinese now, with one certainty: a braver Milan will be needed to close the season the right way.

Forza Milan, always.