Derby twice come from behind but remain winless as Millwall thrash Norwich
Competition: Sky Bet Championship
Dates: Saturday 22 August – Sunday 23 August 2026
Matches Played: 12
Total Goals: 35 (Avg: 2.92 per game)
Gameweek 2 produced 35 goals across 12 matches, but the more telling numbers were in the xG columns. West Ham lost 1-2 at home to Charlton despite a 2.84–0.62 advantage, while QPR drew 0-0 against Bolton with 1.82 xG to the visitors’ 0.19. Derby were twice forced to come from behind in a 2-2 draw with Cardiff, and Millwall laid down an early marker by dismantling Norwich 3-0 at The Den. Sheffield United’s attacking blank extended to another 0-0 at Swansea despite 1.46 xG.
Gameweek 2 Results Overview
All Results – Goals vs xG Analysis
Championship - Matchday 2 Review
Season 2026-27 | Post-Match Analysis
Birmingham
Bristol City
Millwall
Norwich
Lincoln
Portsmouth
Southampton
Stoke City
West Ham
Charlton
Preston
Wolves
Blackburn
Middlesbrough
Derby
Cardiff
QPR
Bolton
Swansea
Sheffield Utd
Wrexham
Watford
West Brom
BurnleyGoals vs Expected Goals
Results at a Glance
⚽ All Results
Updated Championship Table
🏆 Championship Table
Championship Table
Key Talking Points
📰 The Big Stories
- Alex Neil’s Millwall overwhelmed Norwich in every phase, Arconte’s double exposing the lack of intensity Philippe Clement criticised afterwards.
- Charlton’s 0.62 xG was enough to beat West Ham’s 2.84, a stark reminder that chance quality and defensive organisation still trump volume.
- Sheffield United have now drawn 0-0 in both league games despite 1.46 xG at Swansea, and Chris Wilder’s search for a cutting edge grows more urgent.
Match Summaries
Millwall 3–0 Norwich
🏟️ The Den
Alex Neil’s Millwall produced the performance of the gameweek at The Den, easing past Norwich 3-0 with a display built on physical duels and set-piece superiority. Arconte opened the scoring inside 18 minutes and doubled the lead just before the hour, before Luke Cundle added a late third. Norwich’s 1.02 xG told the story of a side that rarely threatened, and Philippe Clement’s post-match assessment — that his side were beaten in the duels and second balls — was damning. The Canaries now have an early away-day problem; Millwall look like a side comfortable with the division’s grind.
⚽ Goals: T. Arconte (18′), T. Arconte (58′), Luke Cundle (84′)
Key Moment: Arconte’s second on 58 minutes effectively ended the contest after Norwich failed to build any momentum.
What It Means: Norwich’s early-season optimism takes a hit; Millwall send a message to the league’s fancied sides.
Birmingham 2–2 Bristol City
🏟️ St. Andrew’s @ Knighthead Park
Birmingham needed a 90th-minute Demarai Gray equaliser to salvage a 2-2 draw after Dominic Ballard’s 85th-minute goal looked to have won it for Bristol City. Scott Twine had put the visitors ahead in the first half, but Sam Tickle levelled before the interval. The xG was tight at 1.98 to 1.43 in Birmingham’s favour, but the home side’s habit of conceding late goals is becoming a concern. Bristol City will feel they did enough to take all three points, while Birmingham remain without a win from two home games.
⚽ Goals: Scott Twine (33′), Sam Tickle (42′ og), Dominic Ballard (85′), Demarai Gray (90′ pen)
Key Moment: Gray’s late leveller rescued a point but masked Birmingham’s defensive lapses in transition.
What It Means: Birmingham’s early home form is stuttering; Bristol City show they will be a stubborn away side.
Lincoln 1–3 Portsmouth
🏟️ LNER stadium
Lincoln took an early lead through Ryan Kavuma-McQueen but were eventually overrun by a Portsmouth side that scored three times from an xG of just 1.21. Adrian Segecic equalised on 16 minutes, Reeco Hackett-Fairchild put Pompey ahead before the break, and Ebou Adams added a third on 69 minutes. Lincoln’s 2.32 xG suggests they created enough to take something, but their finishing was wasteful and their defending on transitions porous. Portsmouth’s clinical edge, absent in their opener, returned in style. Lincoln are winless after two games and face an early season reality check.
⚽ Goals: Ryan Kavuma-McQueen (7′), Adrian Segecic (16′), Reeco Hackett-Fairchild (32′), Ebou Adams (69′)
Key Moment: Hackett-Fairchild’s 32nd-minute goal, against the run of xG, shifted the game’s momentum decisively before half-time.
What It Means: Pompey pick up a valuable away win; Lincoln’s wait for a first point continues.
Preston 1–3 Wolves
🏟️ Deepdale
Wolves took a clinical 3-1 win at Deepdale, with Fer López on target twice, but the home side’s 0.66 xG told of a limited attacking display deep into the game. López gave Wolves an 8th-minute lead, and though Adam Armstrong equalised on 71 minutes, the visitors responded through López again eight minutes later and Jordan Thompson in stoppage time. Preston’s off-field ownership uncertainty adds another layer to a season that already looks challenging. Wolves, by contrast, travel with purpose and a ruthless edge on the break.
⚽ Goals: Fer López (8′), Adam Armstrong (71′), Fer López (82′), Jordan Thompson (90′)
Key Moment: López’s second on 82 minutes, moments after Preston had drawn level, was a brutal counter-punch.
What It Means: Wolves move to two wins from two; Preston’s early home form is a worry.
QPR 0–0 Bolton
🏟️ Loftus Road
QPR dominated possession and territory but could not find a way past Bolton in a 0-0 draw at Loftus Road. The hosts finished with 1.82 xG to Bolton’s 0.19, yet a combination of poor final balls, fine blocks and a lack of composure in the box kept the game scoreless. Ilias Chair’s season tally may be two, but he and his teammates left their shooting boots at home. Bolton will be delighted with a point, though their inability to create anything of note suggests this was more about QPR’s wastefulness than their own defensive excellence.
⚽ Goals: No scorers recorded
Key Moment: QPR’s failure to convert 1.82 xG summed up the afternoon.
What It Means: QPR drop points in a fixture they controlled; Bolton escape with an unlikely clean sheet.
West Ham 1–2 Charlton
🏟️ London Stadium
West Ham were made to pay for their profligacy, losing 1-2 to Charlton despite a 2.84 xG. Lloyd Jones and Tyreece Campbell had the visitors two up before Joël Piroe’s 74th-minute reply gave the hosts hope. Charlton’s defensive discipline and counter-attacking verve earned them a famous away win.
⚽ Goals: Lloyd Jones (7′), Tyreece Campbell (56′), Joël Piroe (74′)
Key Moment: Campbell’s 56th-minute goal, after West Ham had dominated but squandered chances, proved the decisive blow.
What It Means: West Ham’s home form is already a concern; Charlton’s smash-and-grab adds early intrigue.
Southampton 3–1 Stoke City
🏟️ St. Mary’s Stadium
Southampton responded to a midweek cup exit by beating Stoke 3-1 at St Mary’s, with late goals from Divin Mubama and Ryan Manning adding gloss to a performance that deserved the points. Cyle Larin gave Saints an early lead, but Ethan Galbraith’s equaliser threatened to turn the game. The hosts’ 2.32 xG reflected their control, and when Mubama struck on 89 minutes the game was beyond Stoke. Tonda Eckert’s side are still balancing transfer uncertainty with on-pitch demands, but this was a much-needed league win.
⚽ Goals: Cyle Larin (8′), Ethan Galbraith (26′), Divin Mubama (89′), Ryan Manning (90′)
Key Moment: Mubama’s 89th-minute goal broke Stoke’s resistance after a spell of pressure.
What It Means: Saints register their first league win; Stoke’s early inconsistency continues.
Wrexham 1–1 Watford
🏟️ Racecourse Ground
Wrexham were left frustrated after a 1-1 draw at the Racecourse Ground, where they outshot and outplayed Watford but could not find a winner. Luca Kjerrumgaard put the hosts ahead on 14 minutes, only for Daniel Imray to equalise eight minutes later. The home side’s 1.92 xG to Watford’s 0.65 told of a one-sided contest in terms of chances, yet a resolute visiting defence and some hasty finishing meant the points were shared. Wrexham’s side are still searching for the ruthless edge that carried them through League One.
⚽ Goals: Luca Kjerrumgaard (14′), Daniel Imray (22′)
Key Moment: Imray’s equaliser forced Wrexham to chase the game, but they lacked the calmness to unlock Watford’s block.
What It Means: Wrexham remain unbeaten but have dropped four points from winning positions at home.
Blackburn 2–1 Middlesbrough
🏟️ Ewood Park
Blackburn came from behind to beat Middlesbrough 2-1 at Ewood Park, with Andri Guðjohnsen and Todd Cantwell scoring in a six-minute spell after the break. Jeremy Sarmiento had given Boro an early lead, and the visitors’ 1.36 xG suggested they created the better chances overall. But Rovers’ 0.95 xG was enough on a day when Middlesbrough’s finishing faltered. Tony Mowbray’s side are showing early resilience, while Kim Hellberg will be left to rue missed opportunities as his side’s strong start stalls.
⚽ Goals: Jeremy Sarmiento (12′), Andri Guðjohnsen (49′), Todd Cantwell (55′)
Key Moment: Cantwell’s 55th-minute winner, moments after Guðjohnsen’s equaliser, turned the game on its head.
What It Means: Blackburn move to two wins from two; Boro’s defensive solidity is not yet matched by conversion.
Swansea 0–0 Sheffield Utd
🏟️ Swansea.com Stadium
Sheffield United’s scoring drought deepened with a second consecutive goalless draw in the league, this time at Swansea. The Blades produced 1.46 xG to the hosts’ 0.57, but once again lacked the final pass or finish to turn territory into goals. Chris Wilder’s side have now gone 180 league minutes without scoring. Swansea, for their part, will take the point and hope the clean sheet provides a platform. The Blades’ promotion credentials are being tested early.
⚽ Goals: No scorers recorded
Key Moment: Sheffield United’s inability to turn 1.46 xG into a winner summed up the visitors’ frustration.
What It Means: Sheffield United’s attacking numbers remain solid but the table does not reward xG; Swansea steal a point.
West Brom 3–1 Burnley
🏟️ The Hawthorns
West Brom came from behind to beat Burnley 3-1 at The Hawthorns, with Isaac Price scoring twice after half-time. Callum Styles gave the hosts an early lead, but Harry Whitwell equalised for Burnley on 18 minutes. Price’s 46th-minute strike restored the lead in the first minute of the second half, and he added a third on 65 minutes. Burnley’s 1.18 xG was respectable, but they were undone by West Brom’s direct running and set-piece delivery. This was a statement win for a side many expect to challenge.
⚽ Goals: Callum Styles (8′), Harry Whitwell (18′), Isaac Price (46′), Isaac Price (65′)
Key Moment: Price’s goal immediately after the restart put West Brom in control and deflated Burnley.
What It Means: West Brom take six points from their opening two; Burnley’s away form is a warning.
⭐ Match of the Round: Derby 2–2 Cardiff
🏟️ Pride Park | 👥 Attendance: —
Derby twice came from behind to draw 2-2 with Cardiff at Pride Park, a result that satisfied neither side. Cian Ashford put Cardiff ahead on 19 minutes, but Carlton Morris equalised on 26. Yousef Salech restored the Welsh club’s lead six minutes before the break, only for Bobby Clark to level again four minutes after the restart. Cardiff’s 1.98 xG to Derby’s 1.62 suggested the visitors created the better openings, especially on the counter, but Derby’s resilience kept them in the game. Both teams remain winless after two matches, and the manner of the draw will do little to settle early-season questions about either squad’s ceiling.
⚽ Goals: Cian Ashford (19′), Carlton Morris (26′), Yousef Salech (39′), Bobby Clark (49′)
Key Moment: Bobby Clark’s 49th-minute equaliser, so soon after Cardiff had retaken the lead, stopped the game from slipping away from Derby and set up a scrappy final half-hour.
What It Means: Derby avoid defeat but stay without a win; Cardiff will feel they left two points in the East Midlands.
Gameweek Awards
⭐ Player of the Week: T. Arconte (Millwall)
Scored twice in Millwall’s 3-0 win over Norwich, his second on 58 minutes effectively killing the game. The forward’s movement and physicality unsettled Norwich’s back line all afternoon, and his finishing gave Alex Neil’s side the kind of early-season statement they craved.
🎯 Goal of the Week
Todd Cantwell (Blackburn) vs Middlesbrough — Cantwell’s 55th-minute strike at Ewood Park, coming six minutes after Blackburn had levelled, was the game’s decisive moment and a finish of genuine quality from the edge of the box.
💪 Performance of the Week
Charlton‘s 2-1 away win against West Ham — Charlton produced a classic away performance at London Stadium, conceding 2.84 xG but escaping with a 2-1 win thanks to clinical finishing, disciplined blocks, and a refusal to be beaten by West Ham’s volume of chances.
Managerial Watch
🔥 Under Pressure
Philippe Clement (Norwich) — After Norwich’s 3-0 defeat at Millwall, Clement called it “a really big wake up call” and said his side were “bullied on the duels, second balls”. A second straight defeat without scoring would sharpen the scrutiny.
Top Scorers Update
⚽ Championship Top Scorers
Looking Ahead: Gameweek 3
👀 Key Fixtures Next Week
- Wrexham vs Birmingham (Fri 28 Aug 19:00)
- Wolves vs Stoke City (Sat 29 Aug 11:30)
- Derby vs Swansea (Sat 29 Aug 11:30)
- Middlesbrough vs West Brom (Sat 29 Aug 11:30)
- Bolton vs Lincoln (Sat 29 Aug 14:00)
- Watford vs West Ham (Sat 29 Aug 14:00)
- Norwich vs Burnley (Sat 29 Aug 14:00)
- Southampton vs Millwall (Sat 29 Aug 14:00)
Playoff Picture — ML Expected Points
Projections resume once every club has played five matches — before then there is not enough of this season’s data to model a finishing position.
Relegation Picture — ML Expected Points
Projections resume once every club has played five matches — before then there is not enough of this season’s data to model a finishing position.
How Did Our Predictions Do?
🔮 Predictions Review
Correct Results: 6/12
Correct Scores: 0/12
Season Record: 32/67 (47.8%) since 2026-04-14
Best Call: Southampton’s home win over Stoke City, given 65.7% confidence, was the model’s most assured correct call, even if the 3-1 scoreline flattered the hosts slightly.
Worst Call: The model’s 68.4% confidence in Swansea beating Sheffield United was the biggest miss of the gameweek, as the sides played out a 0-0 draw.
| Fixture | Score | Model Pick | Hit? |
|---|---|---|---|
| Millwall vs Norwich | 3-0 | HOME (60%) | ✓ |
| Birmingham vs Bristol City | 2-2 | HOME (59%) | ✗ |
| Lincoln vs Portsmouth | 1-3 | AWAY (49%) | ✓ |
| Swansea vs Sheffield Utd | 0-0 | HOME (68%) | ✗ |
| Blackburn vs Middlesbrough | 2-1 | HOME (43%) | ✓ |
| Southampton vs Stoke City | 3-1 | HOME (66%) | ✓ |
| QPR vs Bolton | 0-0 | HOME (58%) | ✗ |
| Preston vs Wolves | 1-3 | AWAY (49%) | ✓ |
| Wrexham vs Watford | 1-1 | HOME (59%) | ✗ |
| Derby vs Cardiff | 2-2 | HOME (53%) | ✗ |
| West Ham vs Charlton | 1-2 | HOME (48%) | ✗ |
| West Brom vs Burnley | 3-1 | HOME (54%) | ✓ |
The model leaned heavily on home favourites and underestimated the likelihood of low-scoring draws, with four of its six misses coming in games it had favoured the home side that ended level.
What We Learned
📚 Five Things We Learned
- West Ham’s 2.84 xG in a 1-2 home defeat to Charlton shows that chance volume without composure is a hollow metric — Charlton’s 0.62 xG was enough because they took the game’s two best moments.
- Millwall’s 3-0 dismantling of Norwich under Alex Neil reinforced that Championship matches are often won in duels and second balls, not possession stats.
- Sheffield United’s second straight league 0-0, despite 1.46 xG at Swansea, points to a finishing problem that could undermine their campaign if not addressed.
- QPR’s failure to score against a Bolton side with 0.19 xG at Loftus Road highlights a home-side mentality issue that no amount of creative midfield play can mask.
- West Brom’s Isaac Price double against Burnley underlined the value of midfield runners arriving late in the box — a trend that may decide promotion battles.
Conclusion
Gameweek 3 arrives with transfer deadline pressure and a fixture list that will test the early front-runners. Derby need to turn draws into wins, Norwich must respond to Clement’s challenge, and Sheffield United cannot keep waiting for xG to turn into points. The Championship’s early-season picture is already taking a familiar, relentless shape.
Check back later this week for our full Gameweek 3 preview!

