Middlesbrough 2–2 Millwall
What the chances were worth
What the model expected
Its probabilities for this match, logged before kick-off and never changed. The result is highlighted.
Before kick-off the model favoured Middlesbrough to win (51%); it finished with the draw. A miss — it gave the actual result 26% beforehand.
One match tells you nothing on its own — whether these percentages are any good is the whole point of the calibration page, where every one of them is scored.
The brain read
Middlesbrough carried the greater threat — shots 22–11, 7–4 on target, 12–11 from inside the box. Match xG wasn't available for this game, so this read is built on the shot picture only. Middlesbrough held 80% of the ball.
A second opinion written by rule from the numbers on this page — where the shot picture and the xG disagree, it says so rather than picking a winner. Backward-looking only; it claims nothing about any future result.
The match in numbers
As returned by the data feed at full time. Bars show each side’s share of the stat.
Confirmed line-ups
Captured from the official team sheets in the last hour before kick-off. The pick test requires these to be in before any call counts.
Middlesbrough 4-2-3-1
- 1 R. Vítek (G)
- 2 C. Brittain (D)
- 4 A. Phillips (D)
- 6 S. Berhalter (M)
- 7 W. Lankshear (F)
- 8 R. McGree (M)
- 9 T. Conway (M)
- 10 A. Morris (M)
- 11 A. Cozier-Duberry (M)
- 12 L. Ayling (D)
- 30 Neto Borges (D)
Bench: M. Peart-Harris, R. Pukštas, D. Strelec, J. Sarmiento, M. Arfsten, S. Brynn, S. Byram, Leo Castledine, K. Joseph
Millwall 4-2-3-1
- 2 J. Osei-Tutu (D)
- 3 Zak Norton Sturge (D)
- 5 J. Cooper (D)
- 6 C. Taylor (D)
- 7 T. Arconte (M)
- 10 C. Neghli (M)
- 13 L. Dykes (F)
- 14 Jenson Metcalfe (M)
- 15 M. Crocombe (G)
- 17 M. Sykes (M)
- 49 D. Mazou-Sacko (M)
Bench: L. Cundle, Y. Issoufou, D. Kelly, Z. Lovelace, F. Marschall, Alfie Massey, Tristan Parkes, E. Baggott, D. Batth
The market’s read
| Market | Consensus price | Implied chance | Move |
|---|---|---|---|
| Double chance Middlesbrough or draw | 1.11 | 84.3% | +3.3 pts |
| Double chance Millwall or draw | 2.62 | 35.7% | -5.4 pts |
| Double chance either team | 1.17 | 80.0% | +2.1 pts |
| Draw no bet — Middlesbrough | 1.16 | 80.2% | +4.9 pts |
| Draw no bet — Millwall | 4.70 | 19.8% | -4.9 pts |
| Over 1.5 goals | 1.15 | 81.2% | +2.9 pts |
| Over 2.5 goals | 1.54 | 60.6% | +2.6 pts |
| Over 3.5 goals | 2.38 | 39.6% | +3.1 pts |
| Both teams to score | 1.67 | 55.7% | -0.4 pts |
| Middlesbrough over 1.5 team goals | 1.45 | 64.3% | +5.4 pts |
| Millwall over 1.5 team goals | 3.59 | 25.9% | -2.1 pts |
| Middlesbrough clean sheet | 2.38 | 39.1% | +1.6 pts |
| Millwall clean sheet | 7.00 | 13.6% | -2.2 pts |
Shortest-priced scorelines: 2-1 7.81 · 2-0 7.93 · 1-0 8.34 · 1-1 8.56 · 3-1 10.58
Consensus of bookmaker prices captured 2026-09-15 18:30 UTC. These are the closing prices — the market’s last word before kick-off. The Move column is how each market’s implied chance has shifted since the first price we captured: green = the chance has risen (the price shortened, backing coming in), red = the chance has fallen (the price eased out — what punters call the price ‘drifting’).
Head to head
| Date | Home | Score | Away |
|---|---|---|---|
| 03 Apr 26 | Middlesbrough | 1-2 | Millwall |
| 16 Aug 25 | Millwall | 0-3 | Middlesbrough |