Bari vs Empoli

4 March 2026 · Serie B · 2025/26 · Referee Maria Sole Ferrieri Caputi

Full time 2 – 1

Half-time: 1–1

  • Emanuele Rao 42’
  • Giulio Maggiore 72’
  • Stiven Shpendi 45+1’

Match summary

Bari won 2-1 at home to Empoli. It was 1-1 at half-time.

Emanuele Rao put Bari ahead in the 42nd minute, Stiven Shpendi equalised in first-half stoppage time, and Giulio Maggiore won it with a header in the 72nd minute.

The chances backed that up: Bari created 1.35 expected goals (xG) from 13 shots to Empoli's 0.55 from 11. Empoli had a player sent off.

Match stats

55% Possession 45%
13 Shots 11
5 Shots on target 4
3 Corners 8
372 Passes 291
81.5% Pass accuracy 69.8%
17 Tackles 10
16 Fouls 10
2 Yellow cards 1
0 Red cards 1
1 Offsides 3

Key events

Bari Empoli
1’
Stiven ShpendiShot on target
11’
Edoardo SaporitiShot on target
Kevin PiscopoShot on target
30’
Valerio MantovaniShot on target
46’
Gabriele MonciniShot on target
57’
90+2’
Rareș IlieShot on target

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 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.35 0.55 42’ Emanuele Rao (Bari), 1-0 42’ 45+1’ Stiven Shpendi (Empoli), 1-1 45+1’ 72’ Giulio Maggiore (Bari), 2-1 72’ 0.0 0.5 1.0 1.5 2.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.35 0.55 42’ Emanuele Rao (Bari), 1-0 Rao 42’ 45+1’ Stiven Shpendi (Empoli), 1-1 Shpendi 45+1’ 72’ Giulio Maggiore (Bari), 2-1 Maggiore 72’
Bari 1.35 xGEmpoli 0.55 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Empoli attacking Bari attacking 
72’ Giulio Maggiore (Bari), open play, 0.42 xG, goal 42’ Emanuele Rao (Bari), open play, 0.34 xG, goal 46’ Stiven Shpendi (Empoli), open play, 0.14 xG, goal 26’ Federico Artioli (Bari), direct free kick, 0.10 xG, blocked 31’ Giulio Maggiore (Bari), set piece, 0.10 xG, off target 4’ Tomás Esteves (Bari), set piece, 0.09 xG, blocked 10’ Daniel Fila (Empoli), open play, 0.08 xG, blocked 90+2’ Rareș Ilie (Empoli), open play, 0.08 xG, saved 32’ Kevin Piscopo (Bari), open play, 0.06 xG, off target 1’ Stiven Shpendi (Empoli), open play, 0.05 xG, saved 37’ Giulio Maggiore (Bari), set piece, 0.05 xG, off target 15’ Edoardo Saporiti (Empoli), direct free kick, 0.04 xG, blocked 47’ Emanuele Rao (Bari), open play, 0.04 xG, blocked 70’ Giulio Maggiore (Bari), open play, 0.04 xG, off target 10’ Salvatore Elia (Empoli), from a corner, 0.03 xG, off target 46’ Valerio Mantovani (Bari), open play, 0.04 xG, saved 1’ Edoardo Saporiti (Empoli), open play, 0.03 xG, blocked 11’ Edoardo Saporiti (Empoli), open play, 0.03 xG, saved 57’ Gabriele Moncini (Bari), open play, 0.03 xG, saved 84’ Duccio Degli Innocenti (Empoli), open play, 0.03 xG, blocked 30’ Kevin Piscopo (Bari), open play, 0.02 xG, saved 90’ Marvin Çuni (Bari), open play, 0.02 xG, off target 38’ Stiven Shpendi (Empoli), open play, 0.01 xG, blocked 78’ Salvatore Elia (Empoli), set piece, 0.01 xG, blocked 72’ Giulio Maggiore (Bari), open play, 0.42 xG, goal 42’ Emanuele Rao (Bari), open play, 0.34 xG, goal 46’ Stiven Shpendi (Empoli), open play, 0.14 xG, goal 31’ Giulio Maggiore (Bari), set piece, 0.10 xG, off target 26’ Federico Artioli (Bari), direct free kick, 0.10 xG, blocked 4’ Tomás Esteves (Bari), set piece, 0.09 xG, blocked 90+2’ Rareș Ilie (Empoli), open play, 0.08 xG, saved 10’ Daniel Fila (Empoli), open play, 0.08 xG, blocked 32’ Kevin Piscopo (Bari), open play, 0.06 xG, off target 1’ Stiven Shpendi (Empoli), open play, 0.05 xG, saved 37’ Giulio Maggiore (Bari), set piece, 0.05 xG, off target 15’ Edoardo Saporiti (Empoli), direct free kick, 0.04 xG, blocked 47’ Emanuele Rao (Bari), open play, 0.04 xG, blocked 70’ Giulio Maggiore (Bari), open play, 0.04 xG, off target 46’ Valerio Mantovani (Bari), open play, 0.04 xG, saved 10’ Salvatore Elia (Empoli), from a corner, 0.03 xG, off target 1’ Edoardo Saporiti (Empoli), open play, 0.03 xG, blocked 84’ Duccio Degli Innocenti (Empoli), open play, 0.03 xG, blocked 11’ Edoardo Saporiti (Empoli), open play, 0.03 xG, saved 57’ Gabriele Moncini (Bari), open play, 0.03 xG, saved 30’ Kevin Piscopo (Bari), open play, 0.02 xG, saved 90’ Marvin Çuni (Bari), open play, 0.02 xG, off target 38’ Stiven Shpendi (Empoli), open play, 0.01 xG, blocked 78’ Salvatore Elia (Empoli), set piece, 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.

Lineups

Bari 3-4-2-1 Starting XI
Cerofolini
Cistana
Odenthal
Mantovani
Piscopo
Maggiore
Artioli
Esteves
Dorval
Rao
Moncini
Empoli 3-5-2 Starting XI
Fulignati
Curto
Lovato
Obaretin
Candela
Magnino
Yepes
Saporiti
Elia
Fila
Shpendi

Player stats

Players11 players
Michele Cerofolini
90′ – – – – – – –
Andrea Cistana
90′ – – – – – – –
90′ – – – – – – –
Valerio Mantovani
90′ – – 1 0.04 – – –
90′ – – 2 0.09 – – –
Giulio Maggiore
90′ 1 – 4 0.61 – – –
90′ – – 1 0.10 – – –
90′ – – – – – – –
90′ – – 1 0.09 – – –
90′ 1 – 2 0.38 – – –
90′ – – 1 0.03 – – –
Came on Taken off Sent off Red is the most in that position for the team

Every player who took the pitch, starters first and then substitutes. A dash means none. xG and xA are expected goals and assists.

Before kick-off

Bari win 32% Avg odds 2.92
Draw 29% Avg odds 3.13
Empoli win 39% Avg odds 2.36

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, timeline, lineups, team and player statistics from Bzzoiro Sports Data (sports.bzzoiro.com). Results and odds from football-data.co.uk.