Walsall Stay Unbeaten, Salford Make It Six, and Swindon Stun Barnet
Competition: Sky Bet League Two
Dates: Tuesday 20 October 2026
Matches Played: 12
Total Goals: 38 (Avg: 3.17 per game)
A midweek round of League Two brought late drama and two unmistakable trend lines: Salford City won a sixth consecutive match at Bristol Rovers while Walsall’s 3-0 dismissal of Oldham kept them as the EFL’s only unbeaten side. Swindon Town produced the shock of the midweek by winning 3-1 at Barnet despite finishing with only 1.46 xG to the hosts’ 3.42. Cheltenham halted a three-game losing run with a 4-2 home win over Fleetwood Town in the featured match, and three fixtures turned on goals in the final five minutes.
Gameweek 12 Results Overview
All Results – Goals vs xG Analysis
League Two - Matchday 12 Review
Season 2026-27 | Post-Match Analysis
Rotherham
Newport County
Bristol Rovers
Salford City
Northampton
Tranmere
Rochdale
Grimsby
Walsall
Oldham
Chesterfield
Colchester
Crawley Town
Shrewsbury
Exeter City
Crewe
Barnet
Swindon Town
Cheltenham
Fleetwood Town
York
Accrington ST
Gillingham
Port ValeGoals vs Expected Goals
Results at a Glance
⚽ All Results

Updated League Two Table
Clubs have played between 10 and 12 matches: 4 clubs have one game in hand (Colchester, Oldham, Walsall, York); 4 clubs have two games in hand (Barnet, Crawley Town, Northampton, Port Vale). The table below is live, so any gap involving them is provisional.
🏆 League Two Table
League Two
Updated: 03 Nov 2026, 1:42 PM
Key Talking Points
📰 The Big Stories
- Salford City’s 2-1 win at Bristol Rovers was their sixth straight league victory, but the 0.70 xG they produced at the Memorial Stadium tells a different story from their 25-point haul; Daniel Udoh’s early close-range goal proved the difference.
- Walsall’s 3-0 win over Oldham kept them unbeaten in 11 league matches and drew chants against Micky Mellon from the travelling support at full time, as reported by The Oldham Times, with Aaron Pressley’s double taking him to seven for the season.
- Swindon’s 3-1 win at Barnet gave them a first away win of the campaign and handed Barnet a first league defeat of the season; Aaron Drinan scored twice in two first-half minutes while Connor Ripley kept a 3.42-xG onslaught at bay.
Match Summaries
Crawley Town 2–3 Shrewsbury
🏟️ Broadfield Stadium
Ade Adeyemo put Crawley in front early, but Shrewsbury’s late surge turned the game at Broadfield Stadium. Josh Davison levelled after 62 minutes and George Lloyd put the visitors ahead eight minutes from time. Crawley’s response came from an 85th-minute goal, only for Davison to pop up again in the 94th minute and win it. Shrewsbury finished with 1.78 xG to Crawley’s 1.42, a fair reflection of their edges in the final third. Crawley are now winless in eight league matches and remain on five points, while Shrewsbury have won back-to-back games and move to 17 points.
⚽ Goals: Ade Adeyemo (4′), Josh Davison (62′), George Lloyd (82′), scorer not recorded (85′), Josh Davison (90+4′)
Key Moment: Josh Davison’s 90+4 winner after Crawley had pulled level five minutes earlier.
What It Means: Shrewsbury make it two wins in a row and climb to 17 points; Crawley remain on five points with an eighth game without victory.
Northampton 0–1 Tranmere
🏟️ Sixfields Stadium
Northampton generated the better chances with 1.37 xG but could not find a way past Tranmere after Bobby Faulkner’s 37th-minute goal. Tranmere’s 0.84 xG was modest, but they protected the lead. The win is a third of the campaign for Tranmere and lifts them to 15 points, while Northampton’s defeat leaves them on 10 and underlines how few goals they have scored at home: two in five there, the fewest in the division.
⚽ Goals: Bobby Faulkner (37′)
Key Moment: Bobby Faulkner’s first-half goal gave Tranmere a lead their defence never surrendered.
What It Means: Tranmere climb to 15 points with a third win of the season; Northampton stay on 10 and lose at home again.
Chesterfield 1–1 Colchester
🏟️ SMH Group Stadium
Chesterfield had more than enough chances to win this match, finishing with 2.23 xG to Colchester’s 0.72, but only Dilan Markanday’s 29th-minute goal found the net. Colchester’s late equaliser came from Ben Perry in the 82nd minute, a reward for a defensive performance that restricted Chesterfield in the second half. The point extends Colchester’s winless run to eight league games, though they will see this as a point gained given the underlying numbers. Chesterfield have now gone three matches without a win and will rue the failure to turn their xG advantage into a second goal.
⚽ Goals: Dilan Markanday (29′), Ben Perry (82′)
Key Moment: Ben Perry’s late equaliser rewarded Colchester a point.
What It Means: Colchester extend their winless run to eight but take an unlikely point; Chesterfield are winless in three despite another strong xG total.
Bristol Rovers 1–2 Salford City
🏟️ Memorial Stadium
Bristol Rovers were the better side for long spells and finished with 1.69 xG to Salford’s 0.70, but Salford’s early efficiency proved decisive. Brendan Sarpong-Wiredu’s sixth-minute goal and Daniel Udoh’s close-range second put the visitors 2-0 up before half-time. Jack Sparkes halved the deficit with a well-taken free-kick after the break, but Salford managed the remainder and won a sixth straight league match. Rovers have now lost four in a row and the gap between their expected output and their results is becoming a theme under Steve Evans.
⚽ Goals: Brendan Sarpong-Wiredu (6′), Daniel Udoh (20′), Jack Sparkes (57′)
Key Moment: Daniel Udoh’s goal after 20 minutes gave Salford the cushion they eventually protected despite Bristol Rovers’ second-half pressure.
What It Means: Salford make it six straight wins and strengthen their position on 25 points; Bristol Rovers slump to a fourth consecutive defeat.
Barnet 1–3 Swindon Town
🏟️ The Hive Stadium
Barnet’s first league defeat of the season came despite 3.42 xG to Swindon’s 1.46. Mitch Clark’s eighth-minute strike and Aaron Drinan’s two goals in two first-half minutes put Swindon 3-0 up, while Connor Ripley produced a first-half rescue act in goal that kept Barnet out during an absurd sequence of close-range attempts. Kabongo Tshimanga pulled one back at the death but it was no consolation. Swindon’s first away win of the campaign lifts them to 15 points, while Barnet stay on 21 and lose for the first time this season.
⚽ Goals: Mitchell Clark (8′), Aaron Drinan (35′), Aaron Drinan (37′), Kabongo Tshimanga (90′)
Key Moment: Aaron Drinan’s second in the 37th minute made it 3-0 after Connor Ripley had kept Barnet out through a sequence of five shots from inside the area in ten seconds.
What It Means: Swindon earn a first away win of the season and move to 15 points; Barnet suffer a first league defeat of the season and miss a chance to close to within a point of Salford at the top.
Walsall 3–0 Oldham
🏟️ Bescot Stadium
Walsall kept their unbeaten league record intact with a 3-0 win over Oldham, with chants against Micky Mellon from the travelling support at full time, as reported by The Oldham Times. Tai Sodje’s 21st-minute opener came after Oldham’s own free-kick was caught and cleared long, and Aaron Pressley doubled the lead five minutes later from a one-on-one. Pressley’s second-half penalty ended the contest, and Walsall’s 2.29 xG to Oldham’s 1.53 underlined the home side’s control. Oldham have now lost five of their last seven league games and have 11 points from 11.
⚽ Goals: Tai Sodje (21′), Aaron Pressley (26′), Aaron Pressley (58′ pen)
Key Moment: Aaron Pressley’s penalty just before the hour made Walsall’s lead safe and broke Oldham’s remaining resistance.
What It Means: Walsall stay unbeaten through 11 league matches and remain the EFL’s only unbeaten side; Oldham lose again and stay on 11 points.
Rotherham 2–2 Newport County
🏟️ Aesseal New York Stadium
Rotherham flew into a 2-0 lead inside 12 minutes through Paul Mullin’s penalty and Aaron Nemane’s finish, but Newport County recovered with a penalty of their own from Harrison Biggins and Ged Garner’s leveller nine minutes after the restart. Newport finished with 1.92 xG to Rotherham’s 1.44, reflecting their dominance after the early storm. The point extends Newport’s unbeaten league run to seven matches, though they remain without an away league win this season. Rotherham are now winless in five and let a two-goal lead inside 12 minutes become a draw.
⚽ Goals: Paul Mullin (4′ pen), Aaron Nemane (12′), Harrison Biggins (28′ pen), Gerard Garner (54′)
Key Moment: Gerard Garner’s 54th-minute equaliser capped Newport’s recovery from a two-goal deficit inside 12 minutes.
What It Means: Newport stretch their unbeaten league run to seven without an away win; Rotherham remain winless in five and move to 11 points.
Exeter City 2–0 Crewe
🏟️ St James Park
Exeter City ended Crewe’s three-match winning run with a performance that was solid rather than spectacular. Anthony Scully’s 21st-minute penalty gave City the lead, and Reece Cole’s stoppage-time second made the result safe. Exeter’s 1.91 xG to Crewe’s 0.70 reflected their control, and for all Crewe’s early-season steadiness, they produced little in the final third at St James Park. Exeter are now unbeaten in four league matches and move to 16 points, while Crewe remain on 21 and lose on the road for the first time this season.
⚽ Goals: Anthony Scully (21′ pen), Reece Cole (90+4′)
Key Moment: Reece Cole’s 90+4 goal put the match beyond doubt after Crewe had offered little threat throughout.
What It Means: Exeter move to 16 points with a fourth game unbeaten; Crewe suffer a first league defeat of the season and miss the chance to move within a point of Salford.
Rochdale 2–2 Grimsby
🏟️ Spotland Stadium
Rochdale and Grimsby each led in a game that finished level. Dajaune Brown gave Rochdale the lead after 38 minutes, but Kieran Green and Jamie Walker turned the game in Grimsby’s favour before Ian Henderson’s 88th-minute equaliser rescued a point for the hosts. Grimsby shaded the xG count 2.39 to 2.10. Rochdale are now winless in three, while Grimsby’s winless run extends to five despite a much-improved attacking display.
⚽ Goals: Dajaune Brown (38′), Kieran Green (57′), Jamie Walker (72′), Ian Henderson (88′)
Key Moment: Ian Henderson’s late equaliser denied Grimsby a first win in five league games.
What It Means: Rochdale pick up a point but are winless in three; Grimsby’s five-game winless run continues despite an away xG edge.
York 1–1 Accrington ST
🏟️ LNER Community Stadium
Accrington looked set for an away win after Josh Woods headed them in front on 61 minutes, but Ollie Pearce’s 90th-minute header rescued a point for York City. York finished with 1.87 xG to Accrington’s 1.05, and needed the late intervention to avoid a first home league loss of the season. The draw means York have drawn three consecutive league games, while Accrington extended their unbeaten league run to six matches and remain hard to beat.
⚽ Goals: Josh Woods (61′), Ollie Pearce (90′)
Key Moment: Ollie Pearce’s 90th-minute header levelled the score and preserved York’s home fixture as a source of frustration rather than defeat.
What It Means: York extend their run of draws to three; Accrington stay unbeaten in six.
Gillingham 1–1 Port Vale
🏟️ Priestfield Stadium
Gillingham led through Ronan Hale’s first-half penalty but could not hold the advantage against a Port Vale side that found an equaliser through Keyrol Figueroa on 66 minutes. Gillingham’s 1.70 xG to Port Vale’s 0.88 suggested the hosts had the better chances, but they lacked the second goal that would have made their dominance count. Port Vale’s point extends their unbeaten run to three league games, while Gillingham have now gone two matches without a win and miss a chance to move to 19.
⚽ Goals: Ronan Hale (42′ pen), Keyrol Figueroa (66′)
Key Moment: Keyrol Figueroa’s 66th-minute equaliser earned Port Vale a point their 0.88 xG did not fully argue for.
What It Means: Port Vale move to 12 points and are unbeaten in three; Gillingham go to 17 and are winless in two.
⭐ Match of the Round: Cheltenham 4–2 Fleetwood Town
🏟️ Whaddon Road
Cheltenham stopped a three-match slide with a 4-2 win over Fleetwood Town at Whaddon Road that was both relieving and faintly misleading on the underlying numbers. A Jay Lynch own goal after 17 minutes and Kirsten Otchere’s 25th-minute finish gave the hosts a fast start, and Jake Evans made it 3-0 six minutes before the break. Fleetwood’s Ched Evans twice dragged the deficit back, first from open play on 50 minutes and then from the penalty spot, but Freddie Willcox’s 80th-minute goal made the points safe. Fleetwood actually shaded xG 2.38 to 1.91, yet their defensive generosity meant they left with nothing. The win lifts Cheltenham to 18 points from 12 games and halts a run of three straight defeats.
⚽ Goals: Jay Lynch (17′ og), Kirsten Otchere (25′), Jake Evans (39′), Ched Evans (50′), Ched Evans (65′ pen), Freddie Willcox (80′)
Key Moment: Freddie Willcox’s 80th-minute fourth proved the line Fleetwood could not answer after Ched Evans had twice cut into the deficit, the second time bringing Fleetwood within one.
What It Means: Cheltenham end a three-match losing run and move to 18 points; Fleetwood stay on 14 after a third away defeat of the season.

Gameweek Awards
⭐ Player of the Week: Aaron Drinan (Swindon Town)
Drinan’s 35th-minute finish doubled Swindon’s lead and his 37th-minute strike made it three, turning a chaotic first half at The Hive into an away win. His movement in behind Barnet’s high line was the outlet Swindon have been missing in their away games this season.
🎯 Decisive Goal of the Week
Josh Davison (Shrewsbury) vs Crawley Town — Davison’s 90+4 winner came after Crawley had pulled level five minutes earlier, giving Shrewsbury a 3-2 away win and their second straight victory.
💪 Performance of the Week
Swindon Town‘s 3-1 against Barnet — Swindon won at Barnet despite facing 3.42 xG, with Aaron Drinan scoring twice and Connor Ripley turning in a first-half goalkeeping performance that kept a one-sided spell from becoming a rout.
Manager Watch
In the Spotlight
Micky Mellon (Oldham) — Micky Mellon’s Oldham lost 3-0 at Walsall, a fifth defeat in seven league games. “You’ve got to accept it, that’s the nature of the job,” Mellon told The Oldham Times. The Oldham Times reported chants for his removal from the travelling support at full time.
Top Scorers Update
⚽ League Two Top Scorers
Looking Ahead: Gameweek 13
👀 Key Fixtures Next Week
- Cheltenham vs Newport County (Sat 24 Oct 12:30)
- Bristol Rovers vs Swindon Town (Sat 24 Oct 12:30)
- Northampton vs Colchester (Sat 24 Oct 12:30)
- Crawley Town vs Tranmere (Sat 24 Oct 15:00)
- Exeter City vs Fleetwood Town (Sat 24 Oct 15:00)
- Rotherham vs Shrewsbury (Sat 24 Oct 15:00)
- Barnet vs Oldham (Sat 24 Oct 15:00)
- Rochdale vs Accrington ST (Sat 24 Oct 15:00)
Playoff Picture — ML Expected Points
Promotion and Playoff Race — Projected Finish
🎯 Projected Final Points
| Pos | Team | Current Pts | Games Left | ML xPts | Projected Total |
|---|---|---|---|---|---|
| 1 | Salford City | 25 | 34 | +54.3 | ~79 |
| 2 | Barnet | 21 | 36 | +53.2 | ~74 |
| 4 | Walsall | 19 | 35 | +52.7 | ~72 |
| 3 | Crewe | 21 | 34 | +48.8 | ~70 |
| 6 | York | 17 | 35 | +48.4 | ~65 |
| 7 | Gillingham | 17 | 34 | +44.4 | ~61 |
| 5 | Cheltenham | 18 | 34 | +42.4 | ~60 |
ML xPts = sum of expected points from remaining fixtures per the BTP model (3·P(win) + 1·P(draw)). Projected total indicative only.
Relegation Picture — ML Expected Points
Relegation Battle — Projected Finish
🎯 Relegation Battle — Projected Final Points
| Pos | Team | Current Pts | Games Left | ML xPts | Projected Total |
|---|---|---|---|---|---|
| 19 | Colchester | 12 | 35 | +47.4 | ~59 |
| 20 | Port Vale | 12 | 36 | +51.9 | ~64 |
| 21 | Oldham | 11 | 35 | +43.2 | ~54 |
| 22 | Rotherham | 11 | 34 | +40.8 | ~52 |
| 23 | Northampton | 10 | 36 | +47.8 | ~58 |
| 24 | Crawley Town | 5 | 36 | +42.3 | ~47 |
ML xPts = sum of expected points from remaining fixtures per the BTP model (3·P(win) + 1·P(draw)). Projected total indicative only.
How Did Our Predictions Do?
🔮 Predictions Review
Correct Results: 5/12
Model Record: 35/78 (44.9%) — scored against the picks published in each preview since 2026-09-07 and reviewed after each round
Best Call: The model’s best call was Shrewsbury’s away win at Crawley, given only 38.2% confidence but delivered in stoppage time.
Worst Call: The biggest miss was Barnet at home to Swindon: the model’s 49.3% home pick lost 3-1, the highest-confidence miss of the round.
| Fixture | Actual Result | Model Pick | Hit? |
|---|---|---|---|
| Northampton vs Tranmere | 0-1 | HOME (46%) | ✗ |
| York vs Accrington ST | 1-1 | HOME (43%) | ✗ |
| Exeter City vs Crewe | 2-0 | HOME (41%) | ✓ |
| Walsall vs Oldham | 3-0 | HOME (48%) | ✓ |
| Bristol Rovers vs Salford City | 1-2 | AWAY (44%) | ✓ |
| Cheltenham vs Fleetwood Town | 4-2 | HOME (38%) | ✓ |
| Crawley Town vs Shrewsbury | 2-3 | AWAY (38%) | ✓ |
| Rochdale vs Grimsby | 2-2 | HOME (48%) | ✗ |
| Rotherham vs Newport County | 2-2 | AWAY (36%) | ✗ |
| Barnet vs Swindon Town | 1-3 | HOME (49%) | ✗ |
| Chesterfield vs Colchester | 1-1 | HOME (44%) | ✗ |
| Gillingham vs Port Vale | 1-1 | HOME (40%) | ✗ |
The model picked only home or away winners and was punished by a draw-heavy midweek, with five draws and just five correct calls from twelve.
What We Learned
📚 Five Things We Learned
- Walsall’s 3-0 win over Oldham kept them unbeaten through 11 league games, and 16 scored against 7 conceded across 11 unbeaten matches is the clearest evidence of their control.
- Barnet’s 3.42 xG in a 1-3 home defeat to Swindon was the round’s most extreme divergence; Aaron Drinan’s double and Connor Ripley’s saves made the hosts pay for every missed chance.
- Salford City’s six straight wins now include two away games in which they produced less than 1.0 xG; their 0.70 at Bristol Rovers shows they are beating the model’s underlying numbers rather than chasing them.
- A late goal won it for Shrewsbury and saved points for York and Rochdale, but none of those three had a comfortable final ten minutes; the round had five draws and several stoppage-time interventions.
- Cheltenham’s 4-2 home win ended a three-game losing run, but their 1.91 xG against Fleetwood’s 2.38 means the scoreline flattered the hosts; they will need better defensive structure against sides that take their chances.
Conclusion
The top end of League Two is beginning to separate: Salford have 25 points, Barnet 21, Walsall 19, and the chasing pack is packed. With so many draws this midweek, the next round will test whether the likes of York and Newport can turn resilience into wins. Cheltenham have bought themselves breathing space, but only if the goals keep flowing.

