Bologna vs AC Milan

27 February 2025 · Serie A · 2024/25 · Referee Maurizio Mariani

Full time 2 – 1

Half-time: 0–1

  • Santiago Castro 48’
  • Dan Ndoye 82’
  • Rafael Leão 43’

Match summary

Bologna came from behind to win 2-1 at home to AC Milan. AC Milan led 1-0 at half-time.

Rafael Leão put AC Milan ahead in the 43rd minute, set up by Santiago Giménez, Santiago Castro equalised in the 48th minute, set up by Giovanni Fabbian, and Dan Ndoye won it in the 82nd minute, set up by Nicolò Cambiaghi.

The chances backed that up: Bologna created 2.32 expected goals (xG) from 14 shots to AC Milan's 1.56 from 8.

Match stats

Bologna AC Milan
14 Shots 8
4 Shots on Target 4
4 Corners 5
1 Yellow Cards 2
0 Red Cards 0
2.32 xG 1.56
2.32 Non-penalty xG 1.56
5 Deep Completions 4

Key events

Bologna AC Milan
Kick-off
43’
Rafael Leão
Assist: Santiago Giménez
0-1 (AC Milan)
Half-time0-1
Santiago Castro
Assist: Giovanni Fabbian
1-1 (Bologna)
48’
Dan Ndoye
Assist: Nicolò Cambiaghi
2-1 (Bologna)
82’
Full-time2-1

Bookings

Card times are not on file for this game, so they are listed without a minute.

Bologna
  • Nicolò Casale
AC Milan
  • Malick Thiaw
  • Theo Hernández

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0.0 0.5 1.0 1.5 2.0 2.5 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.32 1.56 43’ Rafael Leão (AC Milan), 0-1 43’ 48’ Santiago Castro (Bologna), 1-1 48’ 82’ Dan Ndoye (Bologna), 2-1 82’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.32 1.56 43’ Rafael Leão (AC Milan), 0-1 Leão 43’ 48’ Santiago Castro (Bologna), 1-1 Castro 48’ 82’ Dan Ndoye (Bologna), 2-1 Ndoye 82’
Bologna 2.32 xGAC Milan 1.56 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 AC Milan attacking Bologna attacking 
43’ Rafael Leão (AC Milan), open play, 0.74 xG, goal 82’ Dan Ndoye (Bologna), open play, 0.62 xG, goal 48’ Santiago Castro (Bologna), set piece, 0.53 xG, goal 64’ Yunus Musah (AC Milan), open play, 0.48 xG, saved 25’ Dan Ndoye (Bologna), open play, 0.44 xG, off target 38’ Benjamín Domínguez (Bologna), open play, 0.34 xG, saved 78’ Luka Jovic (AC Milan), open play, 0.12 xG, saved 48’ Lorenzo De Silvestri (Bologna), set piece, 0.11 xG, off target 81’ Nicolò Cambiaghi (Bologna), from a corner, 0.07 xG, off target 90+4’ Thijs Dallinga (Bologna), open play, 0.08 xG, off target 1’ Santiago Giménez (AC Milan), open play, 0.07 xG, off target 16’ Yunus Musah (AC Milan), open play, 0.06 xG, saved 62’ Theo Hernández (AC Milan), open play, 0.04 xG, blocked 74’ Tijjani Reijnders (AC Milan), open play, 0.03 xG, blocked 33’ Benjamín Domínguez (Bologna), open play, 0.03 xG, saved 59’ Dan Ndoye (Bologna), open play, 0.03 xG, blocked 39’ Remo Freuler (Bologna), open play, 0.02 xG, blocked 69’ Malick Thiaw (AC Milan), from a corner, 0.02 xG, off target 81’ Nicolò Casale (Bologna), from a corner, 0.02 xG, blocked 67’ Juan Miranda (Bologna), open play, 0.01 xG, off target 67’ Santiago Castro (Bologna), open play, 0.01 xG, off target 90’ Jens Odgaard (Bologna), open play, 0.01 xG, off target 43’ Rafael Leão (AC Milan), open play, 0.74 xG, goal 82’ Dan Ndoye (Bologna), open play, 0.62 xG, goal 48’ Santiago Castro (Bologna), set piece, 0.53 xG, goal 64’ Yunus Musah (AC Milan), open play, 0.48 xG, saved 25’ Dan Ndoye (Bologna), open play, 0.44 xG, off target 38’ Benjamín Domínguez (Bologna), open play, 0.34 xG, saved 78’ Luka Jovic (AC Milan), open play, 0.12 xG, saved 48’ Lorenzo De Silvestri (Bologna), set piece, 0.11 xG, off target 90+4’ Thijs Dallinga (Bologna), open play, 0.08 xG, off target 81’ Nicolò Cambiaghi (Bologna), from a corner, 0.07 xG, off target 1’ Santiago Giménez (AC Milan), open play, 0.07 xG, off target 16’ Yunus Musah (AC Milan), open play, 0.06 xG, saved 62’ Theo Hernández (AC Milan), open play, 0.04 xG, blocked 74’ Tijjani Reijnders (AC Milan), open play, 0.03 xG, blocked 33’ Benjamín Domínguez (Bologna), open play, 0.03 xG, saved 59’ Dan Ndoye (Bologna), open play, 0.03 xG, blocked 39’ Remo Freuler (Bologna), open play, 0.02 xG, blocked 69’ Malick Thiaw (AC Milan), from a corner, 0.02 xG, off target 81’ Nicolò Casale (Bologna), from a corner, 0.02 xG, blocked 67’ Juan Miranda (Bologna), open play, 0.01 xG, off target 90’ Jens Odgaard (Bologna), open play, 0.01 xG, off target 67’ Santiago Castro (Bologna), open play, 0.01 xG, off target
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Player stats

PlayerPosMinGAShxGxAKPCards
Lukasz Skorupski GK900 0.000.000
Lorenzo De Silvestri DEF851 0.110.000
Nicolò Casale DEF901 0.020.071
Sam Beukema DEF900 0.000.000
Juan Miranda DEF901 0.010.021
Remo Freuler MID901 0.020.042
Lewis Ferguson MID730 0.000.563
Dan Ndoye MID9013 1.090.341
Giovanni Fabbian MID7310 0.000.562
Benjamín Domínguez MID812 0.370.000
Santiago Castro FWD8012 0.540.000
Jens Odgaard Sub171 0.010.000
Tommaso Pobega Sub170 0.000.000
Thijs Dallinga Sub101 0.080.011
Nicolò Cambiaghi Sub911 0.070.621
Davide Calabria Sub50 0.000.081

Starters first, then substitutes. xA is expected assists.

Before kick-off

Bologna win 33% Avg odds 2.93
Draw 29% Avg odds 3.25
AC Milan win 38% Avg odds 2.55

Chances implied by the average closing odds, with the bookmaker margin removed.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals and player data from Understat. Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.