Middlesbrough vs Millwall Prediction, Preview and Stats

England flag 2025/2026 Championship, England
Riverside Stadium Fri, 3 Apr - 11:30 AM
Championship
Middlesbrough MID
1 Winner 2
Millwall MLW
Full Time Fri, 3 Apr 11:30 AM
Round 40 Regular Season
Dael Fry - 26'
Goal
|
Goal
Josh Coburn - 58', 86'

CONTEXT

The match has finished with Millwall securing a 2-1 victory over Middlesbrough. The hosts initially held a 1-0 advantage at half-time, but the visitors successfully turned the game around in the second half to claim the win. Before kickoff, the pre-match market heavily favoured a home win, giving Middlesbrough a 54.4% chance of victory alongside a 24.7% probability of a draw. Millwall entered the contest with a slim 20.9% chance. Consequently, Millwall's away triumph represents a significant deviation from pre-match expectations. Ultimately, the final result was not aligned with the initial market outlook. On the pitch, Middlesbrough controlled the tempo with 61% possession, leaving Millwall with just 39% of the ball. Expected goals (xG) data was unavailable for this fixture, meaning it cannot be determined if the final scoreline aligned with the underlying chance creation. Despite the unexpected outcome, the teams' overall efficiency shift remained in line with standard expectations. Finally, the match was contested evenly in terms of discipline, with no red cards issued to either side to impact the overall flow of the game.

TL;DR

  • Structural deviation: Millwall showed a significant deviation from the pre-match structural baseline.
  • Efficiency shift: Possession-adjusted chance creation was in line with projected levels.
  • xG alignment: The final outcome was insufficient data for expected goal differential.
  • Market alignment: End result was diverging from the pre-match projection.
  • xG expectations: Inconclusive for xG expectations (Classify).
  • Event impact: No major event distortion.
  • Red card distortion: None.
No standings statistics available.
No head-to-head records found.
0.5+ goals: 85%
1.5+ goals: 70%
2.5+ goals: 50%
3.5+ goals: 25%
Confidence: High (≥8 matches)

Quality vs Volume

Home: xG 1.8, Shots 12, xG/Shot 0.15
Away: xG 1.5, Shots 14, xG/Shot 0.11

Open Play vs Set Play

Open Play: 65%
Set Play: 35%

Expected Points

TeamxPts
Home1.8
Away1.2
ℹ️ Methodology: Expected Goals (xG) measures shot quality
E. Carney
E. Carney
2nd Assistant 25 matches
Fouls / Match
Referee 0.52
League Avg 17.46
Yellow Cards / Match
Referee 0.12
League Avg 3.22
Red Cards / Match
Referee 0
League Avg 0.08
Penalties / Match
Referee 0
League Avg 0.24
P. Hodskinson
P. Hodskinson
1st Assistant 25 matches
Fouls / Match
Referee 0.52
League Avg 17.46
Yellow Cards / Match
Referee 0.12
League Avg 3.22
Red Cards / Match
Referee 0
League Avg 0.08
Penalties / Match
Referee 0
League Avg 0.24
A. Herczeg
A. Herczeg
4th Official 25 matches
Fouls / Match
Referee 0.52
League Avg 17.46
Yellow Cards / Match
Referee 0.12
League Avg 3.22
Red Cards / Match
Referee 0
League Avg 0.08
Penalties / Match
Referee 0
League Avg 0.24
A. Backhouse
A. Backhouse
Referee 25 matches
Fouls / Match
Referee 0.52
League Avg 17.46
Yellow Cards / Match
Referee 0.12
League Avg 3.22
Red Cards / Match
Referee 0
League Avg 0.08
Penalties / Match
Referee 0
League Avg 0.24
Middlesbrough K. Hellberg
K. Hellberg
VS
Millwall A. Neil
A. Neil
1.71
Avg Points / Game (Last 100 Matches)
1.87
1.5 i
Last 6 Opponents
Blackburn Rovers Rank: 66 D
Bristol City Rank: 68 D
Charlton Athletic Rank: 66 L
Queens Park Rangers Rank: 67 W
Birmingham City Rank: 69 W
Leicester City Rank: 68 D
Avg Points / Game (Last 6 Matches)
2.17 i
Last 6 Opponents
Ipswich Town Rank: 76 D
Blackburn Rovers Rank: 65 L
Derby County Rank: 69 W
Hull City Rank: 71 W
Preston North End Rank: 66 W
Birmingham City Rank: 69 W
12
Head to Head (Wins - Draws - Losses)
12 - 6 - 10
10

Win Probabilities

Live Win Probability (90 Min)
Home Middlesbrough
54.39%
Draw
24.69%
Away Millwall
20.92%

Team Power Ranking

i
What is Power Ranking?
Power ranking is SportMonks' model-based team strength indicator. Historical input capped to 2 seasons.
73.24
75.15
0 (Weakest) 100 (Strongest)
Metric
Middlesbrough
Millwall
Power Score
73.24
75.15
League Position
3
2
Global Rank
138
104

Form Analysis Opponent-Weighted

Line chart of recent results (points/trend). Friendlies excluded by default. Hover for opponent, result, xG/xGA and power ranking — based on last 6 matches.

vs
Middlesbrough Opponent-weighted form score
Millwall Opponent-weighted form score
Win (3 pts) Draw (1 pt) Loss (0 pts) Middlesbrough Millwall

Heatmaps Ball coordinates

Attack and defence zones from ball position data. Filters: last 6 matches (overall/home/away), time period, competition.

vs

Middlesbrough

Left / Center / Right
Opposition half density
vs season average

Millwall

Left / Center / Right
Opposition half density
vs season average

Possession Efficiency Possession-Adjusted

How effectively each team uses and defends their share of possession. Efficiency adjusted based on team possession percentage

Middlesbrough ⚠ Proxy
vs
⚠ Proxy Millwall
Attacking Efficiency
Higher is better
Attacking Efficiency
57.95
32.69
Defensive Efficiency
Lower is better
Defensive Efficiency
32.69
57.95
Combined Efficiency Index Z-score combining attacking and defensive possession-adjusted efficiency.
Positive = above league average.
Negative = below league average.
Formula: EfficiencyIndex = z(AttackEff) − z(DefenceEff)
-3 0 3
Middlesbrough +2.45 Efficiency Index
vs
Millwall -2.45 Efficiency Index
xG data unavailable for both teams. Values estimated using shots and dangerous attacks (proxy). Confidence: Medium.
Middlesbrough
Millwall
AttackEff = xG ÷ pos
DefenceEff = xGA ÷ (1−pos)

Set Pieces Efficiency Attack & Defence

Set-piece reliance and strength using expected metrics and actual outcomes for each team.

Middlesbrough ⚠ Proxy
vs
⚠ Proxy Millwall
Created Set-piece attacking threat
Middlesbrough Millwall
Set-piece xG Share Share of total expected goals generated from set pieces. Higher = more set-piece reliant in attack.
Goals per Match Average set-piece goals scored per match.
0.00 0.00
vs Expected (xG) Goals scored minus set-piece xG. Positive = overperforming; Negative = underperforming expectations.
vs
Conceded Set-piece defensive exposure
Middlesbrough Millwall
Set-piece xGA Share Share of total expected goals conceded from set pieces. Higher = more exposed to set pieces defensively.
Conceded per Match Average set-piece goals conceded per match.
0.00 0.00
vs Expected (xGA) Goals conceded minus set-piece xGA. Positive = conceding more than expected (bad); Negative = conceding less than expected (good).
vs
xG set-piece data unavailable for both teams. Values estimated using proxy metrics (shots, dangerous attacks). Confidence: Medium.
Middlesbrough
Millwall
xG Share = set-piece xG ÷ total xG
vs Expected = goals − set-piece xG

Counter / Transition Attack & Defence

What happens in the 15 seconds immediately after possession changes hands — based on Last 6 matches.

Middlesbrough
vs
Millwall
Attack After Winning Possession transition → offence
Middlesbrough Millwall
Goals per Match Average goals scored within 15s of winning the ball per match. ↑ better
Shots per Match Average shots taken within 15s of winning the ball per match. ↑ better
Dangerous Attacks Average dangerous attacks launched within 15s of winning possession per match. ↑ better
Defence After Losing Possession loss → defensive exposure
Middlesbrough Millwall
Goals Conceded Average goals conceded within 15s of losing the ball per match. ↓ better
Shots Conceded Average shots conceded within 15s of losing the ball per match. ↓ better
Dangerous Attacks Conceded Average dangerous attacks allowed within 15s of losing possession per match. ↓ better
Middlesbrough
Millwall
Window = 15s post-possession change
Index = 0–1 composite score
Pressure Index data not available for this match.

Team Head to Head Last 6 Seasons

Summary of 28 matches between these sides — filtered by competition and venue context.

Middlesbrough MID Home
28 matches
Millwall MLW Away
Match Record
12
Wins
10
6
Draws
6
10
Losses
12
Goals
42
Goals Scored
28
28
Goals Conceded
42
+14
Goal Difference
-14
Expected Goals
0
xG
0
0
xGA
0

Data last updated: 2026-04-04T00:01:06+00:00

STARTING XI

Match Formation 3-4-2-1
Match Formation 4-3-1-2
Pitch
S. Brynn
England
31 S. Brynn
L. Ayling
England
12 L. Ayling
A. Malanda
France
29 A. Malanda
D. Fry
England
6 D. Fry
C. Brittain
Substitution
England
2 C. Brittain
A. Browne
Republic of Ireland
16 A. Browne
A. Morris
United States
18 A. Morris
M. Targett
Substitution
England
3 M. Targett
R. McGree
Australia
8 R. McGree
T. Conway
Scotland
9 T. Conway
D. Strelec
Slovakia
13 D. Strelec
A. Patterson
England
13 A. Patterson
Z. Norton Sturge
England
3 Z. Norton Sturge
J. Cooper
England
5 J. Cooper
C. Taylor
England
6 C. Taylor
T. Crama
France
4 T. Crama
C. De Norre
Substitution
Belgium
24 C. De Norre
B. Mitchell
Substitution
England
8 B. Mitchell
F. Azeez
Substitution
England
11 F. Azeez
C. Neghli
Algeria
10 C. Neghli
J. Coburn
England
19 J. Coburn
M. Ivanović
Substitution
Serbia
9 M. Ivanović

General Information

Date & Time
Apr 03, 2026, 11:30 AM
Competition
2025/2026 Championship, England · Round 40 · Regular Season
Stadium
Riverside Stadium
Capacity
34988
Attendance
32100
Pitch Surface
Grass
Weather
☀️ , Clear
Referees
Emily Carney
Paul Hodskinson
Adam Herczeg
Anthony Backhouse

Statistics

Possession
MID
59%
MLW
41%

Top Statistics

1 Goals 2
4 Big Chances Created 2
19 Shots 3
67 Dangerous attacks 35
61 Possession 39
17 Corners 6
14 Free kicks 4
1 Yellow Cards 1

Match Overview

22 Successful Headers 20
9 Successful Dribbles 5
1 Assists 2
8 Goal Kicks 13
50 Successful Dribbles Percentage 42
24 Throwins 17
18 Dribble Attempts 12
99 Ball Safe 98
12 Goal Attempts 8
2 Substitutions 4
1 Injuries 0

Attacking

90 Attacks 80
3 Big Chances Missed 1

Possession

320 Successful Passes 177
23 Key Passes 9
52 Long Passes 55
76 Successful Passes Percentage 65
419 Passes 273
16 Successful Long Passes 16
31 Successful Long Passes Percentage 29

Defensive

56 Duels Won 40
4 Saves 3
12 Interceptions 8
11 Tackles 11

Build-up

36 Total Crosses 21
12 Accurate Crosses 6

Discipline

4 Fouls 14
1 Offsides 2

Lineup

Referee : Anthony Backhouse

Starting XI

31
Sol Brynn
Sol Brynn Goalkeeper
6
Dael Fry
Dael Fry Defender
12
Luke Ayling
Luke Ayling Defender
29
Adilson Malanda
Adilson Malanda Defender
2
Callum Brittain
Callum Brittain Midfielder
45
Jeremy Sarmiento
Jeremy Sarmiento
Midfielder89'
3
Matt Targett
Matt Targett Midfielder
24
Alex Bangura
Alex Bangura
Defender78'
16
Alan Browne
Alan Browne Midfielder
18
Aidan Morris
Aidan Morris Midfielder
8
Riley McGree
Riley McGree Attacker
9
Tommy Conway
Tommy Conway Attacker
13
David Strelec
David Strelec Attacker
Referee : Anthony Backhouse

Starting XI

13
Anthony Patterson
Anthony Patterson Goalkeeper
3
Zak Sturge
Zak Sturge Defender
4
Tristan Crama
Tristan Crama Defender
5
Jake Cooper
Jake Cooper Defender
6
Caleb Taylor
Caleb Taylor Defender
8
Billy Mitchell
Billy Mitchell Midfielder
25
Luke Cundle
Luke Cundle
Midfielder90+5'
10
Camiel Neghli
Camiel Neghli Midfielder
11
Femi Azeez
Femi Azeez Midfielder
2
Danny McNamara
Danny McNamara
Defender90+5'
24
Casper De Norre
Casper De Norre Midfielder
67
Barry Bannan
Barry Bannan
Midfielder64'
9
Mihailo Ivanović
Mihailo Ivanović Attacker
17
Macaulay Langstaff
Macaulay Langstaff
Attacker85'
19
Josh Coburn
Josh Coburn Attacker
2

Events

2ND-HALF
90+5'
Event
Danny McNamara  Femi Azeez
6th Substitution
90+5'
Event
Luke Cundle Billy Mitchell
5th Substitution
Event
Jeremy Sarmiento Callum Brittain
4th Substitution
89'
86'
Event
Josh Coburn
Right foot shot / 3rd Goal
85'
Event
Macaulay Langstaff Mihailo Ivanović
3rd Substitution
Event
Alex Bangura Matt Targett
2nd Substitution
78'
64'
Event
Barry Bannan Casper De Norre
1st Substitution
58'
Event
Josh Coburn
Right foot shot / 2nd Goal
1ST-HALF
Event
Dael Fry
Header / 1st Goal
26'
Event
Riley McGree
Argument / 2nd Yellowcard
13'
13'
Event
Jake Cooper
Argument / 1st Yellowcard

Match Commentary

90
Update Update
Tommy Conway from Middlesbrough won a free kick on the left wing.
90
Substitution Substitution
Substitution for Millwall: Dan McNamara replaces Femi Azeez.
90
Update Update
The fourth official has indicated that there will be 5 minutes of added time.
90
Attempt Attempt
Billy Mitchell from Millwall had a missed chance, shooting with his right foot from outside the box, but it went high and wide to the right. The assist came from Macaulay Langstaff after a fast break.
90
Update Update
Alex Bangura's header from the center of the box is blocked.
90
Attempt Attempt
Riley McGree's left-footed shot from the center of the box is blocked. Alan Browne provided the assist.
90
Corner Corner
Middlesbrough win a corner after Jake Cooper concedes.
90
Update Update
Riley McGree from Middlesbrough attempts an attack, shooting with his right foot from a difficult position on the right, but the goalkeeper saves it in the center of the goal.
90
Corner Corner
Middlesbrough win a corner after Camiel Neghli concedes.
90
Substitution Substitution
Substitution for Millwall: Luke Cundle replaces Billy Mitchell.
90
Update Update
The second half ends with Middlesbrough losing 1-2 to Millwall.
90
Attempt Attempt
Alan Browne's right-footed shot from the right side of the box is blocked. The assist came from Jeremy Sarmiento.
90
Update Update
Foul committed by Tristan Crama of Millwall.
89
Substitution Substitution
Substitution for Middlesbrough: Jeremy Sarmiento replaces Callum Brittain.
88
Corner Corner
Middlesbrough win a corner after Caleb Taylor concedes.
87
Attempt Attempt
Riley McGree's shot from the right side of the box is blocked.
86
GOAL! GOAL! Important
Goal! Millwall takes the lead 2-1 with Josh Coburn scoring from the left side of the box into the right corner, assisted by Barry Bannan.
85
Update Update
Alex Bangura from Middlesbrough won a free kick in defense.
85
Update Update
Femi Azeez commits a foul for Millwall.
85
Substitution Substitution
Substitution for Millwall: Macaulay Langstaff replaces Mihailo Ivanovic.
84
Corner Corner
Millwall wins a corner after Sol Brynn concedes.
82
Update Update
Foul committed by David Strelec of Middlesbrough.
82
Update Update
Jake Cooper from Millwall won a free kick in defense.
81
Update Update
Mihailo Ivanovic of Millwall is called offside.
80
Update Update
Femi Azeez of Millwall won a free kick on the right wing.
80
Update Update
Foul committed by Adilson Malanda of Middlesbrough.
78
Substitution Substitution
Substitution for Middlesbrough: Alex Bangura replaces Matt Targett due to injury.
76
Update Update
Offside called against Middlesbrough. David Strelec is offside.
76
Update Update
There is a delay in the match due to an injury to Matt Targett from Middlesbrough.
75
Attempt Attempt
Aidan Morris from Middlesbrough has a shot from the center of the box, but it's blocked. David Strelec provided the assist.
74
Attempt Attempt
Tommy Conway's shot from outside the box is blocked. The assist came from Matt Targett.
73
Attempt Attempt
Tommy Conway's shot from the center of the box is blocked. Aidan Morris provided the assist.
73
Corner Corner
Middlesbrough win a corner after Zak Sturge concedes.
69
Attempt Attempt
Barry Bannan from Millwall had a missed chance, shooting with his left foot from outside the box, but it went high and wide to the right.
67
Corner Corner
Middlesbrough win a corner after Anthony Patterson concedes.
67
Update Update
Luke Ayling's header from the center of the box is blocked. The assist came from Matt Targett's cross.
67
Corner Corner
Middlesbrough win a corner after Josh Coburn concedes it.
67
Corner Corner
Luke Ayling from Middlesbrough had a missed chance as he headed the ball from the center of the box, but it went over the bar. The assist came from Matt Targett, who delivered a cross following a corner.
66
Update Update
Foul committed by Jake Cooper of Millwall.
66
Corner Corner
New attacking attempt. Callum Brittain from Middlesbrough takes a right-footed shot from a difficult position and long distance on the left, but it's saved in the top left corner.
66
Update Update
Tommy Conway from Middlesbrough won a free kick on the left wing.
64
Substitution Substitution
Substitution for Millwall: Barry Bannan replaces Casper De Norre.
64
Attempt Attempt
Jake Cooper from Millwall attempts a header from the right side of the six-yard box, but it's saved.
63
Update Update
Zak Sturge's header from inside the six-yard box on the left side is blocked. The assist came from Femi Azeez's cross.
63
Corner Corner
Millwall wins a corner after Luke Ayling concedes.
62
Corner Corner
Femi Azeez from Millwall attempts an attack, shooting with his left foot from the right side of the box, but Sol Brynn from Middlesbrough saves it in the left corner. The assist came from Tristan Crama.
61
Attempt Attempt
Tommy Conway's right-footed shot from outside the box is blocked. The assist came from Riley McGree.
59
Attempt Attempt
Callum Brittain's right-footed shot from the right side of the box is blocked. The assist was provided by Riley McGree.
58
GOAL! GOAL! Important
Goal! The score is now 1-1 between Middlesbrough and Millwall. Josh Coburn scores for Millwall with a right-footed shot from close range into the right corner, assisted by Mihailo Ivanovic following a corner.
57
Corner Corner
Millwall wins a corner after Dael Fry concedes.
54
Update Update
Tommy Conway of Middlesbrough won a free kick in defense.
54
Update Update
Femi Azeez commits a foul against Millwall.
53
Update Update
Sol Brynn from Middlesbrough won a free kick in defense.
53
Update Update
Caleb Taylor commits a foul for Millwall.
53
Update Update
Sol Brynn from Middlesbrough won a free kick in defense.
52
Update Update
New attacking attempt. Matt Targett from Middlesbrough shoots with his left foot from the center of the box, but Anthony Patterson, the goalkeeper for Millwall, saves it in the center of the goal. The assist was provided by David Strelec.
51
Update Update
Foul committed by Tristan Crama of Millwall.
51
Update Update
Tommy Conway from Middlesbrough won a free kick in the defensive area.
46
Update Update
Aidan Morris from Middlesbrough won a free kick in defense.
46
Update Update
Femi Azeez commits a foul for Millwall.
45
Update Update
Femi Azeez commits a foul for Millwall.
45
Update Update
Tommy Conway of Middlesbrough won a free kick on the left wing.
45
Update Update
The fourth official has indicated there will be 2 minutes of added time.
45
Update Update
The first half ends with Middlesbrough leading Millwall 1-0.
45
Corner Corner
Middlesbrough wins a corner after Tristan Crama concedes.
45
Update Update
Tommy Conway from Middlesbrough won a free kick on the left wing.
44
Corner Corner
Millwall wins a corner after Tommy Conway concedes.
44
Corner Corner
Middlesbrough win a corner after Tristan Crama concedes.
43
Corner Corner
Missed chance for Middlesbrough. Dael Fry heads the ball from inside the six-yard box on the left side, but it goes high. The assist came from Matt Targett's cross after a corner.
42
Update Update
Luke Ayling from Middlesbrough won a free kick in defense.
42
Corner Corner
Middlesbrough win a corner after Jake Cooper concedes.
41
Update Update
Foul committed by Josh Coburn of Millwall.
41
Update Update
Matt Targett from Middlesbrough won a free kick in defense.
39
Attempt Attempt
Dael Fry's shot from the center of the box is blocked.
39
Update Update
Femi Azeez fouled a player from Millwall.
38
Attempt Attempt
Dael Fry's right-footed shot from the center of the box is blocked.
38
Corner Corner
Middlesbrough wins a corner after Billy Mitchell concedes.
38
Attempt Attempt
Alan Browne's shot from the center of the box is blocked. The assist came from Matt Targett's cross.
38
Corner Corner
Middlesbrough win a corner after Camiel Neghli concedes.
38
Attempt Attempt
Riley McGree's left-footed shot from the right side of the box is blocked.
37
Update Update
Dael Fry's header from the right side of the six-yard box is blocked. The assist came from Callum Brittain's cross.
36
Corner Corner
Middlesbrough win a corner after Tristan Crama concedes.
35
Update Update
Billy Mitchell of Millwall won a free kick in defense.
35
Update Update
Foul committed by David Strelec of Middlesbrough.
33
Corner Corner
Middlesbrough win a corner after Zak Sturge concedes.
33
Attempt Attempt
David Strelec from Middlesbrough has a left-footed shot from outside the box, but it is blocked.
32
Update Update
Foul committed by Josh Coburn for Millwall.
32
Update Update
Luke Ayling of Middlesbrough won a free kick in defense.
30
Corner Corner
Millwall wins a corner after Adilson Malanda concedes.
30
Attempt Attempt
Mihailo Ivanovic's right-footed shot from outside the box is blocked.
29
Attempt Attempt
Riley McGree's left-footed shot from the center of the box is blocked. The assist was provided by Aidan Morris.
29
Attempt Attempt
Riley McGree from Middlesbrough misses a chance as his right-footed shot from the right side of the box goes over the bar. Callum Brittain provided the assist after a fast break.
26
GOAL! GOAL! Important
Goal! Middlesbrough lead 1-0 against Millwall. Dael Fry scores with a header from a few meters into the left corner, assisted by Alan Browne's cross following a corner.
25
Corner Corner
Middlesbrough win a corner after Jake Cooper concedes.
23
Corner Corner
Middlesbrough win a corner after Casper De Norre concedes.
22
Attempt Attempt
Callum Brittain's right-footed shot from outside the box is blocked.
21
Corner Corner
Middlesbrough win a corner after Casper De Norre concedes.
19
Update Update
Callum Brittain fouled a Middlesbrough player.
19
Update Update
Zak Sturge from Millwall won a free kick in defense.
17
Attempt Attempt
New attacking attempt. Callum Brittain from Middlesbrough takes a right-footed shot from a difficult position on the right, but it's saved.
16
Attempt Attempt
Camiel Neghli's right-footed shot from the center of the box is blocked. The assist came from Femi Azeez.
14
Update Update
Matt Targett of Middlesbrough won a free kick in defense.
14
Update Update
Matt Targett from Middlesbrough won a free kick in defense.
13
Yellow Card Yellow Card Important
Jake Cooper from Millwall receives a yellow card.
13
Yellow Card Yellow Card Important
Jake Cooper from Millwall receives a yellow card.
12
Update Update
Fouled by Casper De Norre of Millwall.
12
Update Update
Tommy Conway from Middlesbrough won a free kick in defense.
10
Corner Corner
Corner awarded to Millwall after Dael Fry concedes.
8
Update Update
Adilson Malanda of Middlesbrough misses a chance, heading the ball from the center of the box high and wide to the right. The assist came from Callum Brittain's cross.
7
Update Update
Foul committed by Josh Coburn of Millwall.
7
Update Update
Luke Ayling from Middlesbrough won a free kick in an attacking position.
6
Corner Corner
New attacking attempt. Casper De Norre of Millwall takes a right-footed shot from outside the box, but Sol Brynn of Middlesbrough saves it in the right corner. The assist comes from Mihailo Ivanovic.
5
Corner Corner
Luke Ayling from Middlesbrough missed a chance, shooting with his left foot from the center of the box after a corner.
5
Corner Corner
Missed chance for Middlesbrough. Dael Fry shot with his right foot from inside the six-yard box, but it went high to the left. The assist came from Luke Ayling after a corner.
4
Update Update
Offside called against Millwall. Josh Coburn is offside.
4
Corner Corner
Middlesbrough wins a corner after Camiel Neghli concedes.
3
Corner Corner
Alan Browne from Middlesbrough missed a header from the right side of the six-yard box, sending the ball over the bar. The assist came from Matt Targett, who delivered a cross following a corner.
2
Attempt Attempt
Tommy Conway's shot from the center of the box is blocked. Callum Brittain provided the assist.
2
Corner Corner
Middlesbrough wins a corner after Tristan Crama concedes.

CONCLUSION

Structural assessment: Millwall exhibited a significant deviation from the pre-match structural baseline. Efficiency outcome: Possession-adjusted chance creation finished in line with projected levels. Result alignment: The final score was contrary to the pre-match probability model. Market alignment: The match result was outside the projected probability range.

Explore League Previews