| Playing Time | Performance | Per 90 Minutes | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2014-2015 | 18 | Rochdale | eng ENG | FA Cup | 0 | 0 | Matches | |||||||||||||||
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 18 | 16 | 1,472 | 16.4 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 2 | 1 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 25 | 22 | 1,865 | 20.7 | 0 | 3 | 3 | 0 | 0 | 0 | 7 | 0 | 0.00 | 0.14 | 0.14 | 0.00 | 0.14 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 2 | 2 | 151 | 1.7 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.60 | 0.00 | 0.60 | 0.60 | 0.60 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 3 | 2 | 145 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 24 | 14 | 1,300 | 14.4 | 2 | 1 | 3 | 2 | 0 | 0 | 5 | 0 | 0.14 | 0.07 | 0.21 | 0.14 | 0.21 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 6 | 5 | 444 | 4.9 | 0 | 3 | 3 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.61 | 0.61 | 0.00 | 0.61 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 21 | 18 | 1,557 | 17.3 | 2 | 1 | 3 | 2 | 0 | 0 | 4 | 0 | 0.12 | 0.06 | 0.17 | 0.12 | 0.17 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 2 | 2 | 159 | 1.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 1 | 0 | 36 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 12 | 4 | 490 | 5.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 2 | 1 | 102 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 2 | 1 | 121 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 3 | 2 | 196 | 2.2 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.46 | 0.46 | 0.00 | 0.46 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 18 | 13 | 1,078 | 12.0 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.08 | 0.08 | 0.17 | 0.08 | 0.17 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 2 | 0 | 42 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 2 | 2 | 112 | 1.2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.61 | 1.61 | 0.00 | 1.61 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 43 | 31 | 2,758 | 30.6 | 2 | 3 | 5 | 2 | 0 | 0 | 9 | 0 | 0.07 | 0.10 | 0.16 | 0.07 | 0.16 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 10 | 4 | 440 | 4.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.20 | 0.00 | 0.20 | 0.20 | 0.20 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | FA Cup | 0 | 0 | Matches | |||||||||||||||
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 9 | 5 | 414 | 4.6 | 1 | 1 | 0 | 0 | 1 | 0 | 0.22 | 0.22 | Matches | |||||
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 5 | 1 | 192 | 2.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 1 | 1 | 81 | 0.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 16 | 15 | 1,230 | 13.7 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | Matches | |||||
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | 1 | 1 | 60 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 4 | 4 | 290 | 3.2 | 2 | 1 | 3 | 2 | 0 | 0 | 0 | 0 | 0.62 | 0.31 | 0.93 | 0.62 | 0.93 | Matches |
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 35 | 31 | 2,611 | 29.0 | 6 | 5 | 11 | 6 | 0 | 0 | 3 | 1 | 0.21 | 0.17 | 0.38 | 0.21 | 0.38 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | EFL Cup | 0 | 0 | Matches | |||||||||||||||
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 24 | 17 | 1,357 | 15.1 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 0 | 0.13 | 0.00 | 0.13 | 0.13 | 0.13 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 1 | 0 | 47 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 16 | 9 | 823 | 9.1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 12 Seasons | 6 Clubs | 6 Leagues | 315 | 229 | 20,149 | 223.9 | 20 | 21 | 40 | 20 | 0 | 0 | 48 | 1 | 0.09 | 0.10 | 0.19 | 0.09 | 0.19 | |||
| Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rochdale (5 Seasons) | 3 Leagues | 118 | 88 | 7,925 | 88.1 | 5 | 8 | 13 | 5 | 0 | 0 | 22 | 0 | 0.06 | 0.09 | 0.15 | 0.06 | 0.15 | ||||
| Wrexham (3 Seasons) | 5 Leagues | 82 | 70 | 5,719 | 63.5 | 10 | 6 | 16 | 10 | 0 | 0 | 9 | 1 | 0.16 | 0.12 | 0.32 | 0.16 | 0.32 | ||||
| Portsmouth (3 Seasons) | 3 Leagues | 72 | 50 | 4,409 | 49.0 | 3 | 7 | 10 | 3 | 0 | 0 | 13 | 0 | 0.06 | 0.14 | 0.20 | 0.06 | 0.20 | ||||
| Hull City (2 Seasons) | 3 Leagues | 17 | 7 | 812 | 9.0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.11 | 0.00 | 0.11 | 0.11 | 0.11 | ||||
| Burton Albion (1 Season) | 2 Leagues | 17 | 9 | 870 | 9.7 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Stockport (1 Season) | 1 League | 9 | 5 | 414 | 4.6 | 1 | 1 | 0 | 0 | 1 | 0 | 0.22 | 0.22 | |||||||||
| FA Cup (12 Seasons) | 24 | 18 | 1,567 | 17.4 | 2 | 7 | 9 | 2 | 0 | 0 | 2 | 0 | 0.11 | 0.40 | 0.52 | 0.11 | 0.52 | |||||
| EFL Cup (10 Seasons) | 13 | 10 | 893 | 9.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.00 | 0.10 | 0.10 | 0.10 | |||||
| League One (9 Seasons) | 203 | 145 | 12,802 | 142.2 | 9 | 9 | 18 | 9 | 0 | 0 | 39 | 0 | 0.06 | 0.06 | 0.13 | 0.06 | 0.13 | |||||
| National League (2 Seasons) | 25 | 20 | 1,644 | 18.3 | 1 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | ||||||||||
| Championship (2 Seasons) | 15 | 5 | 632 | 7.0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.14 | 0.00 | 0.14 | 0.14 | 0.14 | |||||
| League Two (1 Season) | 35 | 31 | 2,611 | 29.0 | 6 | 5 | 11 | 6 | 0 | 0 | 3 | 1 | 0.21 | 0.17 | 0.38 | 0.21 | 0.38 | |||||
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2014-2015 | 18 | Rochdale | 2 Leagues | 18 | 16 | 1,472 | 16.4 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2015-2016 | 19 | Rochdale | 3 Leagues | 28 | 24 | 2,081 | 23.1 | 0 | 3 | 3 | 0 | 0 | 0 | 8 | 0 | 0.00 | 0.13 | 0.13 | 0.00 | 0.13 | |
| 2016-2017 | 20 | Rochdale | 3 Leagues | 29 | 18 | 1,596 | 17.7 | 3 | 1 | 4 | 3 | 0 | 0 | 5 | 0 | 0.17 | 0.06 | 0.23 | 0.17 | 0.23 | |
| 2017-2018 | 21 | Rochdale | 3 Leagues | 28 | 24 | 2,091 | 23.2 | 2 | 4 | 6 | 2 | 0 | 0 | 5 | 0 | 0.09 | 0.17 | 0.26 | 0.09 | 0.26 | |
| 2018-2019 | 22 | Rochdale | 3 Leagues | 15 | 6 | 685 | 7.6 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2018-2019 | 22 | Portsmouth | 1 League | 2 | 1 | 102 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2019-2020 | 23 | Portsmouth | 3 Leagues | 23 | 16 | 1,395 | 15.5 | 1 | 2 | 3 | 1 | 0 | 0 | 4 | 0 | 0.06 | 0.13 | 0.19 | 0.06 | 0.19 | |
| 2020-2021 | 24 | Portsmouth | 3 Leagues | 47 | 33 | 2,912 | 32.4 | 2 | 5 | 7 | 2 | 0 | 0 | 9 | 0 | 0.06 | 0.15 | 0.22 | 0.06 | 0.22 | |
| 2021-2022 | 25 | Stockport | 1 League | 9 | 5 | 414 | 4.6 | 1 | 1 | 0 | 0 | 1 | 0 | 0.22 | 0.22 | ||||||
| 2021-2022 | 25 | Hull City | 3 Leagues | 11 | 5 | 530 | 5.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.17 | 0.00 | 0.17 | 0.17 | 0.17 | |
| 2022-2023 | 26 | Hull City | 2 Leagues | 6 | 2 | 282 | 3.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2022-2023 | 26 | Wrexham | 2 Leagues | 17 | 16 | 1,311 | 14.6 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2023-2024 | 27 | Wrexham | 3 Leagues | 40 | 36 | 2,961 | 32.9 | 8 | 6 | 14 | 8 | 0 | 0 | 3 | 1 | 0.24 | 0.18 | 0.43 | 0.24 | 0.43 | |
| 2024-2025 | 28 | Wrexham | 3 Leagues | 25 | 18 | 1,447 | 16.1 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 0 | 0.12 | 0.00 | 0.12 | 0.12 | 0.12 | |
| 2025-2026 | 29 | Burton Albion | 2 Leagues | 17 | 9 | 870 | 9.7 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 12 Seasons | 6 Clubs | 6 Leagues | 315 | 229 | 20,149 | 223.9 | 20 | 21 | 40 | 20 | 0 | 0 | 48 | 1 | 0.09 | 0.10 | 0.19 | 0.09 | 0.19 | ||
| Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rochdale (5 Seasons) | 3 Leagues | 118 | 88 | 7,925 | 88.1 | 5 | 8 | 13 | 5 | 0 | 0 | 22 | 0 | 0.06 | 0.09 | 0.15 | 0.06 | 0.15 | |||
| Wrexham (3 Seasons) | 5 Leagues | 82 | 70 | 5,719 | 63.5 | 10 | 6 | 16 | 10 | 0 | 0 | 9 | 1 | 0.16 | 0.12 | 0.32 | 0.16 | 0.32 | |||
| Portsmouth (3 Seasons) | 3 Leagues | 72 | 50 | 4,409 | 49.0 | 3 | 7 | 10 | 3 | 0 | 0 | 13 | 0 | 0.06 | 0.14 | 0.20 | 0.06 | 0.20 | |||
| Hull City (2 Seasons) | 3 Leagues | 17 | 7 | 812 | 9.0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.11 | 0.00 | 0.11 | 0.11 | 0.11 | |||
| Burton Albion (1 Season) | 2 Leagues | 17 | 9 | 870 | 9.7 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Stockport (1 Season) | 1 League | 9 | 5 | 414 | 4.6 | 1 | 1 | 0 | 0 | 1 | 0 | 0.22 | 0.22 | ||||||||
| FA Cup (12 Seasons) | 24 | 18 | 1,567 | 17.4 | 2 | 7 | 9 | 2 | 0 | 0 | 2 | 0 | 0.11 | 0.40 | 0.52 | 0.11 | 0.52 | ||||
| EFL Cup (10 Seasons) | 13 | 10 | 893 | 9.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.00 | 0.10 | 0.10 | 0.10 | ||||
| League One (9 Seasons) | 203 | 145 | 12,802 | 142.2 | 9 | 9 | 18 | 9 | 0 | 0 | 39 | 0 | 0.06 | 0.06 | 0.13 | 0.06 | 0.13 | ||||
| National League (2 Seasons) | 25 | 20 | 1,644 | 18.3 | 1 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | |||||||||
| Championship (2 Seasons) | 15 | 5 | 632 | 7.0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.14 | 0.00 | 0.14 | 0.14 | 0.14 | ||||
| League Two (1 Season) | 35 | 31 | 2,611 | 29.0 | 6 | 5 | 11 | 6 | 0 | 0 | 3 | 1 | 0.21 | 0.17 | 0.38 | 0.21 | 0.38 | ||||
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 8th | 18 | 16 | 1,472 | 16.4 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 10th | 25 | 22 | 1,865 | 20.7 | 0 | 3 | 3 | 0 | 0 | 0 | 7 | 0 | 0.00 | 0.14 | 0.14 | 0.00 | 0.14 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 9th | 24 | 14 | 1,300 | 14.4 | 2 | 1 | 3 | 2 | 0 | 0 | 5 | 0 | 0.14 | 0.07 | 0.21 | 0.14 | 0.21 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 20th | 21 | 18 | 1,557 | 17.3 | 2 | 1 | 3 | 2 | 0 | 0 | 4 | 0 | 0.12 | 0.06 | 0.17 | 0.12 | 0.17 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 16th | 12 | 4 | 490 | 5.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 4th | 2 | 1 | 102 | 1.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 5th | 18 | 13 | 1,078 | 12.0 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.08 | 0.08 | 0.17 | 0.08 | 0.17 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 8th | 43 | 31 | 2,758 | 30.6 | 2 | 3 | 5 | 2 | 0 | 0 | 9 | 0 | 0.07 | 0.10 | 0.16 | 0.07 | 0.16 | Matches |
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 1st | 9 | 5 | 414 | 4.6 | 1 | 1 | 0 | 0 | 1 | 0 | 0.22 | 0.22 | Matches | |||||
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 19th | 10 | 4 | 440 | 4.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.20 | 0.00 | 0.20 | 0.20 | 0.20 | Matches |
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 15th | 5 | 1 | 192 | 2.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 1st | 16 | 15 | 1,230 | 13.7 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | Matches | |||||
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 2nd | 35 | 31 | 2,611 | 29.0 | 6 | 5 | 11 | 6 | 0 | 0 | 3 | 1 | 0.21 | 0.17 | 0.38 | 0.21 | 0.38 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 2nd | 24 | 17 | 1,357 | 15.1 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 0 | 0.13 | 0.00 | 0.13 | 0.13 | 0.13 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 17th | 16 | 9 | 823 | 9.1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 12 Seasons | 6 Clubs | 4 Leagues | 278 | 201 | 17,689 | 196.5 | 17 | 14 | 30 | 17 | 0 | 0 | 45 | 1 | 0.09 | 0.08 | 0.17 | 0.09 | 0.17 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rochdale (5 Seasons) | 1 League | 100 | 74 | 6,684 | 74.3 | 4 | 5 | 9 | 4 | 0 | 0 | 20 | 0 | 0.05 | 0.07 | 0.12 | 0.05 | 0.12 | |||||
| Wrexham (3 Seasons) | 3 Leagues | 75 | 63 | 5,198 | 57.8 | 8 | 5 | 13 | 8 | 0 | 0 | 9 | 1 | 0.14 | 0.11 | 0.29 | 0.14 | 0.29 | |||||
| Portsmouth (3 Seasons) | 1 League | 63 | 45 | 3,938 | 43.8 | 3 | 4 | 7 | 3 | 0 | 0 | 12 | 0 | 0.07 | 0.09 | 0.16 | 0.07 | 0.16 | |||||
| Hull City (2 Seasons) | 1 League | 15 | 5 | 632 | 7.0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.14 | 0.00 | 0.14 | 0.14 | 0.14 | |||||
| Burton Albion (1 Season) | 1 League | 16 | 9 | 823 | 9.1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Stockport (1 Season) | 1 League | 9 | 5 | 414 | 4.6 | 1 | 1 | 0 | 0 | 1 | 0 | 0.22 | 0.22 | ||||||||||
| League One (9 Seasons) | 203 | 145 | 12,802 | 142.2 | 9 | 9 | 18 | 9 | 0 | 0 | 39 | 0 | 0.06 | 0.06 | 0.13 | 0.06 | 0.13 | ||||||
| National League (2 Seasons) | 25 | 20 | 1,644 | 18.3 | 1 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | |||||||||||
| Championship (2 Seasons) | 15 | 5 | 632 | 7.0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.14 | 0.00 | 0.14 | 0.14 | 0.14 | ||||||
| League Two (1 Season) | 35 | 31 | 2,611 | 29.0 | 6 | 5 | 11 | 6 | 0 | 0 | 3 | 1 | 0.21 | 0.17 | 0.38 | 0.21 | 0.38 | ||||||
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2014-2015 | 18 | Rochdale | eng ENG | FA Cup | 17th | 0 | 0 | Matches | |||||||||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 65th | 2 | 1 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 33rd | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 33rd | 2 | 2 | 151 | 1.7 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.60 | 0.00 | 0.60 | 0.60 | 0.60 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 17th | 3 | 2 | 145 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 33rd | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 9th | 6 | 5 | 444 | 4.9 | 0 | 3 | 3 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.61 | 0.61 | 0.00 | 0.61 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 33rd | 2 | 2 | 159 | 1.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 65th | 1 | 0 | 36 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 17th | 2 | 1 | 121 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 9th | 3 | 2 | 196 | 2.2 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.46 | 0.46 | 0.00 | 0.46 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 33rd | 2 | 0 | 42 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 33rd | 2 | 2 | 112 | 1.2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.61 | 1.61 | 0.00 | 1.61 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | Rd1 | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | FA Cup | 0 | 0 | Matches | ||||||||||||||||
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | Rd1 | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 1 | 1 | 81 | 0.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | Rd2 | 1 | 1 | 60 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 4 | 4 | 290 | 3.2 | 2 | 1 | 3 | 2 | 0 | 0 | 0 | 0 | 0.62 | 0.31 | 0.93 | 0.62 | 0.93 | Matches | |
| 2024-2025 | 28 | Wrexham | eng ENG | EFL Cup | Rd1 | 0 | 0 | Matches | |||||||||||||||
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 1 | 0 | 47 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 12 Seasons | 5 Clubs | 2 Leagues | 37 | 28 | 2,460 | 27.3 | 3 | 7 | 10 | 3 | 0 | 0 | 3 | 0 | 0.11 | 0.26 | 0.37 | 0.11 | 0.37 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rochdale (5 Seasons) | 2 Leagues | 18 | 14 | 1,241 | 13.8 | 1 | 3 | 4 | 1 | 0 | 0 | 2 | 0 | 0.07 | 0.22 | 0.29 | 0.07 | 0.29 | |||||
| Wrexham (3 Seasons) | 2 Leagues | 7 | 7 | 521 | 5.8 | 2 | 1 | 3 | 2 | 0 | 0 | 0 | 0 | 0.35 | 0.17 | 0.52 | 0.35 | 0.52 | |||||
| Portsmouth (2 Seasons) | 2 Leagues | 9 | 5 | 471 | 5.2 | 0 | 3 | 3 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.57 | 0.57 | 0.00 | 0.57 | |||||
| Hull City (2 Seasons) | 2 Leagues | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Burton Albion (1 Season) | 1 League | 1 | 0 | 47 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| FA Cup (12 Seasons) | 24 | 18 | 1,567 | 17.4 | 2 | 7 | 9 | 2 | 0 | 0 | 2 | 0 | 0.11 | 0.40 | 0.52 | 0.11 | 0.52 | ||||||
| EFL Cup (10 Seasons) | 13 | 10 | 893 | 9.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.00 | 0.10 | 0.10 | 0.10 | ||||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 16.4 | 0 | 3 | 0.18 | 0.00 | 0 | 0 | Matches | ||||
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 1.4 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 20.7 | 0 | 5 | 0.24 | 0.00 | 0 | 0 | Matches | ||||
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 1.7 | 1 | 2 | 1 | 50.0 | 1.19 | 0.60 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 1.6 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 14.4 | 2 | 0 | 4 | 0.00 | 0.28 | 0.50 | 0 | 0 | Matches | ||
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 1.0 | 0 | 2 | 1 | 50.0 | 2.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 4.9 | 0 | 9 | 5 | 55.6 | 1.82 | 1.01 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 17.3 | 2 | 0 | 11 | 0.00 | 0.64 | 0.18 | 0 | 0 | Matches | ||
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 1.8 | 0 | 4 | 2 | 50.0 | 2.26 | 1.13 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 5.4 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 1.1 | 0 | 0 | 0 | Matches | |||||||
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 1.3 | 0 | 1 | 0 | 0.0 | 0.74 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 2.2 | 0 | 3 | 0 | 0.0 | 1.38 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 12.0 | 1 | 18 | 4 | 22.2 | 1.50 | 0.33 | 0.06 | 0.25 | 0 | 0 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 0.5 | 0 | 1 | 0 | 0.0 | 2.14 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 1.2 | 0 | 1 | 0 | 0.0 | 0.80 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 30.6 | 2 | 32 | 7 | 21.9 | 1.04 | 0.23 | 0.06 | 0.29 | 0 | 0 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 4.9 | 1 | 2 | 2 | 100.0 | 0.41 | 0.41 | 0.50 | 0.50 | 0 | 0 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | 1.0 | 0 | 2 | 0 | 0.0 | 2.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 4.6 | 1 | 0 | 0 | Matches | |||||||
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 2.1 | 0 | 1 | 0 | 0.0 | 0.47 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 0.9 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 13.7 | 0 | 0 | 0 | Matches | |||||||
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | 0.7 | 0 | 2 | 0 | 0.0 | 3.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 3.2 | 2 | 4 | 3 | 75.0 | 1.24 | 0.93 | 0.50 | 0.67 | 0 | 0 | Matches |
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 29.0 | 6 | 52 | 13 | 25.0 | 1.79 | 0.45 | 0.12 | 0.46 | 0 | 0 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 15.1 | 2 | 18 | 3 | 16.7 | 1.19 | 0.20 | 0.11 | 0.67 | 0 | 0 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 0.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 9.1 | 0 | 12 | 3 | 25.0 | 1.31 | 0.33 | 0.00 | 0.00 | 0 | 0 | Matches |
| 12 Seasons | 6 Clubs | 6 Leagues | 223.9 | 20 | 166 | 67 | 35.5 | 1.06 | 0.35 | 0.11 | 0.28 | 0 | 0 | |||
| Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rochdale (5 Seasons) | 3 Leagues | 88.1 | 5 | 17 | 32 | 141.2 | 0.41 | 0.41 | 0.29 | 0.16 | 0 | 0 | ||||
| Wrexham (3 Seasons) | 5 Leagues | 63.5 | 10 | 76 | 19 | 25.0 | 1.55 | 0.39 | 0.13 | 0.53 | 0 | 0 | ||||
| Portsmouth (3 Seasons) | 3 Leagues | 49.0 | 3 | 56 | 11 | 19.6 | 1.17 | 0.23 | 0.05 | 0.27 | 0 | 0 | ||||
| Hull City (2 Seasons) | 3 Leagues | 9.0 | 1 | 5 | 2 | 40.0 | 0.55 | 0.22 | 0.20 | 0.50 | 0 | 0 | ||||
| Burton Albion (1 Season) | 2 Leagues | 9.7 | 0 | 12 | 3 | 25.0 | 1.24 | 0.31 | 0.00 | 0.00 | 0 | 0 | ||||
| Stockport (1 Season) | 1 League | 4.6 | 1 | 0 | 0 | |||||||||||
| FA Cup (12 Seasons) | 17.4 | 2 | 17 | 8 | 47.1 | 1.27 | 0.60 | 0.12 | 0.25 | 0 | 0 | |||||
| EFL Cup (10 Seasons) | 9.9 | 1 | 14 | 4 | 28.6 | 1.57 | 0.45 | 0.07 | 0.25 | 0 | 0 | |||||
| League One (9 Seasons) | 142.2 | 9 | 80 | 40 | 40.0 | 0.81 | 0.29 | 0.11 | 0.23 | 0 | 0 | |||||
| National League (2 Seasons) | 18.3 | 1 | 0 | 0 | ||||||||||||
| Championship (2 Seasons) | 7.0 | 1 | 3 | 2 | 66.7 | 0.43 | 0.28 | 0.33 | 0.50 | 0 | 0 | |||||
| League Two (1 Season) | 29.0 | 6 | 52 | 13 | 25.0 | 1.79 | 0.45 | 0.12 | 0.46 | 0 | 0 | |||||
| Standard | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2014-2015 | 18 | Rochdale | 2 Leagues | 16.4 | 0 | 3 | 0.18 | 0.00 | 0 | 0 | |||||
| 2015-2016 | 19 | Rochdale | 3 Leagues | 23.1 | 0 | 5 | 0.24 | 0.00 | 0 | 0 | |||||
| 2016-2017 | 20 | Rochdale | 3 Leagues | 17.7 | 3 | 2 | 5 | 250.0 | 0.12 | 0.31 | 1.50 | 0.60 | 0 | 0 | |
| 2017-2018 | 21 | Rochdale | 3 Leagues | 23.2 | 2 | 11 | 17 | 154.5 | 0.47 | 0.73 | 0.18 | 0.12 | 0 | 0 | |
| 2018-2019 | 22 | Rochdale | 3 Leagues | 7.6 | 0 | 4 | 2 | 50.0 | 1.85 | 0.92 | 0.00 | 0.00 | 0 | 0 | |
| 2018-2019 | 22 | Portsmouth | 1 League | 1.1 | 0 | 0 | 0 | ||||||||
| 2019-2020 | 23 | Portsmouth | 3 Leagues | 15.5 | 1 | 22 | 4 | 18.2 | 1.42 | 0.26 | 0.05 | 0.25 | 0 | 0 | |
| 2020-2021 | 24 | Portsmouth | 3 Leagues | 32.4 | 2 | 34 | 7 | 20.6 | 1.05 | 0.22 | 0.06 | 0.29 | 0 | 0 | |
| 2021-2022 | 25 | Stockport | 1 League | 4.6 | 1 | 0 | 0 | ||||||||
| 2021-2022 | 25 | Hull City | 3 Leagues | 5.9 | 1 | 4 | 2 | 50.0 | 0.68 | 0.34 | 0.25 | 0.50 | 0 | 0 | |
| 2022-2023 | 26 | Hull City | 2 Leagues | 3.1 | 0 | 1 | 0 | 0.0 | 0.32 | 0.00 | 0.00 | 0 | 0 | ||
| 2022-2023 | 26 | Wrexham | 2 Leagues | 14.6 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||
| 2023-2024 | 27 | Wrexham | 3 Leagues | 32.9 | 8 | 58 | 16 | 27.6 | 1.76 | 0.49 | 0.14 | 0.50 | 0 | 0 | |
| 2024-2025 | 28 | Wrexham | 3 Leagues | 16.1 | 2 | 18 | 3 | 16.7 | 1.19 | 0.20 | 0.11 | 0.67 | 0 | 0 | |
| 2025-2026 | 29 | Burton Albion | 2 Leagues | 9.7 | 0 | 12 | 3 | 25.0 | 1.24 | 0.31 | 0.00 | 0.00 | 0 | 0 | |
| 12 Seasons | 6 Clubs | 6 Leagues | 223.9 | 20 | 166 | 67 | 35.5 | 1.06 | 0.35 | 0.11 | 0.28 | 0 | 0 | ||
| Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rochdale (5 Seasons) | 3 Leagues | 88.1 | 5 | 17 | 32 | 141.2 | 0.41 | 0.41 | 0.29 | 0.16 | 0 | 0 | |||
| Wrexham (3 Seasons) | 5 Leagues | 63.5 | 10 | 76 | 19 | 25.0 | 1.55 | 0.39 | 0.13 | 0.53 | 0 | 0 | |||
| Portsmouth (3 Seasons) | 3 Leagues | 49.0 | 3 | 56 | 11 | 19.6 | 1.17 | 0.23 | 0.05 | 0.27 | 0 | 0 | |||
| Hull City (2 Seasons) | 3 Leagues | 9.0 | 1 | 5 | 2 | 40.0 | 0.55 | 0.22 | 0.20 | 0.50 | 0 | 0 | |||
| Burton Albion (1 Season) | 2 Leagues | 9.7 | 0 | 12 | 3 | 25.0 | 1.24 | 0.31 | 0.00 | 0.00 | 0 | 0 | |||
| Stockport (1 Season) | 1 League | 4.6 | 1 | 0 | 0 | ||||||||||
| FA Cup (12 Seasons) | 17.4 | 2 | 17 | 8 | 47.1 | 1.27 | 0.60 | 0.12 | 0.25 | 0 | 0 | ||||
| EFL Cup (10 Seasons) | 9.9 | 1 | 14 | 4 | 28.6 | 1.57 | 0.45 | 0.07 | 0.25 | 0 | 0 | ||||
| League One (9 Seasons) | 142.2 | 9 | 80 | 40 | 40.0 | 0.81 | 0.29 | 0.11 | 0.23 | 0 | 0 | ||||
| National League (2 Seasons) | 18.3 | 1 | 0 | 0 | |||||||||||
| Championship (2 Seasons) | 7.0 | 1 | 3 | 2 | 66.7 | 0.43 | 0.28 | 0.33 | 0.50 | 0 | 0 | ||||
| League Two (1 Season) | 29.0 | 6 | 52 | 13 | 25.0 | 1.79 | 0.45 | 0.12 | 0.46 | 0 | 0 | ||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 8th | 16.4 | 0 | 3 | 0.18 | 0.00 | 0 | 0 | Matches | ||||
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 10th | 20.7 | 0 | 5 | 0.24 | 0.00 | 0 | 0 | Matches | ||||
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 9th | 14.4 | 2 | 0 | 4 | 0.00 | 0.28 | 0.50 | 0 | 0 | Matches | ||
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 20th | 17.3 | 2 | 0 | 11 | 0.00 | 0.64 | 0.18 | 0 | 0 | Matches | ||
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 16th | 5.4 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 4th | 1.1 | 0 | 0 | 0 | Matches | |||||||
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 5th | 12.0 | 1 | 18 | 4 | 22.2 | 1.50 | 0.33 | 0.06 | 0.25 | 0 | 0 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 8th | 30.6 | 2 | 32 | 7 | 21.9 | 1.04 | 0.23 | 0.06 | 0.29 | 0 | 0 | Matches |
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 1st | 4.6 | 1 | 0 | 0 | Matches | |||||||
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 19th | 4.9 | 1 | 2 | 2 | 100.0 | 0.41 | 0.41 | 0.50 | 0.50 | 0 | 0 | Matches |
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 15th | 2.1 | 0 | 1 | 0 | 0.0 | 0.47 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 1st | 13.7 | 0 | 0 | 0 | Matches | |||||||
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 2nd | 29.0 | 6 | 52 | 13 | 25.0 | 1.79 | 0.45 | 0.12 | 0.46 | 0 | 0 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 2nd | 15.1 | 2 | 18 | 3 | 16.7 | 1.19 | 0.20 | 0.11 | 0.67 | 0 | 0 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 17th | 9.1 | 0 | 12 | 3 | 25.0 | 1.31 | 0.33 | 0.00 | 0.00 | 0 | 0 | Matches |
| 12 Seasons | 6 Clubs | 4 Leagues | 196.5 | 17 | 135 | 55 | 34.8 | 1.00 | 0.32 | 0.12 | 0.29 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rochdale (5 Seasons) | 1 League | 74.3 | 4 | 0 | 23 | 0.00 | 0.33 | 0.17 | 0 | 0 | |||||||
| Wrexham (3 Seasons) | 3 Leagues | 57.8 | 8 | 70 | 16 | 22.9 | 1.59 | 0.36 | 0.11 | 0.50 | 0 | 0 | |||||
| Portsmouth (3 Seasons) | 1 League | 43.8 | 3 | 50 | 11 | 22.0 | 1.17 | 0.26 | 0.06 | 0.27 | 0 | 0 | |||||
| Hull City (2 Seasons) | 1 League | 7.0 | 1 | 3 | 2 | 66.7 | 0.43 | 0.28 | 0.33 | 0.50 | 0 | 0 | |||||
| Burton Albion (1 Season) | 1 League | 9.1 | 0 | 12 | 3 | 25.0 | 1.31 | 0.33 | 0.00 | 0.00 | 0 | 0 | |||||
| Stockport (1 Season) | 1 League | 4.6 | 1 | 0 | 0 | ||||||||||||
| League One (9 Seasons) | 142.2 | 9 | 80 | 40 | 40.0 | 0.81 | 0.29 | 0.11 | 0.23 | 0 | 0 | ||||||
| National League (2 Seasons) | 18.3 | 1 | 0 | 0 | |||||||||||||
| Championship (2 Seasons) | 7.0 | 1 | 3 | 2 | 66.7 | 0.43 | 0.28 | 0.33 | 0.50 | 0 | 0 | ||||||
| League Two (1 Season) | 29.0 | 6 | 52 | 13 | 25.0 | 1.79 | 0.45 | 0.12 | 0.46 | 0 | 0 | ||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 65th | 1.4 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 33rd | 1.0 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 33rd | 1.7 | 1 | 2 | 1 | 50.0 | 1.19 | 0.60 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 17th | 1.6 | 0 | 0 | 0 | Matches | |||||||
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 33rd | 1.0 | 0 | 2 | 1 | 50.0 | 2.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 9th | 4.9 | 0 | 9 | 5 | 55.6 | 1.82 | 1.01 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 33rd | 1.8 | 0 | 4 | 2 | 50.0 | 2.26 | 1.13 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 65th | 0.4 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 17th | 1.3 | 0 | 1 | 0 | 0.0 | 0.74 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 9th | 2.2 | 0 | 3 | 0 | 0.0 | 1.38 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 33rd | 0.5 | 0 | 1 | 0 | 0.0 | 2.14 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 33rd | 1.2 | 0 | 1 | 0 | 0.0 | 0.80 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | Rd1 | 1.0 | 0 | 2 | 0 | 0.0 | 2.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | Rd1 | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 0.9 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | Rd2 | 0.7 | 0 | 2 | 0 | 0.0 | 3.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 3.2 | 2 | 4 | 3 | 75.0 | 1.24 | 0.93 | 0.50 | 0.67 | 0 | 0 | Matches | |
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | Matches | ||||||||
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 0.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 12 Seasons | 5 Clubs | 2 Leagues | 27.3 | 3 | 31 | 12 | 38.7 | 1.39 | 0.54 | 0.10 | 0.25 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rochdale (5 Seasons) | 2 Leagues | 13.8 | 1 | 17 | 9 | 52.9 | 1.74 | 0.92 | 0.06 | 0.11 | 0 | 0 | |||||
| Wrexham (3 Seasons) | 2 Leagues | 5.8 | 2 | 6 | 3 | 50.0 | 1.25 | 0.63 | 0.33 | 0.67 | 0 | 0 | |||||
| Portsmouth (2 Seasons) | 2 Leagues | 5.2 | 0 | 6 | 0 | 0.0 | 1.15 | 0.00 | 0.00 | 0 | 0 | ||||||
| Hull City (2 Seasons) | 2 Leagues | 2.0 | 0 | 2 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | ||||||
| Burton Albion (1 Season) | 1 League | 0.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| FA Cup (12 Seasons) | 17.4 | 2 | 17 | 8 | 47.1 | 1.27 | 0.60 | 0.12 | 0.25 | 0 | 0 | ||||||
| EFL Cup (10 Seasons) | 9.9 | 1 | 14 | 4 | 28.6 | 1.57 | 0.45 | 0.07 | 0.25 | 0 | 0 | ||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2014-2015 | 18 | Rochdale | eng ENG | FA Cup | 0 | 0 | 0 | 0 | 4 | Matches | ||||||||||||
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 18 | 1,472 | 82 | 35.6 | 16.4 | 16 | 12 | 2 | 7 | 1.28 | 22 | 25 | -3 | -0.18 | -0.49 | Matches | ||
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 2 | 126 | 63 | 70.0 | 1.4 | 1 | 91 | 1 | 1 | 35 | 0 | 1.50 | 3 | 1 | +2 | +1.43 | +3.10 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 1 | 90 | 90 | 42.9 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | -1.00 | Matches | |
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 25 | 1,865 | 75 | 45.0 | 20.7 | 22 | 17 | 3 | 7 | 1.56 | 28 | 25 | +3 | +0.14 | -0.01 | Matches | ||
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 2 | 151 | 76 | 83.9 | 1.7 | 2 | 76 | 1 | 0 | 0 | 1.50 | 3 | 2 | +1 | +0.60 | +0.60 | Matches | |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 3 | 145 | 48 | 32.2 | 1.6 | 2 | 68 | 1 | 1 | 9 | 0 | 2.33 | 3 | 1 | +2 | +1.24 | +1.24 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 24 | 1,300 | 54 | 31.4 | 14.4 | 14 | 8 | 10 | 7 | 1.17 | 14 | 20 | -6 | -0.42 | -0.89 | Matches | ||
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 1 | 0.00 | 0 | 4 | -4 | -4.00 | -5.00 | Matches | |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 6 | 444 | 74 | 70.5 | 4.9 | 5 | 85 | 2 | 1 | 21 | 0 | 1.83 | 9 | 8 | +1 | +0.20 | -1.73 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 21 | 1,557 | 74 | 37.6 | 17.3 | 18 | 11 | 3 | 3 | 0.86 | 15 | 18 | -3 | -0.17 | 0.00 | Matches | ||
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 2 | 159 | 80 | 88.3 | 1.8 | 2 | 80 | 1 | 0 | 0 | 1.50 | 2 | 2 | 0 | 0.00 | -4.29 | Matches | |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 1 | 36 | 36 | 20.0 | 0.4 | 0 | 0 | 1 | 35 | 0 | 0.00 | 0 | 1 | -1 | -2.50 | -3.12 | Matches | |
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 12 | 490 | 41 | 11.8 | 5.4 | 4 | 69 | 0 | 8 | 27 | 4 | 0.83 | 7 | 15 | -8 | -1.47 | -0.85 | Matches |
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 2 | 102 | 51 | 2.5 | 1.1 | 1 | 76 | 0 | 1 | 26 | 0 | 0.00 | 1 | 3 | -2 | -1.76 | -2.52 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 2 | 121 | 61 | 44.8 | 1.3 | 1 | 90 | 1 | 1 | 31 | 1 | 3.00 | 5 | 0 | +5 | +3.72 | +6.14 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 3 | 196 | 65 | 43.6 | 2.2 | 2 | 90 | 1 | 1 | 17 | 2 | 2.00 | 6 | 2 | +4 | +1.84 | +2.19 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 18 | 1,078 | 60 | 34.2 | 12.0 | 13 | 74 | 3 | 5 | 23 | 11 | 1.60 | 15 | 12 | +3 | +0.25 | -0.36 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 2 | 42 | 21 | 23.3 | 0.5 | 0 | 0 | 2 | 21 | 0 | 0.50 | 0 | 1 | -1 | -2.14 | -0.19 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 2 | 112 | 56 | 37.3 | 1.2 | 2 | 56 | 1 | 0 | 1 | 1.50 | 3 | 2 | +1 | +0.80 | -1.11 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 43 | 2,758 | 64 | 66.6 | 30.6 | 31 | 80 | 17 | 12 | 23 | 3 | 1.58 | 46 | 32 | +14 | +0.46 | +0.46 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 10 | 440 | 44 | 10.6 | 4.9 | 4 | 87 | 3 | 6 | 16 | 13 | 1.10 | 4 | 6 | -2 | -0.41 | -0.14 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 1.00 | 1 | 1 | 0 | 0.00 | Matches | ||
| 2021-2022 | 25 | Hull City | eng ENG | FA Cup | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 9 | 414 | 46 | 10.5 | 4.6 | 5 | 66 | 0 | 4 | 21 | 1 | 2.00 | 6 | 2 | +4 | +0.87 | -0.27 | Matches |
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 5 | 192 | 38 | 4.6 | 2.1 | 1 | 74 | 0 | 4 | 30 | 2 | 1.60 | 2 | 6 | -4 | -1.87 | -1.74 | Matches |
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.00 | Matches | ||
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 1 | 81 | 81 | 18.0 | 0.9 | 1 | 81 | 0 | 0 | 2 | 0.00 | 1 | 1 | 0 | 0.00 | -1.22 | Matches | |
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 16 | 1,230 | 77 | 29.7 | 13.7 | 15 | 82 | 6 | 1 | 1 | 3 | 2.31 | 34 | 14 | +20 | +1.46 | -0.18 | Matches |
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | 1 | 60 | 60 | 25.0 | 0.7 | 1 | 60 | 0 | 0 | 1 | 1.00 | 0 | 1 | -1 | -1.50 | -2.00 | Matches | |
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 4 | 290 | 73 | 80.6 | 3.2 | 4 | 73 | 0 | 0 | 0 | 2.25 | 6 | 5 | +1 | +0.31 | -0.98 | Matches | |
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 35 | 2,611 | 75 | 63.1 | 29.0 | 31 | 83 | 15 | 4 | 9 | 3 | 1.86 | 60 | 28 | +32 | +1.10 | +0.81 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | EFL Cup | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 24 | 1,357 | 57 | 32.8 | 15.1 | 17 | 71 | 1 | 7 | 21 | 4 | 1.83 | 23 | 9 | +14 | +0.93 | +0.31 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 1 | 47 | 47 | 12.1 | 0.5 | 0 | 0 | 1 | 47 | 0 | 0.00 | 0 | 1 | -1 | -1.91 | -5.33 | Matches | |
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 16 | 823 | 51 | 19.9 | 9.1 | 9 | 71 | 0 | 7 | 26 | 0 | 1.31 | 13 | 5 | +8 | +0.87 | +1.36 | Matches |
| 12 Seasons | 6 Clubs | 6 Leagues | 315 | 20,149 | 64 | 30.2 | 223.9 | 229 | 78 | 107 | 86 | 22 | 82 | 1.50 | 333 | 257 | +76 | +0.34 | +0.04 | |||
| Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rochdale (5 Seasons) | 3 Leagues | 118 | 7,925 | 67 | 33.8 | 88.1 | 88 | 79 | 56 | 30 | 26 | 33 | 1.23 | 106 | 123 | -17 | -0.19 | -0.22 | ||||
| Wrexham (3 Seasons) | 5 Leagues | 82 | 5,719 | 70 | 41.9 | 63.5 | 70 | 79 | 23 | 12 | 15 | 14 | 1.90 | 124 | 59 | +65 | +1.02 | +0.06 | ||||
| Portsmouth (3 Seasons) | 3 Leagues | 72 | 4,409 | 61 | 34.9 | 49.0 | 50 | 78 | 23 | 22 | 23 | 18 | 1.57 | 76 | 52 | +24 | +0.49 | +0.01 | ||||
| Hull City (2 Seasons) | 3 Leagues | 17 | 812 | 48 | 9.5 | 9.0 | 7 | 86 | 5 | 10 | 21 | 16 | 1.18 | 8 | 15 | -7 | -0.78 | -0.58 | ||||
| Burton Albion (1 Season) | 2 Leagues | 17 | 870 | 51 | 19.2 | 9.7 | 9 | 71 | 0 | 8 | 29 | 0 | 1.23 | 13 | 6 | +7 | +0.72 | +0.85 | ||||
| Stockport (1 Season) | 1 League | 9 | 414 | 46 | 10.5 | 4.6 | 5 | 66 | 0 | 4 | 21 | 1 | 2.00 | 6 | 2 | +4 | +0.87 | -0.27 | ||||
| FA Cup (12 Seasons) | 24 | 1,567 | 65 | 37.9 | 17.4 | 18 | 78 | 7 | 6 | 27 | 10 | 1.62 | 31 | 23 | +8 | +0.46 | -0.76 | |||||
| EFL Cup (10 Seasons) | 13 | 893 | 69 | 52.2 | 9.9 | 10 | 82 | 7 | 3 | 24 | 4 | 1.15 | 12 | 14 | -2 | -0.20 | +0.29 | |||||
| League One (9 Seasons) | 203 | 12,802 | 63 | 31.7 | 142.2 | 145 | 75 | 69 | 58 | 24 | 46 | 1.38 | 184 | 164 | +20 | +0.14 | -0.01 | |||||
| National League (2 Seasons) | 25 | 1,644 | 66 | 20.3 | 18.3 | 20 | 78 | 6 | 5 | 17 | 4 | 2.20 | 40 | 16 | +24 | +1.31 | -0.05 | |||||
| Championship (2 Seasons) | 15 | 632 | 42 | 7.6 | 7.0 | 5 | 84 | 3 | 10 | 21 | 15 | 1.27 | 6 | 12 | -6 | -0.85 | -0.65 | |||||
| League Two (1 Season) | 35 | 2,611 | 75 | 63.1 | 29.0 | 31 | 83 | 15 | 4 | 9 | 3 | 1.86 | 60 | 28 | +32 | +1.10 | +0.81 | |||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2014-2015 | 18 | Rochdale | 2 Leagues | 18 | 1,472 | 82 | 31.5 | 16.4 | 16 | 12 | 2 | 11 | 1.28 | 22 | 25 | -3 | -0.18 | -0.49 | |||
| 2015-2016 | 19 | Rochdale | 3 Leagues | 28 | 2,081 | 74 | 45.9 | 23.1 | 24 | 91 | 19 | 4 | 35 | 7 | 1.50 | 31 | 27 | +4 | +0.17 | +0.06 | |
| 2016-2017 | 20 | Rochdale | 3 Leagues | 29 | 1,596 | 55 | 33.5 | 17.7 | 18 | 72 | 10 | 11 | 9 | 7 | 1.31 | 20 | 23 | -3 | -0.17 | -0.59 | |
| 2017-2018 | 21 | Rochdale | 3 Leagues | 28 | 2,091 | 75 | 42.2 | 23.2 | 24 | 86 | 14 | 4 | 21 | 4 | 1.04 | 24 | 30 | -6 | -0.26 | -0.26 | |
| 2018-2019 | 22 | Rochdale | 3 Leagues | 15 | 685 | 46 | 15.2 | 7.6 | 6 | 73 | 1 | 9 | 28 | 4 | 0.86 | 9 | 18 | -9 | -1.18 | -0.64 | |
| 2018-2019 | 22 | Portsmouth | 1 League | 2 | 102 | 51 | 2.5 | 1.1 | 1 | 76 | 0 | 1 | 26 | 0 | 0.00 | 1 | 3 | -2 | -1.76 | -2.52 | |
| 2019-2020 | 23 | Portsmouth | 3 Leagues | 23 | 1,395 | 61 | 36.0 | 15.5 | 16 | 77 | 5 | 7 | 23 | 14 | 1.77 | 26 | 14 | +12 | +0.77 | +0.45 | |
| 2020-2021 | 24 | Portsmouth | 3 Leagues | 47 | 2,912 | 62 | 63.0 | 32.4 | 33 | 79 | 18 | 14 | 22 | 4 | 1.53 | 49 | 35 | +14 | +0.43 | +0.38 | |
| 2021-2022 | 25 | Stockport | 1 League | 9 | 414 | 46 | 10.5 | 4.6 | 5 | 66 | 0 | 4 | 21 | 1 | 2.00 | 6 | 2 | +4 | +0.87 | -0.27 | |
| 2021-2022 | 25 | Hull City | 3 Leagues | 11 | 530 | 48 | 12.2 | 5.9 | 5 | 87 | 4 | 6 | 16 | 14 | 1.09 | 5 | 7 | -2 | -0.34 | -0.07 | |
| 2022-2023 | 26 | Hull City | 2 Leagues | 6 | 282 | 47 | 6.7 | 3.1 | 2 | 82 | 1 | 4 | 30 | 2 | 1.33 | 3 | 8 | -5 | -1.60 | -1.46 | |
| 2022-2023 | 26 | Wrexham | 2 Leagues | 17 | 1,311 | 77 | 28.6 | 14.6 | 16 | 82 | 6 | 1 | 1 | 5 | 2.17 | 35 | 15 | +20 | +1.37 | -0.22 | |
| 2023-2024 | 27 | Wrexham | 3 Leagues | 40 | 2,961 | 74 | 62.5 | 32.9 | 36 | 81 | 15 | 4 | 9 | 4 | 1.88 | 66 | 34 | +32 | +0.97 | +0.62 | |
| 2024-2025 | 28 | Wrexham | 3 Leagues | 25 | 1,447 | 58 | 33.5 | 16.1 | 18 | 72 | 2 | 7 | 21 | 5 | 1.76 | 23 | 10 | +13 | +0.81 | +0.19 | |
| 2025-2026 | 29 | Burton Albion | 2 Leagues | 17 | 870 | 51 | 19.2 | 9.7 | 9 | 71 | 0 | 8 | 29 | 0 | 1.23 | 13 | 6 | +7 | +0.72 | +0.85 | |
| 12 Seasons | 6 Clubs | 6 Leagues | 315 | 20,149 | 64 | 30.2 | 223.9 | 229 | 78 | 107 | 86 | 22 | 82 | 1.50 | 333 | 257 | +76 | +0.34 | +0.04 | ||
| Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rochdale (5 Seasons) | 3 Leagues | 118 | 7,925 | 67 | 33.8 | 88.1 | 88 | 79 | 56 | 30 | 26 | 33 | 1.23 | 106 | 123 | -17 | -0.19 | -0.22 | |||
| Wrexham (3 Seasons) | 5 Leagues | 82 | 5,719 | 70 | 41.9 | 63.5 | 70 | 79 | 23 | 12 | 15 | 14 | 1.90 | 124 | 59 | +65 | +1.02 | +0.06 | |||
| Portsmouth (3 Seasons) | 3 Leagues | 72 | 4,409 | 61 | 34.9 | 49.0 | 50 | 78 | 23 | 22 | 23 | 18 | 1.57 | 76 | 52 | +24 | +0.49 | +0.01 | |||
| Hull City (2 Seasons) | 3 Leagues | 17 | 812 | 48 | 9.5 | 9.0 | 7 | 86 | 5 | 10 | 21 | 16 | 1.18 | 8 | 15 | -7 | -0.78 | -0.58 | |||
| Burton Albion (1 Season) | 2 Leagues | 17 | 870 | 51 | 19.2 | 9.7 | 9 | 71 | 0 | 8 | 29 | 0 | 1.23 | 13 | 6 | +7 | +0.72 | +0.85 | |||
| Stockport (1 Season) | 1 League | 9 | 414 | 46 | 10.5 | 4.6 | 5 | 66 | 0 | 4 | 21 | 1 | 2.00 | 6 | 2 | +4 | +0.87 | -0.27 | |||
| FA Cup (12 Seasons) | 24 | 1,567 | 65 | 37.9 | 17.4 | 18 | 78 | 7 | 6 | 27 | 10 | 1.62 | 31 | 23 | +8 | +0.46 | -0.76 | ||||
| EFL Cup (10 Seasons) | 13 | 893 | 69 | 52.2 | 9.9 | 10 | 82 | 7 | 3 | 24 | 4 | 1.15 | 12 | 14 | -2 | -0.20 | +0.29 | ||||
| League One (9 Seasons) | 203 | 12,802 | 63 | 31.7 | 142.2 | 145 | 75 | 69 | 58 | 24 | 46 | 1.38 | 184 | 164 | +20 | +0.14 | -0.01 | ||||
| National League (2 Seasons) | 25 | 1,644 | 66 | 20.3 | 18.3 | 20 | 78 | 6 | 5 | 17 | 4 | 2.20 | 40 | 16 | +24 | +1.31 | -0.05 | ||||
| Championship (2 Seasons) | 15 | 632 | 42 | 7.6 | 7.0 | 5 | 84 | 3 | 10 | 21 | 15 | 1.27 | 6 | 12 | -6 | -0.85 | -0.65 | ||||
| League Two (1 Season) | 35 | 2,611 | 75 | 63.1 | 29.0 | 31 | 83 | 15 | 4 | 9 | 3 | 1.86 | 60 | 28 | +32 | +1.10 | +0.81 | ||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 8th | 18 | 1,472 | 82 | 35.6 | 16.4 | 16 | 12 | 2 | 7 | 1.28 | 22 | 25 | -3 | -0.18 | -0.49 | Matches | ||
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 10th | 25 | 1,865 | 75 | 45.0 | 20.7 | 22 | 17 | 3 | 7 | 1.56 | 28 | 25 | +3 | +0.14 | -0.01 | Matches | ||
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 9th | 24 | 1,300 | 54 | 31.4 | 14.4 | 14 | 8 | 10 | 7 | 1.17 | 14 | 20 | -6 | -0.42 | -0.89 | Matches | ||
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 20th | 21 | 1,557 | 74 | 37.6 | 17.3 | 18 | 11 | 3 | 3 | 0.86 | 15 | 18 | -3 | -0.17 | 0.00 | Matches | ||
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 16th | 12 | 490 | 41 | 11.8 | 5.4 | 4 | 69 | 0 | 8 | 27 | 4 | 0.83 | 7 | 15 | -8 | -1.47 | -0.85 | Matches |
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 4th | 2 | 102 | 51 | 2.5 | 1.1 | 1 | 76 | 0 | 1 | 26 | 0 | 0.00 | 1 | 3 | -2 | -1.76 | -2.52 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 5th | 18 | 1,078 | 60 | 34.2 | 12.0 | 13 | 74 | 3 | 5 | 23 | 11 | 1.60 | 15 | 12 | +3 | +0.25 | -0.36 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 8th | 43 | 2,758 | 64 | 66.6 | 30.6 | 31 | 80 | 17 | 12 | 23 | 3 | 1.58 | 46 | 32 | +14 | +0.46 | +0.46 | Matches |
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 1st | 9 | 414 | 46 | 10.5 | 4.6 | 5 | 66 | 0 | 4 | 21 | 1 | 2.00 | 6 | 2 | +4 | +0.87 | -0.27 | Matches |
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 19th | 10 | 440 | 44 | 10.6 | 4.9 | 4 | 87 | 3 | 6 | 16 | 13 | 1.10 | 4 | 6 | -2 | -0.41 | -0.14 | Matches |
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 15th | 5 | 192 | 38 | 4.6 | 2.1 | 1 | 74 | 0 | 4 | 30 | 2 | 1.60 | 2 | 6 | -4 | -1.87 | -1.74 | Matches |
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 1st | 16 | 1,230 | 77 | 29.7 | 13.7 | 15 | 82 | 6 | 1 | 1 | 3 | 2.31 | 34 | 14 | +20 | +1.46 | -0.18 | Matches |
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 2nd | 35 | 2,611 | 75 | 63.1 | 29.0 | 31 | 83 | 15 | 4 | 9 | 3 | 1.86 | 60 | 28 | +32 | +1.10 | +0.81 | Matches |
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 2nd | 24 | 1,357 | 57 | 32.8 | 15.1 | 17 | 71 | 1 | 7 | 21 | 4 | 1.83 | 23 | 9 | +14 | +0.93 | +0.31 | Matches |
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 17th | 16 | 823 | 51 | 19.9 | 9.1 | 9 | 71 | 0 | 7 | 26 | 0 | 1.31 | 13 | 5 | +8 | +0.87 | +1.36 | Matches |
| 12 Seasons | 6 Clubs | 4 Leagues | 278 | 17,689 | 64 | 29.0 | 196.5 | 201 | 78 | 93 | 77 | 22 | 68 | 1.51 | 290 | 220 | +70 | +0.36 | +0.08 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rochdale (5 Seasons) | 1 League | 100 | 6,684 | 67 | 32.3 | 74.3 | 74 | 69 | 48 | 26 | 27 | 28 | 1.18 | 86 | 103 | -17 | -0.23 | -0.22 | |||||
| Wrexham (3 Seasons) | 3 Leagues | 75 | 5,198 | 69 | 41.9 | 57.8 | 63 | 80 | 22 | 12 | 15 | 10 | 1.95 | 117 | 51 | +66 | +1.14 | +0.18 | |||||
| Portsmouth (3 Seasons) | 1 League | 63 | 3,938 | 63 | 34.5 | 43.8 | 45 | 78 | 20 | 18 | 23 | 14 | 1.54 | 62 | 47 | +15 | +0.34 | -0.23 | |||||
| Hull City (2 Seasons) | 1 League | 15 | 632 | 42 | 7.6 | 7.0 | 5 | 84 | 3 | 10 | 21 | 15 | 1.27 | 6 | 12 | -6 | -0.85 | -0.65 | |||||
| Burton Albion (1 Season) | 1 League | 16 | 823 | 51 | 19.9 | 9.1 | 9 | 71 | 0 | 7 | 26 | 0 | 1.31 | 13 | 5 | +8 | +0.87 | +1.36 | |||||
| Stockport (1 Season) | 1 League | 9 | 414 | 46 | 10.5 | 4.6 | 5 | 66 | 0 | 4 | 21 | 1 | 2.00 | 6 | 2 | +4 | +0.87 | -0.27 | |||||
| League One (9 Seasons) | 203 | 12,802 | 63 | 31.7 | 142.2 | 145 | 75 | 69 | 58 | 24 | 46 | 1.38 | 184 | 164 | +20 | +0.14 | -0.01 | ||||||
| National League (2 Seasons) | 25 | 1,644 | 66 | 20.3 | 18.3 | 20 | 78 | 6 | 5 | 17 | 4 | 2.20 | 40 | 16 | +24 | +1.31 | -0.05 | ||||||
| Championship (2 Seasons) | 15 | 632 | 42 | 7.6 | 7.0 | 5 | 84 | 3 | 10 | 21 | 15 | 1.27 | 6 | 12 | -6 | -0.85 | -0.65 | ||||||
| League Two (1 Season) | 35 | 2,611 | 75 | 63.1 | 29.0 | 31 | 83 | 15 | 4 | 9 | 3 | 1.86 | 60 | 28 | +32 | +1.10 | +0.81 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2014-2015 | 18 | Rochdale | eng ENG | FA Cup | 17th | 0 | 0 | 0 | 0 | 4 | Matches | ||||||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 65th | 2 | 126 | 63 | 70.0 | 1.4 | 1 | 91 | 1 | 1 | 35 | 0 | 1.50 | 3 | 1 | +2 | +1.43 | +3.10 | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 33rd | 1 | 90 | 90 | 42.9 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | -1.00 | Matches | |
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 33rd | 2 | 151 | 76 | 83.9 | 1.7 | 2 | 76 | 1 | 0 | 0 | 1.50 | 3 | 2 | +1 | +0.60 | +0.60 | Matches | |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 17th | 3 | 145 | 48 | 32.2 | 1.6 | 2 | 68 | 1 | 1 | 9 | 0 | 2.33 | 3 | 1 | +2 | +1.24 | +1.24 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 33rd | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 1 | 0.00 | 0 | 4 | -4 | -4.00 | -5.00 | Matches | |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 9th | 6 | 444 | 74 | 70.5 | 4.9 | 5 | 85 | 2 | 1 | 21 | 0 | 1.83 | 9 | 8 | +1 | +0.20 | -1.73 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 33rd | 2 | 159 | 80 | 88.3 | 1.8 | 2 | 80 | 1 | 0 | 0 | 1.50 | 2 | 2 | 0 | 0.00 | -4.29 | Matches | |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 65th | 1 | 36 | 36 | 20.0 | 0.4 | 0 | 0 | 1 | 35 | 0 | 0.00 | 0 | 1 | -1 | -2.50 | -3.12 | Matches | |
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 17th | 2 | 121 | 61 | 44.8 | 1.3 | 1 | 90 | 1 | 1 | 31 | 1 | 3.00 | 5 | 0 | +5 | +3.72 | +6.14 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 9th | 3 | 196 | 65 | 43.6 | 2.2 | 2 | 90 | 1 | 1 | 17 | 2 | 2.00 | 6 | 2 | +4 | +1.84 | +2.19 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 33rd | 2 | 42 | 21 | 23.3 | 0.5 | 0 | 0 | 2 | 21 | 0 | 0.50 | 0 | 1 | -1 | -2.14 | -0.19 | Matches | |
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 33rd | 2 | 112 | 56 | 37.3 | 1.2 | 2 | 56 | 1 | 0 | 1 | 1.50 | 3 | 2 | +1 | +0.80 | -1.11 | Matches | |
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | Rd1 | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 1.00 | 1 | 1 | 0 | 0.00 | Matches | ||
| 2021-2022 | 25 | Hull City | eng ENG | FA Cup | 0 | 0 | 0 | 0 | 1 | Matches | |||||||||||||
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | Rd1 | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.00 | Matches | ||
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 1 | 81 | 81 | 18.0 | 0.9 | 1 | 81 | 0 | 0 | 2 | 0.00 | 1 | 1 | 0 | 0.00 | -1.22 | Matches | ||
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | Rd2 | 1 | 60 | 60 | 25.0 | 0.7 | 1 | 60 | 0 | 0 | 1 | 1.00 | 0 | 1 | -1 | -1.50 | -2.00 | Matches | |
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 4 | 290 | 73 | 80.6 | 3.2 | 4 | 73 | 0 | 0 | 0 | 2.25 | 6 | 5 | +1 | +0.31 | -0.98 | Matches | ||
| 2024-2025 | 28 | Wrexham | eng ENG | EFL Cup | Rd1 | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | |||
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 1 | 47 | 47 | 12.1 | 0.5 | 0 | 0 | 1 | 47 | 0 | 0.00 | 0 | 1 | -1 | -1.91 | -5.33 | Matches | ||
| 12 Seasons | 5 Clubs | 2 Leagues | 37 | 2,460 | 66 | 42.1 | 27.3 | 28 | 79 | 14 | 9 | 26 | 14 | 1.46 | 43 | 37 | +6 | +0.22 | -0.53 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rochdale (5 Seasons) | 2 Leagues | 18 | 1,241 | 69 | 45.5 | 13.8 | 14 | 82 | 8 | 4 | 25 | 5 | 1.50 | 20 | 20 | 0 | 0.00 | -0.57 | |||||
| Wrexham (3 Seasons) | 2 Leagues | 7 | 521 | 74 | 42.4 | 5.8 | 7 | 74 | 1 | 0 | 4 | 1.43 | 7 | 8 | -1 | -0.17 | -1.19 | ||||||
| Portsmouth (2 Seasons) | 2 Leagues | 9 | 471 | 52 | 39.3 | 5.2 | 5 | 76 | 3 | 4 | 23 | 4 | 1.78 | 14 | 5 | +9 | +1.72 | +2.21 | |||||
| Hull City (2 Seasons) | 2 Leagues | 2 | 180 | 90 | 60.0 | 2.0 | 2 | 90 | 2 | 0 | 1 | 0.50 | 2 | 3 | -1 | -0.50 | |||||||
| Burton Albion (1 Season) | 1 League | 1 | 47 | 47 | 12.1 | 0.5 | 0 | 0 | 1 | 47 | 0 | 0.00 | 0 | 1 | -1 | -1.91 | -5.33 | ||||||
| FA Cup (12 Seasons) | 24 | 1,567 | 65 | 37.9 | 17.4 | 18 | 78 | 7 | 6 | 27 | 10 | 1.62 | 31 | 23 | +8 | +0.46 | -0.76 | ||||||
| EFL Cup (10 Seasons) | 13 | 893 | 69 | 52.2 | 9.9 | 10 | 82 | 7 | 3 | 24 | 4 | 1.15 | 12 | 14 | -2 | -0.20 | +0.29 | ||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 16.4 | 3 | 0 | 30 | Matches | |||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 1.4 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 20.7 | 7 | 0 | 35 | Matches | |||||||||
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 1.7 | 0 | 0 | 0 | 5 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 1.6 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 14.4 | 5 | 0 | 0 | 35 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 4.9 | 1 | 0 | 0 | 7 | 16 | 1 | 6 | 3 | 7 | 0 | Matches | ||
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 17.3 | 4 | 0 | 0 | 33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 1.8 | 0 | 0 | 0 | 2 | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 5.4 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 1.1 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 1.3 | 1 | 0 | 0 | 5 | 1 | 0 | 1 | 1 | 8 | 0 | Matches | ||
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 2.2 | 0 | 0 | 0 | 3 | 6 | 0 | 0 | 0 | 1 | 0 | Matches | ||
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 12.0 | 3 | 0 | 0 | 31 | 26 | 1 | 22 | 9 | 16 | 0 | 0 | 0 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 0.5 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 0 | 0 | 0 | Matches | ||
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 1.2 | 0 | 0 | 0 | 1 | 2 | 0 | 2 | 1 | 4 | 0 | Matches | ||
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 30.6 | 9 | 0 | 0 | 63 | 65 | 1 | 23 | 23 | 76 | 0 | Matches | ||
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 4.9 | 1 | 0 | 0 | 12 | 8 | 0 | 8 | 8 | 1 | 0 | Matches | ||
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 4.6 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 2.1 | 0 | 0 | 0 | 2 | 0 | 0 | 1 | 2 | 1 | 0 | Matches | ||
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 1 | 3 | 0 | 2 | 0 | 1 | 0 | Matches | ||
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 0.9 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | Matches | ||
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 13.7 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | 0.7 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 1 | 0 | 0 | Matches | ||
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 3.2 | 0 | 0 | 0 | 7 | 5 | 0 | 0 | 1 | 3 | 0 | Matches | ||
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 29.0 | 3 | 1 | 0 | 44 | 50 | 1 | 31 | 36 | 55 | 0 | Matches | ||
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 15.1 | 5 | 0 | 0 | 28 | 22 | 0 | 25 | 9 | 23 | 0 | Matches | ||
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 0.5 | 0 | 0 | 0 | 1 | 0 | 0 | 7 | 2 | 0 | 0 | Matches | ||
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 9.1 | 2 | 0 | 0 | 12 | 12 | 0 | 42 | 7 | 13 | 0 | Matches | ||
| 12 Seasons | 6 Clubs | 6 Leagues | 223.9 | 48 | 1 | 0 | 360 | 228 | 5 | 176 | 104 | 211 | 0 | 0 | 0 | |||
| Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rochdale (5 Seasons) | 3 Leagues | 88.1 | 22 | 0 | 0 | 147 | 25 | 2 | 9 | 3 | 8 | 0 | 0 | 0 | ||||
| Wrexham (3 Seasons) | 5 Leagues | 63.5 | 9 | 1 | 0 | 81 | 79 | 1 | 56 | 48 | 82 | 0 | ||||||
| Portsmouth (3 Seasons) | 3 Leagues | 49.0 | 13 | 0 | 0 | 103 | 101 | 2 | 51 | 34 | 105 | 0 | 0 | 0 | ||||
| Hull City (2 Seasons) | 3 Leagues | 9.0 | 1 | 0 | 0 | 16 | 11 | 0 | 11 | 10 | 3 | 0 | ||||||
| Burton Albion (1 Season) | 2 Leagues | 9.7 | 2 | 0 | 0 | 13 | 12 | 0 | 49 | 9 | 13 | 0 | ||||||
| Stockport (1 Season) | 1 League | 4.6 | 1 | 0 | 0 | 0 | ||||||||||||
| FA Cup (12 Seasons) | 17.4 | 2 | 0 | 0 | 20 | 29 | 1 | 15 | 8 | 16 | 0 | 0 | 0 | |||||
| EFL Cup (10 Seasons) | 9.9 | 1 | 0 | 0 | 15 | 16 | 1 | 9 | 2 | 10 | 0 | 0 | 0 | |||||
| League One (9 Seasons) | 142.2 | 39 | 0 | 0 | 267 | 125 | 2 | 112 | 48 | 128 | 0 | 0 | 0 | |||||
| National League (2 Seasons) | 18.3 | 2 | 0 | 0 | 0 | |||||||||||||
| Championship (2 Seasons) | 7.0 | 1 | 0 | 0 | 14 | 8 | 0 | 9 | 10 | 2 | 0 | |||||||
| League Two (1 Season) | 29.0 | 3 | 1 | 0 | 44 | 50 | 1 | 31 | 36 | 55 | 0 | |||||||
| Performance | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2014-2015 | 18 | Rochdale | 2 Leagues | 16.4 | 3 | 0 | 30 | ||||||||||
| 2015-2016 | 19 | Rochdale | 3 Leagues | 23.1 | 8 | 0 | 0 | 35 | 0 | ||||||||
| 2016-2017 | 20 | Rochdale | 3 Leagues | 17.7 | 5 | 0 | 0 | 40 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2017-2018 | 21 | Rochdale | 3 Leagues | 23.2 | 5 | 0 | 0 | 40 | 18 | 1 | 6 | 3 | 8 | 0 | 0 | 0 | |
| 2018-2019 | 22 | Rochdale | 3 Leagues | 7.6 | 1 | 0 | 0 | 2 | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | |
| 2018-2019 | 22 | Portsmouth | 1 League | 1.1 | 0 | 0 | 0 | 0 | |||||||||
| 2019-2020 | 23 | Portsmouth | 3 Leagues | 15.5 | 4 | 0 | 0 | 39 | 33 | 1 | 23 | 10 | 25 | 0 | 0 | 0 | |
| 2020-2021 | 24 | Portsmouth | 3 Leagues | 32.4 | 9 | 0 | 0 | 64 | 68 | 1 | 28 | 24 | 80 | 0 | |||
| 2021-2022 | 25 | Stockport | 1 League | 4.6 | 1 | 0 | 0 | 0 | |||||||||
| 2021-2022 | 25 | Hull City | 3 Leagues | 5.9 | 1 | 0 | 0 | 13 | 8 | 0 | 8 | 8 | 1 | 0 | |||
| 2022-2023 | 26 | Hull City | 2 Leagues | 3.1 | 0 | 0 | 0 | 3 | 3 | 0 | 3 | 2 | 2 | 0 | |||
| 2022-2023 | 26 | Wrexham | 2 Leagues | 14.6 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | |||
| 2023-2024 | 27 | Wrexham | 3 Leagues | 32.9 | 3 | 1 | 0 | 52 | 57 | 1 | 31 | 38 | 58 | 0 | |||
| 2024-2025 | 28 | Wrexham | 3 Leagues | 16.1 | 5 | 0 | 0 | 28 | 22 | 0 | 25 | 9 | 23 | 0 | |||
| 2025-2026 | 29 | Burton Albion | 2 Leagues | 9.7 | 2 | 0 | 0 | 13 | 12 | 0 | 49 | 9 | 13 | 0 | |||
| 12 Seasons | 6 Clubs | 6 Leagues | 223.9 | 48 | 1 | 0 | 360 | 228 | 5 | 176 | 104 | 211 | 0 | 0 | 0 | ||
| Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rochdale (5 Seasons) | 3 Leagues | 88.1 | 22 | 0 | 0 | 147 | 25 | 2 | 9 | 3 | 8 | 0 | 0 | 0 | |||
| Wrexham (3 Seasons) | 5 Leagues | 63.5 | 9 | 1 | 0 | 81 | 79 | 1 | 56 | 48 | 82 | 0 | |||||
| Portsmouth (3 Seasons) | 3 Leagues | 49.0 | 13 | 0 | 0 | 103 | 101 | 2 | 51 | 34 | 105 | 0 | 0 | 0 | |||
| Hull City (2 Seasons) | 3 Leagues | 9.0 | 1 | 0 | 0 | 16 | 11 | 0 | 11 | 10 | 3 | 0 | |||||
| Burton Albion (1 Season) | 2 Leagues | 9.7 | 2 | 0 | 0 | 13 | 12 | 0 | 49 | 9 | 13 | 0 | |||||
| Stockport (1 Season) | 1 League | 4.6 | 1 | 0 | 0 | 0 | |||||||||||
| FA Cup (12 Seasons) | 17.4 | 2 | 0 | 0 | 20 | 29 | 1 | 15 | 8 | 16 | 0 | 0 | 0 | ||||
| EFL Cup (10 Seasons) | 9.9 | 1 | 0 | 0 | 15 | 16 | 1 | 9 | 2 | 10 | 0 | 0 | 0 | ||||
| League One (9 Seasons) | 142.2 | 39 | 0 | 0 | 267 | 125 | 2 | 112 | 48 | 128 | 0 | 0 | 0 | ||||
| National League (2 Seasons) | 18.3 | 2 | 0 | 0 | 0 | ||||||||||||
| Championship (2 Seasons) | 7.0 | 1 | 0 | 0 | 14 | 8 | 0 | 9 | 10 | 2 | 0 | ||||||
| League Two (1 Season) | 29.0 | 3 | 1 | 0 | 44 | 50 | 1 | 31 | 36 | 55 | 0 | ||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2014-2015 | 18 | Rochdale | eng ENG | 3. League One | 8th | 16.4 | 3 | 0 | 30 | Matches | |||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | 3. League One | 10th | 20.7 | 7 | 0 | 35 | Matches | |||||||||
| 2016-2017 | 20 | Rochdale | eng ENG | 3. League One | 9th | 14.4 | 5 | 0 | 0 | 35 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | 3. League One | 20th | 17.3 | 4 | 0 | 0 | 33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | 3. League One | 16th | 5.4 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 22 | Portsmouth | eng ENG | 3. League One | 4th | 1.1 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 23 | Portsmouth | eng ENG | 3. League One | 5th | 12.0 | 3 | 0 | 0 | 31 | 26 | 1 | 22 | 9 | 16 | 0 | 0 | 0 | Matches |
| 2020-2021 | 24 | Portsmouth | eng ENG | 3. League One | 8th | 30.6 | 9 | 0 | 0 | 63 | 65 | 1 | 23 | 23 | 76 | 0 | Matches | ||
| 2021-2022 | 25 | Stockport | eng ENG | 5. National League | 1st | 4.6 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2021-2022 | 25 | Hull City | eng ENG | 2. Championship | 19th | 4.9 | 1 | 0 | 0 | 12 | 8 | 0 | 8 | 8 | 1 | 0 | Matches | ||
| 2022-2023 | 26 | Hull City | eng ENG | 2. Championship | 15th | 2.1 | 0 | 0 | 0 | 2 | 0 | 0 | 1 | 2 | 1 | 0 | Matches | ||
| 2022-2023 | 26 | Wrexham | eng ENG | 5. National League | 1st | 13.7 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2023-2024 | 27 | Wrexham | eng ENG | 4. League Two | 2nd | 29.0 | 3 | 1 | 0 | 44 | 50 | 1 | 31 | 36 | 55 | 0 | Matches | ||
| 2024-2025 | 28 | Wrexham | eng ENG | 3. League One | 2nd | 15.1 | 5 | 0 | 0 | 28 | 22 | 0 | 25 | 9 | 23 | 0 | Matches | ||
| 2025-2026 | 29 | Burton Albion | eng ENG | 3. League One | 17th | 9.1 | 2 | 0 | 0 | 12 | 12 | 0 | 42 | 7 | 13 | 0 | Matches | ||
| 12 Seasons | 6 Clubs | 4 Leagues | 196.5 | 45 | 1 | 0 | 325 | 183 | 3 | 152 | 94 | 185 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rochdale (5 Seasons) | 1 League | 74.3 | 20 | 0 | 0 | 133 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Wrexham (3 Seasons) | 3 Leagues | 57.8 | 9 | 1 | 0 | 72 | 72 | 1 | 56 | 45 | 78 | 0 | |||||||
| Portsmouth (3 Seasons) | 1 League | 43.8 | 12 | 0 | 0 | 94 | 91 | 2 | 45 | 32 | 92 | 0 | 0 | 0 | |||||
| Hull City (2 Seasons) | 1 League | 7.0 | 1 | 0 | 0 | 14 | 8 | 0 | 9 | 10 | 2 | 0 | |||||||
| Burton Albion (1 Season) | 1 League | 9.1 | 2 | 0 | 0 | 12 | 12 | 0 | 42 | 7 | 13 | 0 | |||||||
| Stockport (1 Season) | 1 League | 4.6 | 1 | 0 | 0 | 0 | |||||||||||||
| League One (9 Seasons) | 142.2 | 39 | 0 | 0 | 267 | 125 | 2 | 112 | 48 | 128 | 0 | 0 | 0 | ||||||
| National League (2 Seasons) | 18.3 | 2 | 0 | 0 | 0 | ||||||||||||||
| Championship (2 Seasons) | 7.0 | 1 | 0 | 0 | 14 | 8 | 0 | 9 | 10 | 2 | 0 | ||||||||
| League Two (1 Season) | 29.0 | 3 | 1 | 0 | 44 | 50 | 1 | 31 | 36 | 55 | 0 | ||||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2015-2016 | 19 | Rochdale | eng ENG | FA Cup | 65th | 1.4 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 19 | Rochdale | eng ENG | League Cup | 33rd | 1.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 20 | Rochdale | eng ENG | EFL Cup | 33rd | 1.7 | 0 | 0 | 0 | 5 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 20 | Rochdale | eng ENG | FA Cup | 17th | 1.6 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 21 | Rochdale | eng ENG | EFL Cup | 33rd | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rochdale | eng ENG | FA Cup | 9th | 4.9 | 1 | 0 | 0 | 7 | 16 | 1 | 6 | 3 | 7 | 0 | Matches | ||
| 2018-2019 | 22 | Rochdale | eng ENG | EFL Cup | 33rd | 1.8 | 0 | 0 | 0 | 2 | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | Rochdale | eng ENG | FA Cup | 65th | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2019-2020 | 23 | Portsmouth | eng ENG | EFL Cup | 17th | 1.3 | 1 | 0 | 0 | 5 | 1 | 0 | 1 | 1 | 8 | 0 | Matches | ||
| 2019-2020 | 23 | Portsmouth | eng ENG | FA Cup | 9th | 2.2 | 0 | 0 | 0 | 3 | 6 | 0 | 0 | 0 | 1 | 0 | Matches | ||
| 2020-2021 | 24 | Portsmouth | eng ENG | EFL Cup | 33rd | 0.5 | 0 | 0 | 0 | 0 | 1 | 0 | 3 | 0 | 0 | 0 | Matches | ||
| 2020-2021 | 24 | Portsmouth | eng ENG | FA Cup | 33rd | 1.2 | 0 | 0 | 0 | 1 | 2 | 0 | 2 | 1 | 4 | 0 | Matches | ||
| 2021-2022 | 25 | Hull City | eng ENG | EFL Cup | Rd1 | 1.0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2022-2023 | 26 | Hull City | eng ENG | EFL Cup | Rd1 | 1.0 | 0 | 0 | 0 | 1 | 3 | 0 | 2 | 0 | 1 | 0 | Matches | ||
| 2022-2023 | 26 | Wrexham | eng ENG | FA Cup | 0.9 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | Matches | |||
| 2023-2024 | 27 | Wrexham | eng ENG | EFL Cup | Rd2 | 0.7 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 1 | 0 | 0 | Matches | ||
| 2023-2024 | 27 | Wrexham | eng ENG | FA Cup | 3.2 | 0 | 0 | 0 | 7 | 5 | 0 | 0 | 1 | 3 | 0 | Matches | |||
| 2024-2025 | 28 | Wrexham | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2025-2026 | 29 | Burton Albion | eng ENG | FA Cup | 0.5 | 0 | 0 | 0 | 1 | 0 | 0 | 7 | 2 | 0 | 0 | Matches | |||
| 12 Seasons | 5 Clubs | 2 Leagues | 27.3 | 3 | 0 | 0 | 35 | 45 | 2 | 24 | 10 | 26 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rochdale (5 Seasons) | 2 Leagues | 13.8 | 2 | 0 | 0 | 14 | 25 | 2 | 9 | 3 | 8 | 0 | 0 | 0 | |||||
| Wrexham (3 Seasons) | 2 Leagues | 5.8 | 0 | 0 | 0 | 9 | 7 | 0 | 0 | 3 | 4 | 0 | |||||||
| Portsmouth (2 Seasons) | 2 Leagues | 5.2 | 1 | 0 | 0 | 9 | 10 | 0 | 6 | 2 | 13 | 0 | |||||||
| Hull City (2 Seasons) | 2 Leagues | 2.0 | 0 | 0 | 0 | 2 | 3 | 0 | 2 | 0 | 1 | 0 | |||||||
| Burton Albion (1 Season) | 1 League | 0.5 | 0 | 0 | 0 | 1 | 0 | 0 | 7 | 2 | 0 | 0 | |||||||
| FA Cup (12 Seasons) | 17.4 | 2 | 0 | 0 | 20 | 29 | 1 | 15 | 8 | 16 | 0 | 0 | 0 | ||||||
| EFL Cup (10 Seasons) | 9.9 | 1 | 0 | 0 | 15 | 16 | 1 | 9 | 2 | 10 | 0 | 0 | 0 | ||||||
About FBref.com
FBref.com launched (June 13, 2018) with domestic league coverage for England, France, Germany, Italy, Spain, and United States. Since then we have been steadily expanding our coverage to include domestic leagues from over 40 countries as well as domestic cup, super cup and youth leagues from top European countries. We have also added coverage for major international cups such as the UEFA Champions League and Copa Libertadores.
FBref is the most complete sources for women's football data on the internet. This includes the entire history of the FIFA Women's World Cup as well as recent domestic league seasons from nine countries.
Note that player records are likely not complete for their careers. Players may come from or move to leagues we don't currently cover. This issue will go down over time, as we add new leagues and seasons.
You can sign up to receive an e-mail when new countries and features launch.
For more information, see our Launch Blog Post, the overall leagues/competition page with details on leagues and seasons we include, or our About Page. Let us know if you find an issue or have a suggestion.
FBref is one of seven Sports-Reference.com sites.

Player Club Summary