xgEdge

Friday, 23/10/2026 at 21:00

Full time
Match report · Championship

Bolton Wanderers 1:5 Middlesbrough

Bolton Wanderers Home 0.91 xG · 12 shots
Middlesbrough Away 4.17 xG · 32 shots
15 The scoreline reflected the chances

Middlesbrough were the model's likeliest winner before kick-off at 49%. They won 5–1. The biggest difference was Middlesbrough's attack: 4.17 xG against 1.71 projected (+2.46).

Goals

  1. 13' Aidan Morris Middlesbrough · 0.86 xG chance 0–1
  2. 31' Will Lankshear Middlesbrough · 0.65 xG chance 0–2
  3. 39' Lewis Brunt (o.g.) Middlesbrough 0–3
  4. 45' Theo Bair Bolton Wanderers · 0.18 xG chance 1–3
  5. 73' Amario Cozier-Duberry Middlesbrough · 0.17 xG chance 1–4
  6. 78' Will Lankshear Middlesbrough · 0.57 xG chance 1–5

The model against the result

priced before kick-off
Bolton Wanderers
23%
Draw
28%
Middlesbrough
49% What happened

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
Bolton Wanderers The model projected 1.15 Produced 0.91 Difference -0.24
Middlesbrough The model projected 1.71 Produced 4.17 Difference +2.46

Middlesbrough produced 2.46 xG more than projected

Projected before kick-off Produced on the night

The shots behind it

Bolton Wanderers Middlesbrough
Shots
12
32
On target
4
12
Inside the box
7
20
xG per shot
0.07
0.13
Open play xG
0.88
3.22
Set-piece xG
0.02
1.03
Penalties
—
—
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: 0.91 for Bolton Wanderers and 4.17 for Middlesbrough.

Shot map

Both teams shown attacking the same goal for comparison.

Middlesbrough · Aidan Morris · 13' · Goal · 5 m · 0.86 xG Middlesbrough · Will Lankshear · 31' · Goal · 5 m · 0.65 xG Middlesbrough · Will Lankshear · 78' · Goal · 8 m · 0.57 xG Middlesbrough · Will Lankshear · 30' · No goal · 13 m · 0.24 xG Middlesbrough · Will Lankshear · 63' · No goal · 11 m · 0.20 xG Middlesbrough · Tommy Conway · 39' · No goal · 10 m · 0.20 xG Bolton Wanderers · Theo Bair · 45' · Goal · 13 m · 0.18 xG Middlesbrough · Amario Cozier-Duberry · 73' · Goal · 8 m · 0.17 xG Middlesbrough · Callum Brittain · 30' · No goal · 4 m · 0.14 xG Middlesbrough · Will Lankshear · 68' · No goal · 7 m · 0.14 xG Bolton Wanderers · Kyliane Dong · 46' · No goal · 13 m · 0.12 xG Middlesbrough · Adilson Malanda · 39' · No goal · 7 m · 0.12 xG Bolton Wanderers · Rúben Rodrigues · 45' · No goal · 15 m · 0.11 xG Bolton Wanderers · Rúben Rodrigues · 13' · No goal · 20 m · 0.11 xG Middlesbrough · Aidan Morris · 27' · No goal · 18 m · 0.10 xG Middlesbrough · Tommy Conway · 2' · No goal · 9 m · 0.10 xG Middlesbrough · Amario Cozier-Duberry · 25' · No goal · 10 m · 0.10 xG Bolton Wanderers · Kyliane Dong · 45' · No goal · 11 m · 0.08 xG Middlesbrough · Maximilian Arfsten · 83' · No goal · 9 m · 0.08 xG Bolton Wanderers · Thierry Gale · 45' · No goal · 10 m · 0.07 xG Bolton Wanderers · Theo Bair · 20' · No goal · 7 m · 0.07 xG Middlesbrough · Riley McGree · 23' · No goal · 9 m · 0.07 xG Middlesbrough · Sebastian Berhalter · 9' · No goal · 16 m · 0.07 xG Middlesbrough · Will Lankshear · 45' · No goal · 25 m · 0.06 xG Middlesbrough · Amario Cozier-Duberry · 12' · No goal · 14 m · 0.06 xG Middlesbrough · Tommy Conway · 21' · No goal · 8 m · 0.05 xG Bolton Wanderers · Ryan Hardie · 80' · No goal · 19 m · 0.05 xG Middlesbrough · Tommy Conway · 65' · No goal · 21 m · 0.04 xG Bolton Wanderers · Xavier Simons · 80' · No goal · 23 m · 0.04 xG Middlesbrough · Tommy Conway · 10' · No goal · 15 m · 0.04 xG Middlesbrough · Callum Brittain · 12' · No goal · 16 m · 0.04 xG Bolton Wanderers · Max Conway · 70' · No goal · 12 m · 0.03 xG Middlesbrough · Amario Cozier-Duberry · 69' · No goal · 23 m · 0.03 xG Middlesbrough · Ashley Phillips · 41' · No goal · 20 m · 0.03 xG Middlesbrough · Riley McGree · 6' · No goal · 22 m · 0.03 xG Middlesbrough · Amario Cozier-Duberry · 22' · No goal · 20 m · 0.02 xG Bolton Wanderers · Rúben Rodrigues · 17' · No goal · 26 m · 0.02 xG Middlesbrough · Adilson Malanda · 67' · No goal · 14 m · 0.02 xG Bolton Wanderers · Josh Sheehan · 17' · No goal · 19 m · 0.02 xG Middlesbrough · Tommy Conway · 42' · No goal · 22 m · 0.02 xG Middlesbrough · Sebastian Berhalter · 84' · No goal · 26 m · 0.02 xG Middlesbrough · Amario Cozier-Duberry · 61' · No goal · 23 m · 0.02 xG Middlesbrough · Neto Borges · 89' · No goal · 25 m · 0.01 xG Middlesbrough · Lewis Brunt · 39' · Goal · 7 m · 0.00 xG

All shots

44 shots · 5.15 xG

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

  • Bolton Wanderers
  • Middlesbrough
  • Filled = goal
  • Dot area = xG (the smallest chances drawn at a minimum size)

Recent form

Last 6 · xG per match
Bolton Wanderers

1.52 xG created 1.59 xGA

  • L 1.56 created, 2.22 conceded against West Ham United
  • W 0.48 created, 1.79 conceded against Cardiff City
  • W 1.10 created, 0.69 conceded against Norwich City
  • L 3.13 created, 0.74 conceded against Stoke City
  • W 1.62 created, 2.23 conceded against Wolverhampton
  • D 1.22 created, 1.87 conceded against Southampton
Middlesbrough

1.99 xG created 1.12 xGA

  • W 2.07 created, 1.62 conceded against Norwich City
  • D 1.52 created, 1.69 conceded against Millwall
  • D 2.14 created, 1.23 conceded against Birmingham City
  • W 0.90 created, 0.68 conceded against Wolverhampton
  • W 2.57 created, 0.65 conceded against Stoke City
  • D 2.71 created, 0.85 conceded against Cardiff City

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

Pre-match model & market record

6 qualified edges flagged0 won6 lost

  • Lost
  • Lost
  • Lost
  • Lost
  • Lost
  • Lost
View pre-match record
The outcomes the model flagged on Bolton Wanderers against Middlesbrough before kick-off, in the order they ranked, with the price, the edge and what became of each.
Selection Price Edge Result
Middlesbrough not to score 8.00 +24.8% Lost
Middlesbrough at most 1 goal 2.63 +23.8% Lost
Draw 4.33 +20.9% Lost
Under 2.5 goals 2.75 +20.5% Lost
Bolton Wanderers to win 5.00 +14.3% Lost
Under 1.5 goals 6.00 +8.2% Lost

Pre-match model vs market

Outcome Model Market Difference Fair odds
Bolton Wanderers 22.9% 18.6% +4.3 pp 4.38
Draw 27.9% 21.4% +6.4 pp 3.58
Middlesbrough 49.2% 60.0% −10.7 pp 2.03

Other markets

Outcome Model Market Difference Fair odds
Bolton Wanderers to score 71.2% 68.7% +2.5 pp 1.40
Bolton Wanderers not to score 28.8% 31.3% −2.5 pp 3.47
Middlesbrough to score 84.4% 88.1% −3.7 pp 1.18
Middlesbrough not to score 15.6% 11.9% +3.7 pp 6.41
Both teams to score 61.7% 62.5% −0.8 pp 1.62
Both teams not to score 38.3% 37.5% +0.8 pp 2.61
Bolton Wanderers 2+ goals 32.4% 33.7% −1.3 pp 3.08
Bolton Wanderers at most 1 goal 67.6% 66.3% +1.3 pp 1.48
Middlesbrough 2+ goals 52.8% 64.5% −11.7 pp 1.89
Middlesbrough at most 1 goal 47.2% 35.5% +11.7 pp 2.12
Over 1.5 goals 82.0% 84.2% −2.2 pp 1.22
Under 1.5 goals 18.0% 15.8% +2.2 pp 5.54
Over 2.5 goals 56.2% 65.6% −9.4 pp 1.78
Under 2.5 goals 43.8% 34.4% +9.4 pp 2.28

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)
Bolton Wanderers sample
11 matches
Middlesbrough sample
20 matches
Computed
2 hours before kick-off
Prices taken
2 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.