AC Milan vs Lazio

30 September 2023 · Serie A · 2023/24 · Referee Davide Massa

Full time 2 – 0

Half-time: 0–0

  • Christian Pulisic 60’
  • Noah Okafor 88’

Match summary

AC Milan saw off Lazio 2-0. It was goalless at half-time.

Christian Pulisic put AC Milan ahead in the 60th minute, set up by Rafael Leão and Noah Okafor made it 2-0 in the 88th minute, set up by Rafael Leão.

The chances backed that up: AC Milan created 2.69 expected goals (xG) from 14 shots to Lazio's 0.50 from 13.

Match stats

AC Milan Lazio
14 Shots 13
7 Shots on Target 4
7 Corners 1
3 Yellow Cards 2
0 Red Cards 0
2.69 xG 0.50
2.69 Non-penalty xG 0.50
5 Deep Completions 0

Key events

AC Milan Lazio
Kick-off
Half-time0-0
Christian Pulisic
Assist: Rafael Leão
1-0 (AC Milan)
60’
Noah Okafor
Assist: Rafael Leão
2-0 (AC Milan)
88’
Full-time2-0

Bookings

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

AC Milan
  • Mike Maignan
  • Theo Hernández
  • Rafael Leão
Lazio
  • Adam Marusic
  • Alessio Romagnoli

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 3.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.69 0.50 60’ Christian Pulisic (AC Milan), 1-0 60’ 88’ Noah Okafor (AC Milan), 2-0 88’ 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 2.69 0.50 60’ Christian Pulisic (AC Milan), 1-0 Pulisic 60’ 88’ Noah Okafor (AC Milan), 2-0 Okafor 88’
AC Milan 2.69 xGLazio 0.50 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Lazio attacking AC Milan attacking 
45’ Tijjani Reijnders (AC Milan), open play, 0.95 xG, hit the woodwork 88’ Noah Okafor (AC Milan), open play, 0.61 xG, goal 60’ Christian Pulisic (AC Milan), open play, 0.38 xG, goal 13’ Felipe Anderson (Lazio), open play, 0.11 xG, off target 86’ Gustav Isaksen (Lazio), open play, 0.11 xG, blocked 90+6’ Samuel Chukwueze (AC Milan), open play, 0.10 xG, blocked 45’ Olivier Giroud (AC Milan), open play, 0.10 xG, saved 76’ Christian Pulisic (AC Milan), open play, 0.09 xG, saved 66’ Fikayo Tomori (AC Milan), open play, 0.08 xG, blocked 73’ Yunus Musah (AC Milan), open play, 0.08 xG, saved 78’ Tijjani Reijnders (AC Milan), open play, 0.07 xG, off target 33’ Rafael Leão (AC Milan), open play, 0.07 xG, saved 74’ Fikayo Tomori (AC Milan), from a corner, 0.06 xG, saved 46’ Valentín Castellanos (Lazio), open play, 0.05 xG, saved 81’ Rafael Leão (AC Milan), open play, 0.05 xG, blocked 20’ Valentín Castellanos (Lazio), open play, 0.04 xG, blocked 35’ Valentín Castellanos (Lazio), open play, 0.03 xG, saved 10’ Yacine Adli (AC Milan), open play, 0.03 xG, blocked 63’ Mattia Zaccagni (Lazio), open play, 0.02 xG, off target 76’ Pedro (Lazio), open play, 0.02 xG, saved 87’ Gustav Isaksen (Lazio), open play, 0.03 xG, off target 42’ Mattia Zaccagni (Lazio), open play, 0.02 xG, blocked 86’ Gustav Isaksen (Lazio), open play, 0.02 xG, blocked 26’ Felipe Anderson (Lazio), open play, 0.02 xG, off target 16’ Mattia Zaccagni (Lazio), open play, 0.01 xG, saved 82’ Luis Alberto (Lazio), open play, 0.02 xG, off target 56’ Simon Kjaer (AC Milan), from a corner, 0.01 xG, blocked 45’ Tijjani Reijnders (AC Milan), open play, 0.95 xG, hit the woodwork 88’ Noah Okafor (AC Milan), open play, 0.61 xG, goal 60’ Christian Pulisic (AC Milan), open play, 0.38 xG, goal 13’ Felipe Anderson (Lazio), open play, 0.11 xG, off target 86’ Gustav Isaksen (Lazio), open play, 0.11 xG, blocked 90+6’ Samuel Chukwueze (AC Milan), open play, 0.10 xG, blocked 45’ Olivier Giroud (AC Milan), open play, 0.10 xG, saved 76’ Christian Pulisic (AC Milan), open play, 0.09 xG, saved 66’ Fikayo Tomori (AC Milan), open play, 0.08 xG, blocked 73’ Yunus Musah (AC Milan), open play, 0.08 xG, saved 33’ Rafael Leão (AC Milan), open play, 0.07 xG, saved 78’ Tijjani Reijnders (AC Milan), open play, 0.07 xG, off target 74’ Fikayo Tomori (AC Milan), from a corner, 0.06 xG, saved 46’ Valentín Castellanos (Lazio), open play, 0.05 xG, saved 81’ Rafael Leão (AC Milan), open play, 0.05 xG, blocked 20’ Valentín Castellanos (Lazio), open play, 0.04 xG, blocked 35’ Valentín Castellanos (Lazio), open play, 0.03 xG, saved 10’ Yacine Adli (AC Milan), open play, 0.03 xG, blocked 87’ Gustav Isaksen (Lazio), open play, 0.03 xG, off target 63’ Mattia Zaccagni (Lazio), open play, 0.02 xG, off target 76’ Pedro (Lazio), open play, 0.02 xG, saved 86’ Gustav Isaksen (Lazio), open play, 0.02 xG, blocked 42’ Mattia Zaccagni (Lazio), open play, 0.02 xG, blocked 26’ Felipe Anderson (Lazio), open play, 0.02 xG, off target 82’ Luis Alberto (Lazio), open play, 0.02 xG, off target 16’ Mattia Zaccagni (Lazio), open play, 0.01 xG, saved 56’ Simon Kjaer (AC Milan), from a corner, 0.01 xG, blocked
Size shows xG Goal On target Off target or blocked

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

Player stats

PlayerPosMinGAShxGxAKPCards
Mike Maignan GK900 0.000.000
Davide Calabria DEF710 0.000.000
Simon Kjaer DEF901 0.010.000
Fikayo Tomori DEF902 0.140.000
Theo Hernández DEF900 0.000.091
Tijjani Reijnders MID902 1.020.051
Yacine Adli MID711 0.030.011
Ruben Loftus-Cheek MID280 0.000.000
Christian Pulisic FWD8312 0.480.132
Olivier Giroud FWD711 0.100.000
Rafael Leão FWD9022 0.121.073
Yunus Musah Sub621 0.080.000
Alessandro Florenzi Sub190 0.000.101
Tommaso Pobega Sub190 0.000.000
Noah Okafor Sub1911 0.610.000
Samuel Chukwueze Sub71 0.100.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

AC Milan win 55% Avg odds 1.74
Draw 26% Avg odds 3.75
Lazio win 19% Avg odds 5.06

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.