EFL League Two
The English Football League Two, simply known as League Two and for sponsorship purposes as Sky Bet League Two, is a professional association football league in England. EFL League Two is the third division of the English Football League and the fourth-highest tier in the English football league system, after the Premier League, EFL Championship and the EFL League One. The EFL League Two is contested by 24 clubs.
Introduced for the 2004–05 English football season as Football League Two, it is a rebrand of the former Football League Third Division.
As of the 2025–26 season, Newport County hold the longest tenure in this division following their promotion in the 2012–13 season. There are currently two former Premier League clubs competing in this division: Oldham Athletic and Swindon Town.
The current holders are Doncaster Rovers.
Structure
There are 24 clubs in this division. Each club plays each of the other clubs twice for a total of 46 matches per season and is awarded three points for a win, one for a draw and no points for a loss. From these points a league table is constructed.At the end of each season the top three teams, together with the winner of the play-offs between the teams which finished in the fourth to seventh positions, are promoted to EFL League One and are replaced by the four teams that finished at the bottom of that division.
Similarly, the two teams that finished at the bottom of League Two are relegated to the National League and are replaced by the team that finished first and the team that won the second through seventh place play-off in that division. Technically a team can be reprieved from relegation if the team replacing them does not have a ground suitable for League football, but in practice this is a non-factor because every team currently in the National League has a ground that meets the League criteria. The other way that a team can be spared relegation is if another team either resigns or is expelled from the EFL.
Final league position is determined, in order, by points obtained, goal difference, goals scored, a mini-league of the results between two or more teams ranked using the previous three criteria, and finally a series of one or more play-off matches.
There is a mandatory wage cap in this division that limits spending on players' wages to 55% of club turnover.
Current members
| Team | Location | Stadium | Capacity |
| Accrington Stanley | Accrington | Crown Ground | 5,450 |
| Barnet | London | The Hive Stadium | 6,418 |
| Barrow | Barrow-in-Furness | Holker Street | 6,500 |
| Bristol Rovers | Bristol | Memorial Stadium | 9,832 |
| Bromley | London | Hayes Lane | 5,300 |
| Cambridge United | Cambridge | Abbey Stadium | 8,127 |
| Cheltenham Town | Cheltenham | Whaddon Road | 7,066 |
| Chesterfield | Chesterfield | SMH Group Stadium | 10,504 |
| Colchester United | Colchester | Colchester Community Stadium | 10,105 |
| Crawley Town | Crawley | Broadfield Stadium | 5,996 |
| Crewe Alexandra | Crewe | Gresty Road | 10,153 |
| Fleetwood Town | Fleetwood | Highbury Stadium | 5,327 |
| Gillingham | Gillingham | Priestfield Stadium | 11,582 |
| Grimsby Town | Cleethorpes | Blundell Park | 9,052 |
| Harrogate Town | Harrogate | Wetherby Road | 5,222 |
| Milton Keynes Dons | Milton Keynes | Stadium MK | 30,500 |
| Newport County | Newport | Rodney Parade | 7,850 |
| Notts County | Nottingham | Meadow Lane | 19,841 |
| Oldham Athletic | Oldham | Boundary Park | 13,513 |
| Salford City | Salford | Moor Lane | 5,108 |
| Shrewsbury Town | Shrewsbury | New Meadow | 9,875 |
| Swindon Town | Swindon | County Ground | 15,728 |
| Tranmere Rovers | Birkenhead | Prenton Park | 16,789 |
| Walsall | Walsall | Bescot Stadium | 11,300 |
Teams promoted from League Two
| Season | Winner | Points | Runner-up | Points | Third place | Points | Promoted via play-off | League position | Points |
| 2004–05 | Yeovil Town | 83 | Scunthorpe United | 80 | Swansea City | 80 | Southend United | 4th | 78 |
| 2005–06 | Carlisle United | 86 | Northampton Town | 83 | Leyton Orient | 81 | Cheltenham Town | 5th | 72 |
| 2006–07 | Walsall | 89 | Hartlepool United | 88 | Swindon Town | 85 | Bristol Rovers | 6th | 72 |
| 2007–08 | Milton Keynes Dons | 97 | Peterborough United | 92 | Hereford United | 88 | Stockport County | 4th | 82 |
| 2008–09 | Brentford | 85 | Exeter City | 79 | Wycombe Wanderers | 78 | Gillingham | 5th | 75 |
| 2009–10 | Notts County | 93 | Bournemouth | 83 | Rochdale | 82 | Dagenham & Redbridge | 7th | 72 |
| 2010–11 | Chesterfield | 86 | Bury | 81 | Wycombe Wanderers | 81 | Stevenage | 6th | 69 |
| 2011–12 | Swindon Town | 93 | Shrewsbury Town | 88 | Crawley Town | 84 | Crewe Alexandra | 7th | 72 |
| 2012–13 | Gillingham | 83 | Rotherham United | 79 | Port Vale | 78 | Bradford City | 7th | 69 |
| 2013–14 | Chesterfield | 84 | Scunthorpe United | 81 | Rochdale | 81 | Fleetwood Town | 4th | 76 |
| 2014–15 | Burton Albion | 94 | Shrewsbury Town | 89 | Bury | 85 | Southend United | 5th | 84 |
| 2015–16 | Northampton Town | 99 | Oxford United | 86 | Bristol Rovers | 85 | AFC Wimbledon | 7th | 75 |
| 2016–17 | Portsmouth | 87 | Plymouth Argyle | 87 | Doncaster Rovers | 85 | Blackpool | 7th | 70 |
| 2017–18 | Accrington Stanley | 93 | Luton Town | 88 | Wycombe Wanderers | 84 | Coventry City | 6th | 75 |
| 2018–19 | Lincoln City | 85 | Bury | 79 | Milton Keynes Dons | 79 | Tranmere Rovers | 6th | 73 |
| 2019–20 | Swindon Town | 88.32 | Crewe Alexandra | 85.56 | Plymouth Argyle | 84.64 | Northampton Town | 7th | 72.22 |
| 2020–21 | Cheltenham Town | 82 | Cambridge United | 80 | Bolton Wanderers | 79 | Morecambe | 4th | 78 |
| 2021–22 | Forest Green Rovers | 84 | Exeter City | 84 | Bristol Rovers | 80 | Port Vale | 5th | 78 |
| 2022–23 | Leyton Orient | 91 | Stevenage | 85 | Northampton Town | 83 | Carlisle United | 5th | 76 |
| 2023–24 | Stockport County | 92 | Wrexham | 88 | Mansfield Town | 86 | Crawley Town | 7th | 70 |
| 2024–25 | Doncaster Rovers | 84 | Port Vale | 80 | Bradford City | 78 | AFC Wimbledon | 5th | 73 |
Play-off results
| Season | Semi-final | Semi-final | Final |
| 2004–05 | Lincoln City 1–0 Macclesfield Town Northampton Town 0–0 Southend United | Macclesfield Town 1–1 Lincoln City Southend United 1–0 Northampton Town | Lincoln City 0–2 Southend United |
| 2005–06 | Lincoln City 0–1 Grimsby Town Wycombe Wanderers 1–2 Cheltenham Town | Grimsby Town 2–1 Lincoln City Cheltenham Town 0–0 Wycombe Wanderers | Grimsby Town 0–1 Cheltenham Town |
| 2006–07 | Bristol Rovers 2–1 Lincoln City Shrewsbury Town 0–0 Milton Keynes Dons | Lincoln City 3–5 Bristol Rovers Milton Keynes Dons 1–2 Shrewsbury Town | Bristol Rovers 3–1 Shrewsbury Town |
| 2007–08 | Darlington 2–1 Rochdale Wycombe Wanderers 1–1 Stockport County | Rochdale 2–1 Darlington Stockport County 1–0 Wycombe Wanderers | Rochdale 2–3 Stockport County |
| 2008–09 | Shrewsbury Town 0–1 Bury Rochdale 0–0 Gillingham | Bury 0–1 Shrewsbury Town Gillingham 2–1 Rochdale | Gillingham 1–0 Shrewsbury Town |
| 2009–10 | Dagenham & Redbridge 6–0 Morecambe Aldershot Town 0–1 Rotherham United | Morecambe 2–1 Dagenham & Redbridge Rotherham United 2–0 Aldershot Town | Dagenham & Redbridge 3–2 Rotherham United |
| 2010–11 | Torquay United 2–0 Shrewsbury Town Stevenage 2–0 Accrington Stanley | Shrewsbury Town 0–0 Torquay United Accrington Stanley 0–1 Stevenage | Stevenage 1–0 Torquay United |
| 2011–12 | Crewe Alexandra 1–0 Southend United Cheltenham Town 2–0 Torquay United | Southend United 2–2 Crewe Alexandra Torquay United 1–2 Cheltenham Town | Cheltenham Town 0–2 Crewe Alexandra |
| 2012–13 | Bradford City 2–3 Burton Albion Northampton Town 1–0 Cheltenham Town | Burton Albion 1–3 Bradford City Cheltenham Town 0–1 Northampton Town | Bradford City 3–0 Northampton Town |
| 2013–14 | Burton Albion 1–0 Southend United York City 0–1 Fleetwood Town | Southend United 2–2 Burton Albion Fleetwood Town 0–0 York City | Burton Albion 0–1 Fleetwood Town |
| 2014–15 | Stevenage 1–1 Southend United Plymouth Argyle 2–3 Wycombe Wanderers | Southend United 3–1 Stevenage Wycombe Wanderers 2–1 Plymouth Argyle | Southend United 1–1 Wycombe Wanderers |
| 2015–16 | Portsmouth 2–2 Plymouth Argyle AFC Wimbledon 1–0 Accrington Stanley | Plymouth Argyle 1–0 Portsmouth Accrington Stanley 2–2 AFC Wimbledon | AFC Wimbledon 2–0 Plymouth Argyle |
| 2016–17 | Blackpool 3–2 Luton Town Carlisle United 3–3 Exeter City | Luton Town 3–3 Blackpool Exeter City 3–2 Carlisle United | Blackpool 2–1 Exeter City |
| 2017–18 | Lincoln City 0–0 Exeter City Coventry City 1–1 Notts County | Exeter City 3–1 Lincoln City Notts County 1–4 Coventry City | Coventry City 3–1 Exeter City |
| 2018–19 | Newport County 1–1 Mansfield Town Tranmere Rovers 1–0 Forest Green Rovers | Mansfield Town 0–0 Newport County Forest Green Rovers 1–1 Tranmere Rovers | Newport County 0–1 Tranmere Rovers |
| 2019–20 | Colchester United 1–0 Exeter City Northampton Town 0–2 Cheltenham Town | Exeter City 3–1 Colchester United Cheltenham Town 0–3 Northampton Town | Exeter City 0–4 Northampton Town |
| 2020–21 | Newport County 2–0 Forest Green Rovers Tranmere Rovers 1–2 Morecambe | Forest Green Rovers 4–3 Newport County Morecambe 1–1 Tranmere Rovers | Morecambe 1–0 Newport County |
| 2021–22 | Mansfield Town 2–1 Northampton Town Swindon Town 2–1 Port Vale | Northampton Town 0-1 Mansfield Town Port Vale 1–1 Swindon Town | Mansfield Town 0–3 Port Vale |
| 2022–23 | Salford City 1–0 Stockport County Bradford City 1–0 Carlisle United | Stockport County 2–1 Salford City Carlisle United 3–1 Bradford City | Stockport County 1–1 Carlisle United |
| 2023–24 | Crawley Town 3–0 Milton Keynes Dons Crewe Alexandra 0–2 Doncaster Rovers | Milton Keynes Dons 1–5 Crawley Town Doncaster Rovers 0–2 Crewe Alexandra | Crawley Town 2–0 Crewe Alexandra |
| 2024–25 | Notts County 0–1 AFC Wimbledon Chesterfield 0–2 Walsall | AFC Wimbledon 1-0 Notts County Walsall 2-1 Chesterfield | AFC Wimbledon 1-0 Walsall |