xgEdge

Saturday, 24/10/2026 at 16:00

Full time
Match report · Championship

Cardiff City 1:0 Birmingham City

Cardiff City Home 2.36 xG · 16 shots
Birmingham City Away 0.89 xG · 7 shots
10 The scoreline reflected the chances

Cardiff City were the model's likeliest winner before kick-off at 36%. They won 1–0. The biggest difference was Cardiff City's attack: 2.36 xG against 1.48 projected (+0.88). Birmingham City produced 0.89 xG against 1.47 projected (−0.58).

Goals

  1. 32' Yousef Salech Cardiff City · 0.69 xG chance 1–0

The model against the result

priced before kick-off
Cardiff City
36% What happened
Draw
29%
Birmingham City
35%

Data coverage Both teams have at least 10 matches in the model window, but at least one has fewer than the full 20.

Projected vs produced

Expected goals
Cardiff City The model projected 1.48 Produced 2.36 Difference +0.88
Birmingham City The model projected 1.47 Produced 0.89 Difference -0.58

Cardiff City produced 0.88 xG more than projected

Projected before kick-off Produced on the night

The shots behind it

Cardiff City Birmingham City
Shots
16
7
On target
4
2
Inside the box
10
7
xG per shot
0.15
0.13
Open play xG
1.29
0.83
Set-piece xG
0.34
0.05
Penalties
1
0
Shot-level xG may differ from the published match total

The provider publishes the match total separately from its shot-by-shot values. Those values are rounded to two decimals and, leaving out penalties and own goals, add up to its non-penalty xG: 1.58 for Cardiff City and 0.89 for Birmingham City.

Shot map

Both teams shown attacking the same goal for comparison.

Cardiff City · Yousef Salech · 22' · No goal · 12 m · 0.82 xG Cardiff City · Yousef Salech · 32' · Goal · 9 m · 0.69 xG Birmingham City · Demarai Gray · 89' · No goal · 13 m · 0.40 xG Cardiff City · Yousef Salech · 51' · No goal · 5 m · 0.26 xG Cardiff City · Cian Ashford · 50' · No goal · 9 m · 0.16 xG Birmingham City · Marvin Ducksch · 78' · No goal · 13 m · 0.15 xG Birmingham City · Marvin Ducksch · 83' · No goal · 5 m · 0.13 xG Cardiff City · Cian Ashford · 67' · No goal · 13 m · 0.12 xG Birmingham City · Alex Cochrane · 90' · No goal · 8 m · 0.07 xG Birmingham City · Jay Stansfield · 71' · No goal · 15 m · 0.06 xG Cardiff City · Jack Moylan · 50' · No goal · 14 m · 0.06 xG Cardiff City · Yousef Salech · 75' · No goal · 10 m · 0.05 xG Birmingham City · Jay Stansfield · 61' · No goal · 7 m · 0.05 xG Cardiff City · Jack Moylan · 31' · No goal · 22 m · 0.05 xG Cardiff City · Yousef Salech · 52' · No goal · 15 m · 0.05 xG Cardiff City · Joel Colwill · 86' · No goal · 18 m · 0.04 xG Cardiff City · Perry Ng · 71' · No goal · 24 m · 0.03 xG Cardiff City · Yousef Salech · 84' · No goal · 14 m · 0.03 xG Cardiff City · Yousef Salech · 56' · No goal · 23 m · 0.03 xG Cardiff City · Joel Bagan · 86' · No goal · 28 m · 0.03 xG Cardiff City · Yousef Salech · 69' · No goal · 9 m · 0.02 xG Cardiff City · Cian Ashford · 62' · No goal · 20 m · 0.02 xG Birmingham City · Carlos Vicente · 63' · No goal · 16 m · 0.02 xG

All shots

23 shots · 3.33 xG

Hover or tap a shot, or step through them with the arrows.

  • Cardiff City
  • Birmingham City
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
Cardiff City

2.26 xG created 1.57 xGA

  • D 3.60 created, 1.11 conceded against Stoke City
  • L 1.79 created, 0.48 conceded against Bolton Wanderers
  • W 2.60 created, 1.26 conceded against Charlton Athletic
  • L 1.05 created, 2.42 conceded against Blackburn Rovers
  • W 3.67 created, 1.46 conceded against Watford
  • D 0.85 created, 2.71 conceded against Middlesbrough
Birmingham City

2.02 xG created 1.16 xGA

  • L 1.63 created, 1.01 conceded against Norwich City
  • W 3.17 created, 1.11 conceded against Derby County
  • D 1.23 created, 2.14 conceded against Middlesbrough
  • W 2.55 created, 1.05 conceded against West Bromwich Albion
  • W 2.24 created, 0.49 conceded against Preston North End
  • W 1.30 created, 1.15 conceded against Queens Park Rangers

xG created xG conceded (xGA) W / D / L: the match result

Pre-match model & market record

4 qualified edges flagged3 won1 lost

  • Won
  • Lost
  • Won
  • Won
View pre-match record
The outcomes the model flagged on Cardiff City against Birmingham City before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
Under 2.5 goals 2.63 +9.1% Won
Draw 3.70 +6.5% Lost
Birmingham City not to score 5.00 +1.7% Won
Birmingham City at most 1 goal 1.83 +1.6% Won

Pre-match model vs market

Outcome Model Market Difference Fair odds
Cardiff City 35.9% 34.9% +1.0 pp 2.79
Draw 28.8% 25.5% +3.3 pp 3.47
Birmingham City 35.3% 39.7% −4.3 pp 2.83

Other markets

Outcome Model Market Difference Fair odds
Cardiff City to score 79.9% 78.3% +1.6 pp 1.25
Cardiff City not to score 20.1% 21.7% −1.6 pp 4.98
Birmingham City to score 79.7% 81.1% −1.4 pp 1.26
Birmingham City not to score 20.3% 18.9% +1.4 pp 4.92
Both teams to score 65.3% 64.5% +0.8 pp 1.53
Both teams not to score 34.7% 35.5% −0.8 pp 2.88
Cardiff City 2+ goals 45.0% 46.3% −1.4 pp 2.22
Cardiff City at most 1 goal 55.0% 53.7% +1.4 pp 1.82
Birmingham City 2+ goals 44.6% 50.0% −5.4 pp 2.24
Birmingham City at most 1 goal 55.4% 50.0% +5.4 pp 1.80
Over 1.5 goals 83.4% 82.8% +0.6 pp 1.20
Under 1.5 goals 16.6% 17.2% −0.6 pp 6.01
Over 2.5 goals 58.4% 63.6% −5.2 pp 1.71
Under 2.5 goals 41.6% 36.4% +5.2 pp 2.41

Prices and probabilities are the ones stored before kick-off; nothing here is recalculated. Edge is the model's probability times the price, minus one, so a flagged outcome that lost is the ordinary case rather than a contradiction.

Model details

Show
Fit window
the last 20 matches, recency weighted (a match 107 days old counts half)
Cardiff City sample
11 matches
Birmingham City sample
20 matches
Computed
29 minutes before kick-off
Prices taken
3 hours before kick-off

Limitations

The model reads expected goals and nothing else. It does not know the lineups, who is injured or suspended, what either side has to play for, the weather, or how congested the schedule around this match is.