Clubs
| Club | Seasons | Apps | Goals | Assists |
|---|---|---|---|---|
| Burton | 2026/27 | 11 | 0 | 0 |
| MK Dons | 2025/26 | 23 | 2 | 1 |
| Stockport | 2020/21 – 2024/25 | 172 | 37 | 14 |
| Hamilton Academical | 2019/20 – 2020/21 | 25 | 1 | — |
| Hamilton Academical U21 | 2019 | 2 | 0 | — |
| Brighton U23 | 2016 – 2018 | 15 | 0 | — |
| Brighton | 2018/19 | 1 | 0 | — |
| Brighton U21 | 2017 | 3 | 0 | — |
Transfers
| Date | From | To | Type |
|---|---|---|---|
| 6 Feb 2021 | Hamilton Academical | Stockport County | Free |
| 1 Jul 2019 | Brighton | Hamilton Academical | — |
| 1 Jul 2025 | Stockport County | Milton Keynes Dons | Free Transfer |
| 30 Jun 2026 | Milton Keynes Dons | Burton Albion | Loan |
| 29 Jun 2026 | Milton Keynes Dons | Collar Will | Free agent |
| 13 Aug 2026 | Milton Keynes Dons | Burton Albion | Loan |
Season by season
| Season | Competition | Club | Apps | Starts | Min | Goals | Assists | Yellow | Red | Rating |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/27 | League One | Burton | 11 | 6 | 528 | 0 | 0 | 1 | 0 | 6.05 |
| 2025/26 | League Cup | MK Dons | 1 | 1 | 71 | 0 | 0 | 0 | 0 | 5.60 |
| 2025/26 | League Two | MK Dons | 22 | 13 | 1204 | 2 | 1 | 3 | 0 | 6.50 |
| 2024/25 | League One | Stockport | 43 | 41 | 3317 | 8 | 2 | 3 | 0 | 7.02 |
| 2024/25 | FA Cup | Stockport | 1 | 1 | 90 | — | 0 | 0 | 0 | 6.20 |
| 2024/25 | EFL Trophy | Stockport | 2 | 0 | 56 | 0 | 0 | 0 | 0 | 6.70 |
| 2023/24 | League Two | Stockport | 20 | 18 | 1589 | 4 | 6 | 2 | 0 | 7.20 |
| 2023/24 | FA Cup | Stockport | 1 | 1 | 90 | — | 0 | 0 | 0 | 6.20 |
| 2023/24 | League Cup | Stockport | 1 | 1 | 71 | 0 | — | 0 | 0 | 7.00 |
| 2023/24 | EFL Trophy | Stockport | 1 | 0 | 10 | 0 | — | 0 | 0 | — |
| 2022/23 | League Two | Stockport | 42 | 39 | 3411 | 10 | 6 | 3 | 0 | 7.06 |
| 2022/23 | EFL Trophy | Stockport | 1 | 0 | 33 | 0 | — | 0 | 0 | — |
| 2022/23 | FA Cup | Stockport | 4 | 3 | 294 | 3 | — | 0 | 0 | 9.70 |
| 2021/22 | National League | Stockport | 36 | 30 | 2546 | 9 | — | 2 | 1 | — |
| 2021/22 | FA Trophy | Stockport | 2 | 2 | 180 | 2 | — | 0 | 0 | — |
| 2021/22 | FA Cup | Stockport | 3 | 2 | 153 | 0 | — | 1 | 0 | 6.70 |
| 2020/21 | National League | Stockport | 15 | 10 | 839 | 1 | — | 2 | 0 | — |
| 2020/21 | Premiership | Hamilton Academical | 6 | 5 | 399 | 0 | — | 0 | 0 | 6.73 |
| 2019/20 | Premiership | Hamilton Academical | 16 | 14 | 1258 | 1 | — | 3 | 0 | 6.75 |
| 2019 | Challenge Cup | Hamilton Academical U21 | 2 | 2 | 140 | 0 | — | 0 | 0 | — |
| 2019/20 | FA Cup | Hamilton Academical | 2 | 1 | 147 | 0 | — | 0 | 0 | — |
| 2019/20 | League Cup | Hamilton Academical | 1 | 1 | 76 | 0 | — | 0 | 0 | — |
| 2018 | Premier League 2 | Brighton U23 | 10 | 8 | 712 | 0 | — | 0 | 0 | — |
| 2018/19 | League Cup | Brighton | 1 | 1 | 90 | 0 | — | 0 | 0 | 6.80 |
| 2018 | Premier League International Cup | Brighton U23 | 1 | 1 | 90 | 0 | — | 0 | 0 | — |
| 2017 | EFL Trophy | Brighton U21 | 3 | 3 | 270 | 0 | — | 0 | 0 | — |
| 2016 | EFL Trophy | Brighton U23 | 4 | 4 | 360 | 0 | — | 0 | 0 | — |
Availability history
| Reason | From | Until | Days |
|---|---|---|---|
| Injury | 21 Sept 2019 | 7 Nov 2019 | 47 |
| Injury | 6 Aug 2022 | 25 Aug 2022 | 19 |
| Injury | 7 Mar 2020 | 10 Sept 2020 | 187 |
| Injury | 8 Nov 2020 | 25 Jan 2021 | 78 |
Trophies
| Competition | Season | Place |
|---|---|---|
| National League (England) | 2021/2022 | Winner |
| League Two (England) | 2023/2024 | Winner |
