xgEdge

Player

Joel Bagan

Defender Cardiff City → Championship · 2026/2027

Goals

0

from 0.19 xG

Assists

0

from 3.12 xA

xGI

3.31

0.31 per 90

Minutes

969

11 appearances

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

What Joel Bagan's numbers say

Joel Bagan has 0 goals from 0.19 expected goals, a gap of −0.19 that is in line with expected. He has also produced 3.12 expected assists without recording an assist. Across 969 minutes, his 3.31 expected goal involvement comes to 0.31 per 90.

Actual vs expected

Championship · 2026/2027

Finishing

Goals 0
xG 0.19
Goals − xG
−0.19
Shots
5
xG/shot
0.04
Conversion
0.0%

Creativity

Assists 0
xA 3.12
Assists − xA
−3.12
Key passes
21
Big chances created
6

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 · 2026/2027

Metric Value Rank
Season totals
Goals 0 #198 of 555
xG 0.19 #317 of 460
xA 3.12 #2 of 555
xGI 3.31 #33 of 460
Shots 5 #226 of 555
Per 90
xG/90 0.02 #209 of 246
xA/90 0.29 #8 of 277
xGI/90 0.31 #69 of 246
Shots/90 0.46 #201 of 277

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

At Cardiff City · 2026/2027

Ranked among the 20 players who have appeared for Cardiff City.

  1. #12 xG 0.12
  2. #2 xA 1.76
  3. #6 xGI 1.88
  4. #9 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 Cardiff City squad stats →

Recent form

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

Goals
0
xG
0.05
Assists
0
xA
1.47
xGI
1.52
xGI/90
0.32
Shots/90
0.42

Over his last 5 appearances · 5 started · 429 minutes

Chances, match by match

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

Over these 11 matches · xG 0.19 · xA 3.12 · xGI 3.31 · Goals 0 · Assists 0

Mon 17/08 · Cardiff City – Wrexham · 90 min · xG 0.00 · xA 0.27 · xGI 0.27 · Goals 0 · Assists 0 Sat 22/08 · Derby County – Cardiff City · 90 min · xG 0.00 · xA 0.28 · xGI 0.28 · Goals 0 · Assists 0 Sat 29/08 · Cardiff City – Sheffield United · 90 min · xG 0.07 · xA 0.66 · xGI 0.73 · Goals 0 · Assists 0 Wed 02/09 · Queens Park Rangers – Cardiff City · 90 min · xG 0.00 · xA 0.03 · xGI 0.03 · Goals 0 · Assists 0 Sat 05/09 · Portsmouth – Cardiff City · 90 min · xG 0.03 · xA 0.12 · xGI 0.15 · Goals 0 · Assists 0 Tue 08/09 · vs Stoke City, Home, D 1–1 · 90 min · xG 0.04 · xA 0.29 · xGI 0.33 · Goals 0 · Assists 0 Sat 12/09 · vs Bolton Wanderers, Away, L 0–1 · 89 min · xG 0.00 · xA 0.48 · xGI 0.48 · Goals 0 · Assists 0 Sat 19/09 · vs Charlton Athletic, Home, W 3–1 · 90 min · xG 0.03 · xA 0.77 · xGI 0.80 · Goals 0 · Assists 0 Sat 10/10 · vs Blackburn Rovers, Away, L 1–2 · 78 min · xG 0.00 · xA 0.08 · xGI 0.08 · Goals 0 · Assists 0 Tue 13/10 · vs Watford, Home, W 5–1 · 82 min · xG 0.02 · xA 0.14 · xGI 0.16 · Goals 0 · Assists 0 Sat 17/10 · vs Middlesbrough, Away, D 2–2 · 90 min · xG 0.00 · xA 0.00 · xGI 0.00 · Goals 0 · Assists 0

Shot map

Shots placed in Championship, 2026/2027

Shots
6
Goals
0
xG
0.19
xG/shot
0.03

6 shots placed, 1 more than the 5 his season line counts: the shot feed and the season line are updated separately.

37' attempt · 16 m · 0.03 xG 38' attempt · 26 m · 0.02 xG 58' attempt · 8 m · 0.03 xG 65' attempt · 16 m · 0.03 xG 77' attempt · 6 m · 0.04 xG 80' attempt · 9 m · 0.04 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.

2026/2027 This page Cardiff City Apps11 Goals0 Assists0 xGI3.31

League Championship

Minutes
969
xG
0.19
xA
3.12

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

Full stats

2026/2027 · Championship

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

Attacking

Goals
0
xG
0.19
npxG
0.20
Non-penalty goals
0
NP goals − npxG
−0.20
Penalty goals
0
Shots
5
Shots on target
2
Shot accuracy
40.0%
Big chances missed
0
Conversion
0.0%
xG/shot
0.04

From the provider's season line, as fetched on 20 October 2026. Goals, npxG, Shots, and Shots on target: summed from the per-match feed, this competition only. xG: summed from this site's shot-by-shot model. Non-penalty goals, NP goals − npxG, Shot accuracy, Conversion, and xG/shot: calculated here from the figures beside them.

Creativity

Assists
0
xA
3.12
Assists − xA
−3.12
Key passes
21
Big chances created
6
Accurate crosses
25
Cross accuracy
28.1%

From the provider's season line, as fetched on 20 October 2026. Assists, xA, Key passes, and Big chances created: summed from the per-match feed, this competition only. Assists − xA: calculated here from the figures beside them.

Possession

Touches
948
Passes
656
Pass accuracy
86.3%
Accurate final-third passes
0
Accurate own-half passes
0
Accurate opposition-half passes
0
Successful dribbles
4
Dribble success
—

From the provider's season line, as fetched on 20 October 2026. Touches: summed from the per-match feed, this competition only.

Defending

Tackles
24
Interceptions
9
Ground duels won
52
Ground duel success
56.5%
Aerial duels won
18
Aerial duel success
—
Total duels won
70

From the provider's season line, as fetched on 20 October 2026.

Discipline

Yellow cards
1
Red cards
0
Direct red cards
0
Penalties conceded
0
Penalties won
0
Penalties taken
0

From the provider's season line, as fetched on 20 October 2026.

Other measured

11 figures
Appearances
11
Starts
11
Minutes
969
Goals + assists
0
Shots off target
1
Accurate passes
566
xA
3.17
xG
0.21
Inaccurate passes
90
Duel success
—
Xg matches
11

Everything else the provider's season line carries, under its own name, as fetched on 20 October 2026. Appearances, Starts, Minutes, and Shots off target: summed from the per-match feed, this competition only. 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.

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. The season line is read only for the figures in Full stats that no other feed carries.

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 2026/2027 — 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