MaplePitch Logo

Bologna Stuns Napoli with 3-2 Victory at Stadio Diego Armando Maradona

Bologna stunned Napoli 3-2 at Stadio Diego Armando Maradona, a result that dents Napoli’s push to lock in second place while boosting Bologna’s late surge for European qualification. The defeat leaves Napoli vulnerable in the race behind the champions, while Bologna’s away win strengthens their position in the top half and keeps continental ambitions alive.

Bologna struck first on 10 minutes when Federico Bernardeschi finished a move created by left-back Juan Miranda, the winger arriving to convert Miranda’s delivery for 0-1. Their advantage doubled in the 34th minute, Riccardo Orsolini stepping up from the spot and dispatching a penalty as an unassisted effort to put the visitors 2-0 up.

Frustration began to show when Joao Mario was booked for roughing in the 38th minute, but Bologna still reached the interval with a lead despite a key twist in stoppage time. In the 45+2 minute, Giovanni Di Lorenzo dragged Napoli back into the contest with an unassisted strike, a solo effort that halved the deficit at 1-2 going into the break.

Just after the restart, Bologna’s discipline wobbled again as Bernardeschi collected a yellow card for a foul in the 47th minute. Napoli capitalised almost immediately: in the 48th minute Alisson Santos levelled the match at 2-2, finishing a move created by Rasmus Højlund, whose assist released the forward to complete the comeback from two goals down.

The tone of the second half remained combative. Eivind Fauske Helland received a yellow card for tripping in the 58th minute as Bologna struggled to contain Napoli’s momentum. Vincenzo Italiano turned to his bench on 64 minutes, with Nadir Zortea replacing Joao Mario to stabilise the right flank.

Bologna’s back line continued to ride a fine line, and in the 69th minute Jhon Lucumí was booked, adding another yellow to the visitors’ tally. Ten minutes later, Italiano freshened his attack: in the 73rd minute Jonathan Rowe replaced Bernardeschi, a change that would later prove decisive.

Antonio Conte responded with a double substitution for Napoli in the 76th minute. Billy Gilmour came on for Stanislav Lobotka to add more progression from deep, while Eljif Elmas replaced Giovane in an attempt to inject creativity between the lines. Bologna countered with a triple reshuffle around the 80-minute mark: at 81 minutes Nikola Moro replaced Tommaso Pobega in midfield and Simon Sohm came on for Lewis Ferguson, then in the 82nd minute Torbjørn Heggem replaced Helland, who had been on a yellow, tightening their defensive structure.

Napoli’s attacking wing-back Matteo Politano was booked for holding in the 84th minute, and Conte immediately adjusted his wide options. In the 85th minute Leonardo Spinazzola replaced Politano, followed by Pasquale Mazzocchi coming on for Miguel Gutiérrez in the 87th minute, as Napoli pushed for a late winner with fresh legs on both flanks.

The decisive moment, however, belonged to Bologna. In the 90+1 minute, Jonathan Rowe, introduced earlier for Bernardeschi, struck an unassisted winner, making it 3-2 to the visitors and silencing the home crowd at the death.

Fixture Statistics & Tactical Audit

  • xG (Expected Goals): Napoli 0.75 vs Bologna 1.32
  • Possession: Napoli 52% vs Bologna 48%
  • Shots on Target: Napoli 5 vs Bologna 4
  • Goalkeeper Saves: Napoli 1 vs Bologna 3
  • Blocked Shots: Napoli 4 vs Bologna 1

The underlying numbers suggest Bologna’s win was broadly in line with chance creation, with a higher xG (1.32 vs 0.75) despite slightly less possession. Napoli carried more of the ball and volume of attempts but were limited to lower-quality chances, reflected in their modest xG relative to 14 total shots. Bologna were more selective and efficient in advanced areas, turning 10 shots and 4 on target into three goals, while their goalkeeper’s 3 saves against 5 efforts on target underpinned a resilient away performance. Napoli’s single save against Bologna’s 4 shots on target highlights how clinically the visitors converted their best opportunities (3 goals from 1.32 xG indicates sharp finishing), whereas Napoli’s attack underperformed their expected output.

Standings Update & Seasonal Impact

Napoli began the night in 2nd place on 70 points with a goal difference of +18, having scored 54 and conceded 36. The 2-3 defeat adds 2 goals for and 3 against, moving them to 56 goals scored and 39 conceded, for a new goal difference of +17. With no points gained, they remain on 70 points, leaving their grip on second place more fragile and increasing the pressure from the chasing pack in the final rounds of Serie A.

Bologna started in 8th place with 52 points and a goal difference of +2 (45 scored, 43 conceded). Scoring three and conceding two in Naples lifts their totals to 48 goals for and 45 against, maintaining a goal difference of +3. The three points move them up to 55 points, tightening the race for European spots and potentially closing the gap to the teams immediately above them in the battle for continental qualification.

Lineups & Personnel

Napoli Actual XI

  • GK: Vanja Milinković-Savić
  • DF: Giovanni Di Lorenzo, Amir Rrahmani, Alessandro Buongiorno
  • MF: Matteo Politano, Stanislav Lobotka, Scott McTominay, Miguel Gutiérrez
  • FW: Giovane, Alisson Santos, Rasmus Højlund

Bologna Actual XI

  • GK: Massimo Pessina
  • DF: Joao Mario, Eivind Helland, Jhon Lucumí, Juan Miranda
  • MF: Tommaso Pobega, Remo Freuler, Lewis Ferguson
  • FW: Riccardo Orsolini, Santiago Castro, Federico Bernardeschi

Expert's Post-Match Verdict

Conte’s Napoli controlled marginally more of the ball and territory but lacked penetration and shot quality in the final third (52% possession, 0.75 xG from 14 shots), pointing to structural issues in breaking down Bologna’s compact 4-3-3 block rather than pure bad luck. The 3-4-2-1 shape produced width and volume but not enough clear-cut chances, and the late wave of substitutions on the flanks did not materially raise their threat profile.

Italiano’s Bologna, by contrast, executed a clear, efficient game plan. They absorbed pressure, attacked with precision, and maximised the value of their opportunities (1.32 xG, 3 goals from 10 shots). Early goals from Bernardeschi and Orsolini gave them a platform, and the in-game adjustments—especially Rowe replacing Bernardeschi—proved decisive, with the substitute delivering the 90+1-minute winner. While the high yellow-card count underlined the physical cost of their approach (4 bookings), Bologna’s balance between defensive resilience (3 saves, 1 blocked shot) and incisive counter-attacking made this a tactically coherent and deserved away victory.