xgEdge

Player

Barry Bannan

Midfielder Millwall → Championship · 2025/2026

Goals

3

from 1.91 xG

Assists

4

from 5.88 xA

xGI

7.79

0.23 per 90

Minutes

2,988

42 appearances

A per-90 figure needs 270 minutes — three full matches — so below that it is left off.

What Barry Bannan's numbers say

Barry Bannan has 3 goals from 1.91 expected goals, a gap of +1.09 that is in line with expected. He has 5.88 expected assists against 4 assists, −1.88 below expected. Across 2,988 minutes, his 7.79 expected goal involvement comes to 0.23 per 90.

Actual vs expected

Championship · 2025/2026

Finishing

Goals 3
xG 1.91
Goals − xG
+1.09
Shots
36
xG/shot
0.05
Conversion
8.3%

Creativity

Assists 4
xA 5.88
Assists − xA
−1.88
Key passes
59
Big chances created
9

A gap inside 1.50 either way is left uncoloured: over one player's season that is the width of the sample rather than a distance from the chances.

Where he ranks in Championship · 2025/2026

Metric Value Rank
Season totals
Goals 3 #130 of 749
xG 1.91 #235 of 617
xA 5.88 #27 of 749
xGI 7.79 #94 of 617
Shots 36 #126 of 749
Per 90
xG/90 0.06 #328 of 520
xA/90 0.18 #51 of 568
xGI/90 0.23 #213 of 520
Shots/90 1.08 #256 of 568

Per-90 ranks include players with at least 450 minutes. Season totals rank everyone who has appeared.

At Millwall · 2025/2026

Ranked among the 32 players who have appeared for Millwall.

  1. #20 xG 0.34
  2. #18 xA 0.41
  3. #19 xGI 0.75
  4. #17 Goals 0

Summed from the per-match feed, as the squad table is. The band's expected goals are this site's own shot-by-shot figure, so the two can differ.

View Millwall squad stats →

Recent form

Counted over his appearances, not his club's matches · Championship 2025/2026

Goals
0
xG
0.00
Assists
0
xA
0.21
xGI
0.21
xGI/90
—
Shots/90
—

Over his last 5 appearances · 2 started · 177 minutes A per-90 figure needs 270 minutes — three full matches — so below that it is left off.

Chances, match by match

Every match he played · Championship 2025/2026 · xG from this site's shot-by-shot model, as in the band

Over these 42 matches · xG 1.91 · xA 5.88 · xGI 7.79 · Goals 3 · Assists 4

Sun 10/08 · vs Leicester City, Away, L 1–2 · 76 min · xG 0.00 · xA 0.12 · xGI 0.12 · Goals 0 · Assists 0 Sat 16/08 · vs Stoke City, Home, L 0–3 · 90 min · xG 0.19 · xA 0.16 · xGI 0.35 · Goals 0 · Assists 0 Sat 23/08 · vs Wrexham, Away, D 2–2 · 89 min · xG 0.36 · xA 0.38 · xGI 0.74 · Goals 1 · Assists 0 Sat 30/08 · vs Swansea City, Home, L 0–2 · 90 min · xG 0.03 · xA 0.09 · xGI 0.12 · Goals 0 · Assists 0 Sat 13/09 · vs Bristol City, Home, L 0–3 · 90 min · xG 0.00 · xA 0.03 · xGI 0.03 · Goals 0 · Assists 0 Sat 20/09 · vs Portsmouth, Away, W 2–0 · 90 min · xG 0.21 · xA 0.57 · xGI 0.78 · Goals 1 · Assists 0 Sat 27/09 · vs Queens Park Rangers, Home, D 1–1 · 90 min · xG 0.00 · xA 0.51 · xGI 0.51 · Goals 0 · Assists 1 Tue 30/09 · vs Birmingham City, Away, D 2–2 · 86 min · xG 0.00 · xA 0.22 · xGI 0.22 · Goals 0 · Assists 1 Sat 04/10 · vs Coventry City, Home, L 0–5 · 90 min · xG 0.00 · xA 0.59 · xGI 0.59 · Goals 0 · Assists 0 Sat 18/10 · vs Charlton Athletic, Away, L 1–2 · 90 min · xG 0.04 · xA 0.12 · xGI 0.16 · Goals 0 · Assists 0 Wed 22/10 · vs Middlesbrough, Home, L 0–1 · 90 min · xG 0.08 · xA 0.22 · xGI 0.30 · Goals 0 · Assists 0 Sat 25/10 · vs Oxford United, Home, L 1–2 · 90 min · xG 0.06 · xA 0.39 · xGI 0.45 · Goals 0 · Assists 0 Sat 01/11 · vs West Bromwich Albion, Away, D 0–0 · 90 min · xG 0.04 · xA 0.03 · xGI 0.07 · Goals 0 · Assists 0 Wed 05/11 · vs Norwich City, Home, D 1–1 · 90 min · xG 0.06 · xA 0.26 · xGI 0.32 · Goals 1 · Assists 0 Sat 08/11 · vs Southampton, Away, L 1–3 · 90 min · xG 0.07 · xA 0.07 · xGI 0.14 · Goals 0 · Assists 0 Sun 23/11 · vs Sheffield United, Home, L 0–3 · 90 min · xG 0.00 · xA 0.19 · xGI 0.19 · Goals 0 · Assists 0 Wed 26/11 · vs Millwall, Away, L 0–1 · 90 min · xG 0.17 · xA 0.13 · xGI 0.30 · Goals 0 · Assists 0 Sat 29/11 · vs Preston North End, Home, L 2–3 · 90 min · xG 0.00 · xA 0.33 · xGI 0.33 · Goals 0 · Assists 0 Tue 09/12 · vs Watford, Away, D 1–1 · 45 min · xG 0.00 · xA 0.01 · xGI 0.01 · Goals 0 · Assists 0 Mon 15/12 · vs Derby County, Home, L 0–3 · 90 min · xG 0.00 · xA 0.19 · xGI 0.19 · Goals 0 · Assists 0 Sat 20/12 · vs Ipswich Town, Away, L 1–3 · 90 min · xG 0.00 · xA 0.02 · xGI 0.02 · Goals 0 · Assists 0 Fri 26/12 · vs Hull City, Home, D 2–2 · 90 min · xG 0.01 · xA 0.25 · xGI 0.26 · Goals 0 · Assists 1 Mon 29/12 · vs Blackburn Rovers, Home, D 0–0 · 90 min · xG 0.21 · xA 0.06 · xGI 0.27 · Goals 0 · Assists 0 Thu 01/01 · vs Preston North End, Away, L 0–3 · 90 min · xG 0.00 · xA 0.07 · xGI 0.07 · Goals 0 · Assists 0 Sun 04/01 · vs Queens Park Rangers, Away, L 0–3 · 90 min · xG 0.04 · xA 0.02 · xGI 0.06 · Goals 0 · Assists 0 Sat 17/01 · vs Portsmouth, Home, L 0–1 · 90 min · xG 0.00 · xA 0.11 · xGI 0.11 · Goals 0 · Assists 0 Tue 20/01 · vs Birmingham City, Home, L 0–2 · 89 min · xG 0.05 · xA 0.08 · xGI 0.13 · Goals 0 · Assists 0 Sat 24/01 · vs Bristol City, Away, L 0–2 · 89 min · xG 0.00 · xA 0.25 · xGI 0.25 · Goals 0 · Assists 0 Sat 31/01 · vs Sheffield United, Home, D 1–1 · 20 min · xG 0.01 · xA 0.01 · xGI 0.02 · Goals 0 · Assists 0 Sat 07/02 · vs Wrexham, Away, W 2–0 · 73 min · xG 0.00 · xA 0.03 · xGI 0.03 · Goals 0 · Assists 0 Sat 14/02 · vs Sheffield Wednesday, Away, W 2–1 · 61 min · xG 0.09 · xA 0.02 · xGI 0.11 · Goals 0 · Assists 0 Sat 21/02 · vs Portsmouth, Home, L 1–3 · 9 min · xG 0.00 · xA 0.03 · xGI 0.03 · Goals 0 · Assists 0 Wed 25/02 · vs Birmingham City, Home, W 3–0 · 10 min · xG 0.00 · xA 0.02 · xGI 0.02 · Goals 0 · Assists 0 Tue 10/03 · vs Derby County, Home, W 1–0 · 72 min · xG 0.01 · xA 0.06 · xGI 0.07 · Goals 0 · Assists 0 Sat 14/03 · vs Blackburn Rovers, Home, L 1–2 · 64 min · xG 0.11 · xA 0.01 · xGI 0.12 · Goals 0 · Assists 0 Sat 21/03 · vs Ipswich Town, Away, D 1–1 · 22 min · xG 0.05 · xA 0.00 · xGI 0.05 · Goals 0 · Assists 0 Fri 03/04 · vs Middlesbrough, Away, W 2–1 · 26 min · xG 0.04 · xA 0.02 · xGI 0.06 · Goals 0 · Assists 1 Mon 06/04 · vs Norwich City, Home, L 1–2 · 86 min · xG 0.00 · xA 0.01 · xGI 0.01 · Goals 0 · Assists 0 Fri 10/04 · vs West Bromwich Albion, Away, D 0–0 · 1 min · xG 0.00 · xA 0.00 · xGI 0.00 · Goals 0 · Assists 0 Sat 18/04 · vs Queens Park Rangers, Home, W 2–0 · 1 min · xG 0.00 · xA 0.00 · xGI 0.00 · Goals 0 · Assists 0 Fri 24/04 · vs Leicester City, Away, D 1–1 · 8 min · xG 0.00 · xA 0.04 · xGI 0.04 · Goals 0 · Assists 0 Sat 02/05 · vs Oxford United, Home, W 2–0 · 81 min · xG 0.00 · xA 0.16 · xGI 0.16 · Goals 0 · Assists 0

Every match

Every match he played · Championship 2025/2026 · 42 matches
W vs Oxford United 2–0 02/05/2026 · 81′ 0 G 0 A 0.00 xG 0.16 xA 0.16 xGI 0 sh D vs Leicester City 1–1 24/04/2026 · 8′ 0 G 0 A 0.00 xG 0.04 xA 0.04 xGI 0 sh W vs Queens Park Rangers 2–0 18/04/2026 · 1′ 0 G 0 A 0.00 xG 0.00 xA 0.00 xGI 0 sh D vs West Bromwich Albion 0–0 10/04/2026 · 1′ 0 G 0 A 0.00 xG 0.00 xA 0.00 xGI 0 sh L vs Norwich City 1–2 06/04/2026 · 86′ 0 G 0 A 0.00 xG 0.01 xA 0.01 xGI 0 sh W vs Middlesbrough 2–1 03/04/2026 · 26′ 0 G 1 A 0.04 xG 0.02 xA 0.06 xGI 1 sh D vs Ipswich Town 1–1 21/03/2026 · 22′ 0 G 0 A 0.05 xG 0.00 xA 0.05 xGI 2 sh L vs Blackburn Rovers 1–2 14/03/2026 · 64′ 0 G 0 A 0.11 xG 0.01 xA 0.12 xGI 1 sh W vs Derby County 1–0 10/03/2026 · 72′ 0 G 0 A 0.01 xG 0.06 xA 0.07 xGI 1 sh W vs Birmingham City 3–0 25/02/2026 · 10′ 0 G 0 A 0.00 xG 0.02 xA 0.02 xGI 0 sh L vs Portsmouth 1–3 21/02/2026 · 9′ 0 G 0 A 0.00 xG 0.03 xA 0.03 xGI 0 sh W vs Sheffield Wednesday 2–1 14/02/2026 · 61′ 0 G 0 A 0.09 xG 0.02 xA 0.11 xGI 1 sh W vs Wrexham 2–0 07/02/2026 · 73′ 0 G 0 A 0.00 xG 0.03 xA 0.03 xGI 0 sh D vs Sheffield United 1–1 31/01/2026 · 20′ 0 G 0 A 0.01 xG 0.01 xA 0.02 xGI 1 sh L vs Bristol City 0–2 24/01/2026 · 89′ 0 G 0 A 0.00 xG 0.25 xA 0.25 xGI 0 sh L vs Birmingham City 0–2 20/01/2026 · 89′ 0 G 0 A 0.05 xG 0.08 xA 0.13 xGI 2 sh L vs Portsmouth 0–1 17/01/2026 · 90′ 0 G 0 A 0.00 xG 0.11 xA 0.11 xGI 0 sh L vs Queens Park Rangers 0–3 04/01/2026 · 90′ 0 G 0 A 0.04 xG 0.02 xA 0.06 xGI 1 sh L vs Preston North End 0–3 01/01/2026 · 90′ 0 G 0 A 0.00 xG 0.07 xA 0.07 xGI 0 sh D vs Blackburn Rovers 0–0 29/12/2025 · 90′ 0 G 0 A 0.21 xG 0.06 xA 0.27 xGI 2 sh D vs Hull City 2–2 26/12/2025 · 90′ 0 G 1 A 0.01 xG 0.25 xA 0.26 xGI 1 sh L vs Ipswich Town 1–3 20/12/2025 · 90′ 0 G 0 A 0.00 xG 0.02 xA 0.02 xGI 0 sh L vs Derby County 0–3 15/12/2025 · 90′ 0 G 0 A 0.00 xG 0.19 xA 0.19 xGI 0 sh D vs Watford 1–1 09/12/2025 · 45′ 0 G 0 A 0.00 xG 0.01 xA 0.01 xGI 0 sh L vs Preston North End 2–3 29/11/2025 · 90′ 0 G 0 A 0.00 xG 0.33 xA 0.33 xGI 0 sh L vs Millwall 0–1 26/11/2025 · 90′ 0 G 0 A 0.17 xG 0.13 xA 0.30 xGI 4 sh L vs Sheffield United 0–3 23/11/2025 · 90′ 0 G 0 A 0.00 xG 0.19 xA 0.19 xGI 0 sh L vs Southampton 1–3 08/11/2025 · 90′ 0 G 0 A 0.07 xG 0.07 xA 0.14 xGI 2 sh D vs Norwich City 1–1 05/11/2025 · 90′ 1 G 0 A 0.06 xG 0.26 xA 0.32 xGI 2 sh D vs West Bromwich Albion 0–0 01/11/2025 · 90′ 0 G 0 A 0.04 xG 0.03 xA 0.07 xGI 1 sh L vs Oxford United 1–2 25/10/2025 · 90′ 0 G 0 A 0.06 xG 0.39 xA 0.45 xGI 2 sh L vs Middlesbrough 0–1 22/10/2025 · 90′ 0 G 0 A 0.08 xG 0.22 xA 0.30 xGI 1 sh L vs Charlton Athletic 1–2 18/10/2025 · 90′ 0 G 0 A 0.04 xG 0.12 xA 0.16 xGI 1 sh L vs Coventry City 0–5 04/10/2025 · 90′ 0 G 0 A 0.00 xG 0.59 xA 0.59 xGI 0 sh D vs Birmingham City 2–2 30/09/2025 · 86′ 0 G 1 A 0.00 xG 0.22 xA 0.22 xGI 0 sh D vs Queens Park Rangers 1–1 27/09/2025 · 90′ 0 G 1 A 0.00 xG 0.51 xA 0.51 xGI 0 sh W vs Portsmouth 2–0 20/09/2025 · 90′ 1 G 0 A 0.21 xG 0.57 xA 0.78 xGI 4 sh L vs Bristol City 0–3 13/09/2025 · 90′ 0 G 0 A 0.00 xG 0.03 xA 0.03 xGI 0 sh L vs Swansea City 0–2 30/08/2025 · 90′ 0 G 0 A 0.03 xG 0.09 xA 0.12 xGI 1 sh D vs Wrexham 2–2 23/08/2025 · 89′ 1 G 0 A 0.36 xG 0.38 xA 0.74 xGI 3 sh L vs Stoke City 0–3 16/08/2025 · 90′ 0 G 0 A 0.19 xG 0.16 xA 0.35 xGI 2 sh L vs Leicester City 1–2 10/08/2025 · 76′ 0 G 0 A 0.00 xG 0.12 xA 0.12 xGI 0 sh
Over these 42 matches 2,988′ 3 G 4 A 1.91 xG 5.88 xA 7.79 xGI 36 sh

Shot map

Shots placed in Championship, 2025/2026

Shots
36
Goals
3
xG
1.91
xG/shot
0.05
1' attempt · 18 m · 0.05 xG 2' attempt · 29 m · 0.02 xG 4' goal · 31 m · 0.02 xG 6' attempt · 14 m · 0.05 xG 7' attempt · 24 m · 0.04 xG 12' goal · 22 m · 0.08 xG 18' attempt · 24 m · 0.02 xG 18' attempt · 32 m · 0.01 xG 22' attempt · 17 m · 0.10 xG 28' attempt · 15 m · 0.20 xG 30' attempt · 19 m · 0.08 xG 31' attempt · 14 m · 0.09 xG 32' attempt · 21 m · 0.02 xG 36' attempt · 25 m · 0.01 xG 38' attempt · 27 m · 0.01 xG 39' attempt · 28 m · 0.03 xG 43' attempt · 42 m · 0.01 xG 45' attempt · 30 m · 0.02 xG 49' attempt · 18 m · 0.11 xG 53' attempt · 3 m · 0.09 xG 58' attempt · 18 m · 0.04 xG 58' attempt · 25 m · 0.03 xG 63' goal · 9 m · 0.32 xG 63' attempt · 7 m · 0.17 xG 64' attempt · 22 m · 0.03 xG 64' attempt · 28 m · 0.03 xG 69' attempt · 19 m · 0.04 xG 71' attempt · 9 m · 0.03 xG 75' attempt · 22 m · 0.04 xG 76' attempt · 27 m · 0.04 xG 77' attempt · 25 m · 0.04 xG 77' attempt · 27 m · 0.01 xG 79' attempt · 15 m · 0.03 xG 81' attempt · 21 m · 0.01 xG 89' attempt · 18 m · 0.03 xG 90' attempt · 31 m · 0.03 xG

One dot per shot, placed where it was taken, sized by what the chance was worth. Filled dots are goals. Per-shot data exists for 19 competitions.

Career

Every season

Every season and competition on record — not only the season above.

2025/2026 This page Millwall Apps42 Goals3 Assists4 xGI7.79

League Championship

Minutes
2,988
xG
1.91
xA
5.88

Expected goals and assists are published for Championship. A dash is a competition that publishes neither, not a season without chances.

Full stats

2025/2026 · Championship

A dash is a figure the provider did not send; a nought is one it measured at nought.

Attacking

Goals
3
xG
1.91
npxG
—
Shots
36
Shots on target
13
Shot accuracy
36.1%
Conversion
8.3%
xG/shot
0.05

Goals, Shots, and Shots on target: summed from the per-match feed, this competition only, current to his last match. xG: summed from this site's shot-by-shot model. Shot accuracy, Conversion, and xG/shot: calculated here from the figures beside them.

Creativity

Assists
4
xA
5.88
Assists − xA
−1.88
Key passes
59
Big chances created
9

Assists, xA, Key passes, and Big chances created: summed from the per-match feed, this competition only, current to his last match. Assists − xA: calculated here from the figures beside them.

Possession

Touches
2,517

Touches: summed from the per-match feed, this competition only, current to his last match.

Other measured

5 figures
Appearances
42
Starts
34
Minutes
2,988
Goals + assists
7
Shots off target
13

Appearances, Starts, Minutes, and Shots off target: summed from the per-match feed, this competition only, current to his last match. Goals + assists: calculated here from the figures beside them.

About the data

Where every figure on this page came from, and how every figure calculated here was calculated.

In the competitions the per-match feed covers, every count — appearances, starts, minutes, goals, assists, shots and the rest — is summed from the matches each night, and the provider's season line supplies only what the matches do not carry, its percentages and its pass, duel, dribble and discipline figures, bought in full every 21 days, with every squad checked every 7 days for players the competition has not seen before; in every other competition the season line is the only source, and it is bought in full every 7 days.

Three sources

The provider's season line
One record per player per competition-season, refreshed only when it is bought again, so it can stand a few rounds behind the matches. The source of the rating, duel, dribble and pass figures in Full stats, which nothing else carries, and of the counts in a competition-season the per-match feed holds no match of his in. Full stats prints the day it was fetched.
The provider's per-match feed
One record per player per match, kept current for 19 competitions, each from the season its coverage began. The source of xA, npxG and touches, of xG where there is no shot feed, and of appearances, starts, minutes, goals, assists, shots, shots on target, key passes and big chances created wherever it holds a match he played. Summed over one competition-season at a time.
This site's shot-by-shot model
An xG value for every shot, for the same competitions. The source of xG wherever it exists, and of the shot map.

Which xG

Where a competition has the shot feed, xG is this site's sum over his shots; otherwise it is the provider's per-match figure. The two are slightly different definitions of expected goals, so they are never mixed inside one competition-season.

On this page, xG is this site's shot-by-shot figure — Championship has the shot feed.

Which counts

Appearances, starts, minutes, goals, assists, shots, shots on target, key passes and big chances created are summed from the per-match feed over that competition's fixtures wherever it holds a match he played in that competition-season, and are the provider's season line only where it holds none. One source for all nine together, chosen once per competition-season rather than figure by figure, so a count is never set against an expected figure summed on a different day.

On this page, the counts are summed from the per-match feed — it holds his Championship matches this season. No season line has been bought for him in this competition-season yet, so Full stats carries only the figures the per-match feed does.

Rules

A per-90 figure about him needs 270 minutes — three full matches. A per-90 league rank needs 450 minutes, because a rank sets him against everybody else in the competition and a short run at the top of a table displaces a player with a whole season behind him.

A dash is a figure nobody measured; a nought is a figure measured at nought. A sum over no rows is a dash, and a division by nothing is a dash rather than zero.

Every section above Every season counts one competition in one season — Championship 2025/2026 — and only the matches he played. Every season counts his whole career, every competition. No figure is summed across competitions.

Formulas

xG
The sum of this site's per-shot xG over his shots in this competition-season where it has the shot feed; otherwise the sum of the provider's per-match xG.
xA
The sum of the provider's per-match xA over his matches in this competition-season.
xGI
xG + xA. A dash unless both exist.
Goals − xG
Goals − xG, signed.
Assists − xA
Assists − xA, signed.
Per 90
Figure × 90 ÷ minutes. A dash below the per-90 floor.
xG/shot
xG ÷ shots. A dash with no shots.
Conversion
Goals × 100 ÷ shots. A dash with no shots.
Shot accuracy
Shots on target × 100 ÷ shots. A dash with no shots.
npxG
The sum of the provider's per-match non-penalty xG. A dash for the season if any match in it lacks the figure.
Non-penalty goals
Goals − penalty goals.
NP goals − npxG
(Goals − penalty goals) − npxG, signed.
Touches
The sum of the provider's per-match touches. A dash for the season if any match in it lacks the figure.
Map xG/shot
The xG of the shots drawn on the map ÷ the number drawn. Shots without coordinates are left out of both.
Ranks
Highest first; tied players share the higher place and the next is skipped — 1, 2, 2, 4. A player with no figure for a metric is left out of its ranking rather than placed last.

How the site's expected-goals model works