Bristol City v Millwall result
Team pages: Bristol City · Millwall · Head-to-head
Bristol City 3–2 Millwall — Bristol City won this Championship match.
The result
Bristol City beat Millwall 3–2 at Ashton Gate in the Championship on Sunday 2 January. Bristol City have scored in five consecutive matches in all competitions. Millwall have scored in nine consecutive matches in all competitions.
The goals
Bristol City came from behind: Millwall led 2–1 at half-time. The goals — Bristol City: Andreas Weimann (7’; 73’, assisted by Han-Noah Massengo; 85’); Millwall: Thomas Bradshaw (23’, assisted by Murray Wallace) and B. Afobe (29’ pen).
Discipline
S. Hooper showed six yellow cards — against 3.4 yellows a game across the last 10 matches refereed (all competitions). The bookings — Bristol City: Ryley Towler (28’), C. O'Dowda (48’), Antoine Semenyo (67’) and Nahki Wells (90+5’); Millwall: Jake Cooper (20’) and B. Afobe (84’).
Who stood out
By TACTIX Impact for this match, Andreas Weimann (Bristol City) 12.7, Murray Wallace (Millwall) 6.9 and B. Afobe (Millwall) 6.8 led the match.
Next up
Bristol City next travel to Stoke City on 24 October 2026.
Millwall next travel to Portsmouth on 24 October 2026.
Written from the matches TACTIX holds for both sides; each figure names the games it is counted over.
Next for Bristol City: Stoke City v Bristol City, Saturday 24 October — the preview. Next for Millwall: Portsmouth v Millwall, Saturday 24 October — the preview.
The numbers
- Result: Bristol City 3–2 Millwall · Championship
- Venue: Ashton Gate · Bristol
- Referee: S. Hooper
- Head-to-head (last 6): Bristol City 1 · draws 1 · Millwall 4 · 2.67 goals/game
- Recent form: Bristol City 1W 1D 3L · Millwall 2W 1D 2L
Bristol City 3–2 Millwall (Championship): this fixture is settled. TACTIX’s pre-match coverage ran across every major market, and every graded call — wins and losses — is in the live track record (as of 10 May 2026). See the live track record →
Key stats
Per game, last 8 completed matches, to 30 December 2021. Over/under figures use standard thresholds, not bookmaker lines.
| Per game | Bristol City for / against | Line | Millwall for / against |
|---|---|---|---|
| Goals scored | 1.25 for · 1.63 against n 8 Last 5 | 2.5standard | 1.25 for · 1 against n 8 Last 5 |
| Corners won | 4.17 for · 5.5 against n 6 Last 5 | 9.5standard | 4.17 for · 5.67 against n 6 Last 5 |
| Shots | 8.5 for · 14 against n 6 Last 5 | 19.5standard | 11 for · 12.83 against n 6 Last 5 |
| Shots on target | 2.83 for · 4.17 against n 6 Last 5 | 8.5standard | 2.83 for · 3.83 against n 6 Last 5 |
| Fouls committed | 10.5 for · 11 against n 6 Last 5 | 21.5standard | 12.33 for · 10.17 against n 6 Last 5 |
| Cards shown | 3 for · 2.5 against n 6 Last 5 | 3.5standard | 2.17 for · 1.33 against n 6 Last 5 |
Bristol City
| Player | Mins | Fouls committed 1+2+ | Fouls won 1+2+ | Likely duel |
|---|---|---|---|---|
| N. Wells n 8 | 23.5 | 2.9 | 1.9 | — |
| A. Semenyo n 8 | 52.3 | 2.2 | 2.2 | — |
| C. Pring n 8 | 45 | 2 | 0.8 | — |
| H. Massengo n 8 | 66.9 | 1.7 | 2 | — |
| Alex Scott n 8 | 78.6 | 1.3 | 2.1 | — |
| Player | Mins | Shots 1+2+ | Shots on target 1+2+ |
|---|---|---|---|
| N. Wells n 8 | 23.5 | 2.9 | 1.4 |
| A. Semenyo n 8 | 52.3 | 2.4 | 0.9 |
| C. Martin n 8 | 84.3 | 1.7 | 0.5 |
| T. Bakinson n 8 | 72.3 | 1.2 | 0.8 |
| A. Weimann n 8 | 90 | 1 | 0.5 |
| Player | Mins | Goals 1+2+ | Assists 1+2+ |
|---|---|---|---|
| A. Weimann n 8 | 90 | 0.4 | 0.3 |
| A. Semenyo n 8 | 52.3 | 0.2 | 0.4 |
| C. Martin n 8 | 84.3 | 0.1 | 0.3 |
| Alex Scott n 8 | 78.6 | 0.3 | 0 |
| T. Bakinson n 8 | 72.3 | 0.2 | 0 |
| Player | Mins | Tackles 1+2+ |
|---|---|---|
| C. Pring n 8 | 45 | 5.3 |
| R. Atkinson n 8 | 62.6 | 3.2 |
| M. James n 8 | 77.1 | 2.8 |
| J. Williams n 8 | 50 | 2.5 |
| C. O'Dowda n 8 | 79.4 | 2.4 |
| Player | Mins | Saves 2+3+ |
|---|---|---|
| M. O’Leary n 8 | 90 | 3.9 |
| D. Bentley n 8 | 90 | 2.1 |
Millwall
| Player | Mins | Fouls committed 1+2+ | Fouls won 1+2+ | Likely duel |
|---|---|---|---|---|
| M. Kieftenbeld n 8 | 47.5 | 2.8 | 0.5 | — |
| M. Bennett n 8 | 44.1 | 2.5 | 1.8 | — |
| M. Smith n 8 | 20.8 | 2.2 | 0 | — |
| J. Cooper n 8 | 90 | 1.6 | 0.6 | — |
| G. Evans n 8 | 70.5 | 1.6 | 0.6 | — |
| Player | Mins | Shots 1+2+ | Shots on target 1+2+ |
|---|---|---|---|
| M. Smith n 8 | 20.8 | 2.7 | 0 |
| T. Bradshaw n 8 | 67.1 | 2.3 | 1.7 |
| B. Afobe n 8 | 77.9 | 2.2 | 1.2 |
| J. Wallace n 8 | 86.6 | 1.3 | 0.5 |
| S. Malone n 8 | 69.1 | 1.3 | 0.5 |
| Player | Mins | Goals 1+2+ | Assists 1+2+ |
|---|---|---|---|
| T. Bradshaw n 8 | 67.1 | 1 | 0.2 |
| R. Leonard n 8 | 81.6 | 0 | 0.4 |
| B. Afobe n 8 | 77.9 | 0.3 | 0.1 |
| G. Evans n 8 | 70.5 | 0.2 | 0.2 |
| S. Malone n 8 | 69.1 | 0.2 | 0.2 |
| Player | Mins | Tackles 1+2+ |
|---|---|---|
| D. McNamara n 8 | 60.1 | 2.4 |
| M. Kieftenbeld n 8 | 47.5 | 2.4 |
| G. Saville n 8 | 87.9 | 2.3 |
| M. Wallace n 8 | 87.1 | 2.1 |
| S. Hutchinson n 8 | 90 | 1.8 |
| Player | Mins | Saves 2+3+ |
|---|---|---|
| B. Bialkowski n 8 | 90 | 3 |
The day’s free picks, by email
Every morning at 07:30 UK: the model’s free picks, each with its confidence tier and that tier’s settled record, misses included. No tips, no guarantees, one click to leave.
Match statistics & details
| Bristol City | Millwall | |
|---|---|---|
| 58% | Possession | 42% |
| 12 | Shots | 11 |
| 8 | Shots on target | 3 |
| 1 | Shots off target | 7 |
| 3 | Blocked shots | 1 |
| 7 | Shots inside the box | 5 |
| 5 | Corners | 3 |
| 2 | Offsides | 2 |
| 14 | Fouls | 11 |
| 4 | Yellow cards | 2 |
| 0 | Red cards | 0 |
| 1 | Saves | 4 |
| 512 | Passes | 366 |
| 77% | Pass accuracy | 69% |
Bristol City player stats
| Player | Min | G | A | Sh | SoT | KP | Tkl | Cards | Rating |
|---|---|---|---|---|---|---|---|---|---|
| M. O’Leary | 96 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 6.2 |
| Z. Vyner | 96 | 0 | 0 | 0 | 0 | 1 | 2 | 0 | 6.5 |
| T. Kalas | 96 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 7.2 |
| C. Pring | 96 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 6.7 |
| M. James | 96 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 6.3 |
| A. Weimann | 96 | 3 | 0 | 4 | 4 | 1 | 0 | 0 | 9.2 |
| Alex Scott | 96 | 0 | 0 | 2 | 2 | 2 | 2 | 0 | 6.9 |
| C. O'Dowda | 96 | 0 | 0 | 0 | 0 | 0 | 4 | Y | 6.6 |
| A. Semenyo | 95 | 0 | 0 | 1 | 1 | 0 | 0 | Y | 6.7 |
| R. Towler | 45 | 0 | 0 | 0 | 0 | 0 | 0 | Y | 5.9 |
| A. Benarous | 45 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 5.9 |
| H. Massengo sub | 51 | 0 | 1 | 1 | 1 | 1 | 2 | 0 | 7.3 |
| C. Martin sub | 51 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 6.7 |
| N. Wells sub | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Y | – |
Millwall player stats
| Player | Min | G | A | Sh | SoT | KP | Tkl | Cards | Rating |
|---|---|---|---|---|---|---|---|---|---|
| B. Bialkowski | 96 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 6 |
| S. Hutchinson | 96 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 6.3 |
| J. Cooper | 96 | 0 | 0 | 0 | 0 | 2 | 3 | Y | 6.6 |
| D. McNamara | 96 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 6.5 |
| G. Saville | 96 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 6.9 |
| M. Wallace | 96 | 0 | 1 | 1 | 0 | 1 | 2 | 0 | 7.2 |
| T. Bradshaw | 96 | 1 | 0 | 3 | 1 | 1 | 1 | 0 | 7.5 |
| B. Afobe | 96 | 1 | 0 | 1 | 1 | 1 | 1 | Y | 7.3 |
| A. Pearce | 89 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 6.7 |
| B. Mitchell | 89 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 6.9 |
| S. Ojo | 68 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 6.7 |
| G. Evans sub | 28 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 7 |
| S. Malone sub | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | – |
| M. Smith sub | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | – |
Sh = shots, SoT = shots on target, KP = key passes, Tkl = tackles; – = not recorded for that player. Rating is the data provider’s.
Form, head-to-head & standings
The numbers behind Bristol City v Millwall — recent results, past meetings and where each side sits. (TACTIX’s model forecast is in the projections below.)
- 2021-09-29 Millwall 1–0 Bristol City
- 2021-05-01 Millwall 4–1 Bristol City
- 2021-01-23 Millwall 0–3 Bristol City
- 2020-12-15 Bristol City 0–2 Millwall
- 2020-02-29 Millwall 1–1 Bristol City
- 2019-12-10 Bristol City 1–2 Millwall
The full post-match picture
Pro members see this match shot by shot — every attempt with its expected-goals value, the situation and shot-type breakdowns, the xG timeline, and how the model’s pre-match probabilities compared with what happened. Plus every market the model graded for this fixture.
Try Pro for £1.00 — the full match analysis£1.00 for 14 days, then £9.99/month. Cancel in the trial and pay nothing more.
Frequently asked questions
- What is the head-to-head record between Bristol City and Millwall?
- In their last 6 meetings, Bristol City won 1, Millwall won 4 and there was 1 draw, averaging 2.67 goals per game.
- What is the recent form of Bristol City and Millwall?
- Recent form — Bristol City 1W 1D 3L; Millwall 2W 1D 2L.
Today’s boards
Every fixture kicking off in the UK day, and the fixtures where the free pick leads with each market.
This page is generated from TACTIX’s match data by our software and checked automatically; data as of . How it works → · Report an error
How our model works · Live track record · Predictions are model output, not betting advice.