| 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 | |||||
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 12 | 11 | 974 | 10.8 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | FA Cup | 1 | 1 | 71 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | League Cup | 0 | 0 | Matches | |||||||||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 8 | 4 | 468 | 5.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | FA Cup | 0 | 0 | Matches | |||||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | League Cup | 0 | 0 | Matches | |||||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 13 | 6 | 559 | 6.2 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.16 | 0.16 | 0.00 | 0.16 | Matches |
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 10 | 7 | 737 | 8.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | EFL Cup | 0 | 0 | Matches | |||||||||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 3 | 3 | 270 | 3.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 19 | 16 | 1,449 | 16.1 | 0 | 2 | 2 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.12 | 0.12 | 0.00 | 0.12 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 10 | 10 | 822 | 9.1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | EFL Cup | 0 | 0 | Matches | |||||||||||||||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 3 | 3 | 270 | 3.0 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.67 | 0.33 | 0.67 | Matches |
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 18 | 18 | 1,575 | 17.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.06 | 0.06 | 0.00 | 0.06 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 26 | 26 | 2,277 | 25.3 | 0 | 2 | 2 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.08 | 0.08 | 0.00 | 0.08 | Matches |
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 31 | 24 | 2,130 | 23.7 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.08 | 0.00 | 0.08 | 0.08 | 0.08 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 2 | 2 | 180 | 2.0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.50 | 0.50 | 0.00 | 0.50 | Matches |
| 2020-2021 | 24 | Charlton Athletic | 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 |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 28 | 19 | 1,675 | 18.6 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 1 | 0.11 | 0.00 | 0.11 | 0.11 | 0.11 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 2 | 2 | 171 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 27 | 24 | 2,099 | 23.3 | 3 | 0 | 3 | 3 | 0 | 0 | 7 | 0 | 0.13 | 0.00 | 0.13 | 0.13 | 0.13 | Matches |
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 11 | 11 | 941 | 10.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | Matches |
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 12 | 7 | 675 | 7.5 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.13 | 0.13 | 0.27 | 0.13 | 0.27 | Matches |
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 12 | 11 | 949 | 10.5 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | Matches |
| 2024-2025 | 28 | Exeter 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 |
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 1 | 1 | 72 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 21 | 12 | 1,017 | 11.3 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 29 | Cambridge United | eng ENG | EFL Cup | 0 | 0 | Matches | |||||||||||||||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 3 | 1 | 125 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 34 | 18 | 1,781 | 19.8 | 0 | 1 | 1 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | Matches |
| 13 Seasons | 7 Clubs | 6 Leagues | 310 | 240 | 21,557 | 239.5 | 10 | 11 | 21 | 10 | 0 | 0 | 49 | 1 | 0.04 | 0.05 | 0.09 | 0.04 | 0.09 | |||
| Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Charlton Athletic (4 Seasons) | 4 Leagues | 109 | 90 | 7,920 | 88.0 | 7 | 2 | 9 | 7 | 0 | 0 | 18 | 1 | 0.08 | 0.02 | 0.10 | 0.08 | 0.10 | ||||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 56 | 41 | 3,791 | 42.1 | 0 | 3 | 3 | 0 | 0 | 0 | 11 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | ||||
| Exeter City (2 Seasons) | 3 Leagues | 35 | 21 | 1,854 | 20.6 | 1 | 1 | 2 | 1 | 0 | 0 | 6 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | ||||
| Ross County (2 Seasons) | 1 League | 23 | 22 | 1,890 | 21.0 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | ||||
| Rotherham United (2 Seasons) | 3 Leagues | 21 | 18 | 1,649 | 18.3 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Cambridge United (1 Season) | 3 Leagues | 37 | 19 | 1,906 | 21.2 | 0 | 1 | 1 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | ||||
| AFC Wimbledon (1 Season) | 3 Leagues | 29 | 29 | 2,547 | 28.3 | 1 | 3 | 4 | 1 | 0 | 0 | 4 | 0 | 0.04 | 0.11 | 0.14 | 0.04 | 0.14 | ||||
| FA Cup (8 Seasons) | 14 | 12 | 1,069 | 11.9 | 1 | 1 | 2 | 1 | 0 | 0 | 4 | 0 | 0.08 | 0.08 | 0.17 | 0.08 | 0.17 | |||||
| EFL Cup (8 Seasons) | 4 | 4 | 360 | 4.0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.25 | 0.25 | 0.00 | 0.25 | |||||
| League One (6 Seasons) | 142 | 116 | 10,140 | 112.7 | 6 | 4 | 10 | 6 | 0 | 0 | 24 | 1 | 0.05 | 0.04 | 0.09 | 0.05 | 0.09 | |||||
| League Two (5 Seasons) | 86 | 55 | 5,231 | 58.1 | 0 | 4 | 4 | 0 | 0 | 0 | 13 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | |||||
| Championship (2 Seasons) | 41 | 31 | 2,867 | 31.9 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 0 | 0.06 | 0.00 | 0.06 | 0.06 | 0.06 | |||||
| Premiership (2 Seasons) | 23 | 22 | 1,890 | 21.0 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | |||||
| 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 | |||||
| 2013-2014 | 17 | Plymouth Argyle | 1 League | 12 | 11 | 974 | 10.8 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2014-2015 | 18 | Plymouth Argyle | 3 Leagues | 9 | 5 | 539 | 6.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2015-2016 | 19 | Plymouth Argyle | 3 Leagues | 13 | 6 | 559 | 6.2 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.16 | 0.16 | 0.00 | 0.16 | |
| 2016-2017 | 20 | Plymouth Argyle | 3 Leagues | 22 | 19 | 1,719 | 19.1 | 0 | 2 | 2 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | |
| 2016-2017 | 20 | Rotherham United | 1 League | 10 | 7 | 737 | 8.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2017-2018 | 21 | Rotherham United | 2 Leagues | 11 | 11 | 912 | 10.1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2018-2019 | 22 | AFC Wimbledon | 3 Leagues | 29 | 29 | 2,547 | 28.3 | 1 | 3 | 4 | 1 | 0 | 0 | 4 | 0 | 0.04 | 0.11 | 0.14 | 0.04 | 0.14 | |
| 2018-2019 | 22 | Charlton Athletic | 1 League | 18 | 18 | 1,575 | 17.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.06 | 0.06 | 0.00 | 0.06 | |
| 2019-2020 | 23 | Charlton Athletic | 1 League | 31 | 24 | 2,130 | 23.7 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.08 | 0.00 | 0.08 | 0.08 | 0.08 | |
| 2020-2021 | 24 | Charlton Athletic | 3 Leagues | 31 | 22 | 1,945 | 21.6 | 2 | 1 | 3 | 2 | 0 | 0 | 5 | 1 | 0.09 | 0.05 | 0.14 | 0.09 | 0.14 | |
| 2021-2022 | 25 | Charlton Athletic | 2 Leagues | 29 | 26 | 2,270 | 25.2 | 3 | 0 | 3 | 3 | 0 | 0 | 8 | 0 | 0.12 | 0.00 | 0.12 | 0.12 | 0.12 | |
| 2022-2023 | 26 | Ross County | 1 League | 11 | 11 | 941 | 10.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | |
| 2023-2024 | 27 | Ross County | 1 League | 12 | 11 | 949 | 10.5 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | |
| 2023-2024 | 27 | Exeter City | 1 League | 12 | 7 | 675 | 7.5 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.13 | 0.13 | 0.27 | 0.13 | 0.27 | |
| 2024-2025 | 28 | Exeter City | 3 Leagues | 23 | 14 | 1,179 | 13.1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2025-2026 | 29 | Cambridge United | 3 Leagues | 37 | 19 | 1,906 | 21.2 | 0 | 1 | 1 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | |
| 13 Seasons | 7 Clubs | 6 Leagues | 310 | 240 | 21,557 | 239.5 | 10 | 11 | 21 | 10 | 0 | 0 | 49 | 1 | 0.04 | 0.05 | 0.09 | 0.04 | 0.09 | ||
| Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Charlton Athletic (4 Seasons) | 4 Leagues | 109 | 90 | 7,920 | 88.0 | 7 | 2 | 9 | 7 | 0 | 0 | 18 | 1 | 0.08 | 0.02 | 0.10 | 0.08 | 0.10 | |||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 56 | 41 | 3,791 | 42.1 | 0 | 3 | 3 | 0 | 0 | 0 | 11 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | |||
| Exeter City (2 Seasons) | 3 Leagues | 35 | 21 | 1,854 | 20.6 | 1 | 1 | 2 | 1 | 0 | 0 | 6 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | |||
| Ross County (2 Seasons) | 1 League | 23 | 22 | 1,890 | 21.0 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | |||
| Rotherham United (2 Seasons) | 3 Leagues | 21 | 18 | 1,649 | 18.3 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Cambridge United (1 Season) | 3 Leagues | 37 | 19 | 1,906 | 21.2 | 0 | 1 | 1 | 0 | 0 | 0 | 5 | 0 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | |||
| AFC Wimbledon (1 Season) | 3 Leagues | 29 | 29 | 2,547 | 28.3 | 1 | 3 | 4 | 1 | 0 | 0 | 4 | 0 | 0.04 | 0.11 | 0.14 | 0.04 | 0.14 | |||
| FA Cup (8 Seasons) | 14 | 12 | 1,069 | 11.9 | 1 | 1 | 2 | 1 | 0 | 0 | 4 | 0 | 0.08 | 0.08 | 0.17 | 0.08 | 0.17 | ||||
| EFL Cup (8 Seasons) | 4 | 4 | 360 | 4.0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.25 | 0.25 | 0.00 | 0.25 | ||||
| League One (6 Seasons) | 142 | 116 | 10,140 | 112.7 | 6 | 4 | 10 | 6 | 0 | 0 | 24 | 1 | 0.05 | 0.04 | 0.09 | 0.05 | 0.09 | ||||
| League Two (5 Seasons) | 86 | 55 | 5,231 | 58.1 | 0 | 4 | 4 | 0 | 0 | 0 | 13 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | ||||
| Championship (2 Seasons) | 41 | 31 | 2,867 | 31.9 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 0 | 0.06 | 0.00 | 0.06 | 0.06 | 0.06 | ||||
| Premiership (2 Seasons) | 23 | 22 | 1,890 | 21.0 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | ||||
| 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 | |||||
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 10th | 12 | 11 | 974 | 10.8 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 7th | 8 | 4 | 468 | 5.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 5th | 13 | 6 | 559 | 6.2 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.16 | 0.16 | 0.00 | 0.16 | Matches |
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 2nd | 19 | 16 | 1,449 | 16.1 | 0 | 2 | 2 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.12 | 0.12 | 0.00 | 0.12 | Matches |
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 24th | 10 | 7 | 737 | 8.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 4th | 10 | 10 | 822 | 9.1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 20th | 26 | 26 | 2,277 | 25.3 | 0 | 2 | 2 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.08 | 0.08 | 0.00 | 0.08 | Matches |
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 3rd | 18 | 18 | 1,575 | 17.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.06 | 0.06 | 0.00 | 0.06 | Matches |
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 22nd | 31 | 24 | 2,130 | 23.7 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.08 | 0.00 | 0.08 | 0.08 | 0.08 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 7th | 28 | 19 | 1,675 | 18.6 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 1 | 0.11 | 0.00 | 0.11 | 0.11 | 0.11 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 13th | 27 | 24 | 2,099 | 23.3 | 3 | 0 | 3 | 3 | 0 | 0 | 7 | 0 | 0.13 | 0.00 | 0.13 | 0.13 | 0.13 | Matches |
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 11th | 11 | 11 | 941 | 10.5 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | Matches |
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 11th | 12 | 11 | 949 | 10.5 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | Matches |
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 13th | 12 | 7 | 675 | 7.5 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.13 | 0.13 | 0.27 | 0.13 | 0.27 | Matches |
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 16th | 21 | 12 | 1,017 | 11.3 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 3rd | 34 | 18 | 1,781 | 19.8 | 0 | 1 | 1 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | Matches |
| 13 Seasons | 7 Clubs | 4 Leagues | 292 | 224 | 20,128 | 223.6 | 9 | 9 | 18 | 9 | 0 | 0 | 44 | 1 | 0.04 | 0.04 | 0.08 | 0.04 | 0.08 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Charlton Athletic (4 Seasons) | 2 Leagues | 104 | 85 | 7,479 | 83.1 | 7 | 1 | 8 | 7 | 0 | 0 | 17 | 1 | 0.08 | 0.01 | 0.10 | 0.08 | 0.10 | |||||
| Plymouth Argyle (4 Seasons) | 1 League | 52 | 37 | 3,450 | 38.3 | 0 | 3 | 3 | 0 | 0 | 0 | 9 | 0 | 0.00 | 0.08 | 0.08 | 0.00 | 0.08 | |||||
| Exeter City (2 Seasons) | 1 League | 33 | 19 | 1,692 | 18.8 | 1 | 1 | 2 | 1 | 0 | 0 | 6 | 0 | 0.05 | 0.05 | 0.11 | 0.05 | 0.11 | |||||
| Ross County (2 Seasons) | 1 League | 23 | 22 | 1,890 | 21.0 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | |||||
| Rotherham United (2 Seasons) | 2 Leagues | 20 | 17 | 1,559 | 17.3 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Cambridge United (1 Season) | 1 League | 34 | 18 | 1,781 | 19.8 | 0 | 1 | 1 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.05 | 0.05 | 0.00 | 0.05 | |||||
| AFC Wimbledon (1 Season) | 1 League | 26 | 26 | 2,277 | 25.3 | 0 | 2 | 2 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.08 | 0.08 | 0.00 | 0.08 | |||||
| League One (6 Seasons) | 142 | 116 | 10,140 | 112.7 | 6 | 4 | 10 | 6 | 0 | 0 | 24 | 1 | 0.05 | 0.04 | 0.09 | 0.05 | 0.09 | ||||||
| League Two (5 Seasons) | 86 | 55 | 5,231 | 58.1 | 0 | 4 | 4 | 0 | 0 | 0 | 13 | 0 | 0.00 | 0.07 | 0.07 | 0.00 | 0.07 | ||||||
| Championship (2 Seasons) | 41 | 31 | 2,867 | 31.9 | 2 | 0 | 2 | 2 | 0 | 0 | 5 | 0 | 0.06 | 0.00 | 0.06 | 0.06 | 0.06 | ||||||
| Premiership (2 Seasons) | 23 | 22 | 1,890 | 21.0 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.05 | 0.05 | 0.10 | 0.05 | 0.10 | ||||||
| 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 | Plymouth Argyle | eng ENG | FA Cup | 65th | 1 | 1 | 71 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | League Cup | 58th | 0 | 0 | Matches | |||||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | FA Cup | 85th | 0 | 0 | Matches | |||||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | League Cup | 57th | 0 | 0 | Matches | |||||||||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | EFL Cup | 58th | 0 | 0 | Matches | |||||||||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 33rd | 3 | 3 | 270 | 3.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 33rd | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | EFL Cup | 33rd | 0 | 0 | Matches | |||||||||||||||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 9th | 3 | 3 | 270 | 3.0 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.67 | 0.33 | 0.67 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 33rd | 2 | 2 | 180 | 2.0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.50 | 0.50 | 0.00 | 0.50 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 85th | 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 | Charlton Athletic | eng ENG | FA Cup | 2 | 2 | 171 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2024-2025 | 28 | Exeter 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 |
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 1 | 1 | 72 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2025-2026 | 29 | Cambridge United | eng ENG | EFL Cup | Rd3 | 0 | 0 | Matches | |||||||||||||||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 3 | 1 | 125 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 9 Seasons | 6 Clubs | 2 Leagues | 18 | 16 | 1,429 | 15.9 | 1 | 2 | 3 | 1 | 0 | 0 | 5 | 0 | 0.06 | 0.13 | 0.19 | 0.06 | 0.19 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Plymouth Argyle (3 Seasons) | 2 Leagues | 4 | 4 | 341 | 3.8 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Charlton Athletic (2 Seasons) | 2 Leagues | 5 | 5 | 441 | 4.9 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.20 | 0.20 | 0.00 | 0.20 | |||||
| Cambridge United (1 Season) | 2 Leagues | 3 | 1 | 125 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| AFC Wimbledon (1 Season) | 2 Leagues | 3 | 3 | 270 | 3.0 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.67 | 0.33 | 0.67 | |||||
| Exeter City (1 Season) | 2 Leagues | 2 | 2 | 162 | 1.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Rotherham United (1 Season) | 1 League | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| FA Cup (8 Seasons) | 14 | 12 | 1,069 | 11.9 | 1 | 1 | 2 | 1 | 0 | 0 | 4 | 0 | 0.08 | 0.08 | 0.17 | 0.08 | 0.17 | ||||||
| EFL Cup (8 Seasons) | 4 | 4 | 360 | 4.0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.25 | 0.25 | 0.00 | 0.25 | ||||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 10.8 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 5.2 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 6.2 | 0 | 1 | 0.16 | 0.00 | 0 | 0 | Matches | ||||
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 8.2 | 0 | 0 | 1 | 0.00 | 0.12 | 0.00 | 0 | 0 | Matches | ||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 3.0 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 16.1 | 0 | 0 | 2 | 0.00 | 0.12 | 0.00 | 0 | 0 | Matches | ||
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 9.1 | 0 | 0 | 1 | 0.00 | 0.11 | 0.00 | 0 | 0 | Matches | ||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 3.0 | 1 | 2 | 2 | 100.0 | 0.67 | 0.67 | 0.50 | 0.50 | 0 | 0 | Matches |
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 17.5 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 25.3 | 0 | 0 | 0 | Matches | |||||||
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 23.7 | 2 | 9 | 3 | 33.3 | 0.38 | 0.13 | 0.22 | 0.67 | 0 | 0 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 2.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 1.0 | 0 | 1 | 1 | 100.0 | 1.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 18.6 | 2 | 8 | 3 | 37.5 | 0.43 | 0.16 | 0.25 | 0.67 | 0 | 0 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 1.9 | 0 | 1 | 0 | 0.0 | 0.53 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 23.3 | 3 | 18 | 5 | 27.8 | 0.77 | 0.21 | 0.17 | 0.60 | 0 | 0 | Matches |
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 10.5 | 0 | 3 | 0 | 0.0 | 0.29 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 7.5 | 1 | 4 | 3 | 75.0 | 0.53 | 0.40 | 0.25 | 0.33 | 0 | 0 | Matches |
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 10.5 | 1 | 1 | 1 | 100.0 | 0.09 | 0.09 | 1.00 | 1.00 | 0 | 0 | Matches |
| 2024-2025 | 28 | Exeter City | eng ENG | EFL Cup | 1.0 | 0 | 2 | 0 | 0.0 | 2.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 11.3 | 0 | 4 | 0 | 0.0 | 0.35 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 1.4 | 0 | 1 | 0 | 0.0 | 0.72 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 19.8 | 0 | 7 | 1 | 14.3 | 0.35 | 0.05 | 0.00 | 0.00 | 0 | 0 | Matches |
| 13 Seasons | 7 Clubs | 6 Leagues | 239.5 | 10 | 61 | 24 | 37.7 | 0.36 | 0.12 | 0.16 | 0.42 | 0 | 0 | |||
| Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Charlton Athletic (4 Seasons) | 4 Leagues | 88.0 | 7 | 37 | 12 | 32.4 | 0.52 | 0.17 | 0.19 | 0.58 | 0 | 0 | ||||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 42.1 | 0 | 0 | 3 | 0.00 | 0.08 | 0.00 | 0 | 0 | ||||||
| Exeter City (2 Seasons) | 3 Leagues | 20.6 | 1 | 10 | 3 | 30.0 | 0.51 | 0.15 | 0.10 | 0.33 | 0 | 0 | ||||
| Ross County (2 Seasons) | 1 League | 21.0 | 1 | 4 | 1 | 25.0 | 0.19 | 0.05 | 0.25 | 1.00 | 0 | 0 | ||||
| Rotherham United (2 Seasons) | 3 Leagues | 18.3 | 0 | 0 | 2 | 0.00 | 0.11 | 0.00 | 0 | 0 | ||||||
| Cambridge United (1 Season) | 3 Leagues | 21.2 | 0 | 8 | 1 | 12.5 | 0.38 | 0.05 | 0.00 | 0.00 | 0 | 0 | ||||
| AFC Wimbledon (1 Season) | 3 Leagues | 28.3 | 1 | 2 | 2 | 100.0 | 0.67 | 0.67 | 0.50 | 0.50 | 0 | 0 | ||||
| FA Cup (8 Seasons) | 11.9 | 1 | 5 | 3 | 60.0 | 0.69 | 0.41 | 0.20 | 0.33 | 0 | 0 | |||||
| EFL Cup (8 Seasons) | 4.0 | 0 | 2 | 0 | 0.0 | 0.50 | 0.00 | 0.00 | 0 | 0 | ||||||
| League One (6 Seasons) | 112.7 | 6 | 34 | 12 | 35.3 | 0.49 | 0.17 | 0.18 | 0.50 | 0 | 0 | |||||
| League Two (5 Seasons) | 58.1 | 0 | 7 | 4 | 42.9 | 0.20 | 0.07 | 0.00 | 0.00 | 0 | 0 | |||||
| Championship (2 Seasons) | 31.9 | 2 | 9 | 4 | 44.4 | 0.28 | 0.13 | 0.22 | 0.50 | 0 | 0 | |||||
| Premiership (2 Seasons) | 21.0 | 1 | 4 | 1 | 25.0 | 0.19 | 0.05 | 0.25 | 1.00 | 0 | 0 | |||||
| Standard | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2013-2014 | 17 | Plymouth Argyle | 1 League | 10.8 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2014-2015 | 18 | Plymouth Argyle | 3 Leagues | 6.0 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2015-2016 | 19 | Plymouth Argyle | 3 Leagues | 6.2 | 0 | 1 | 0.16 | 0.00 | 0 | 0 | |||||
| 2016-2017 | 20 | Plymouth Argyle | 3 Leagues | 19.1 | 0 | 0 | 2 | 0.00 | 0.12 | 0.00 | 0 | 0 | |||
| 2016-2017 | 20 | Rotherham United | 1 League | 8.2 | 0 | 0 | 1 | 0.00 | 0.12 | 0.00 | 0 | 0 | |||
| 2017-2018 | 21 | Rotherham United | 2 Leagues | 10.1 | 0 | 0 | 1 | 0.00 | 0.10 | 0.00 | 0 | 0 | |||
| 2018-2019 | 22 | AFC Wimbledon | 3 Leagues | 28.3 | 1 | 2 | 2 | 100.0 | 0.67 | 0.67 | 0.50 | 0.50 | 0 | 0 | |
| 2018-2019 | 22 | Charlton Athletic | 1 League | 17.5 | 0 | 0 | 0 | ||||||||
| 2019-2020 | 23 | Charlton Athletic | 1 League | 23.7 | 2 | 9 | 3 | 33.3 | 0.38 | 0.13 | 0.22 | 0.67 | 0 | 0 | |
| 2020-2021 | 24 | Charlton Athletic | 3 Leagues | 21.6 | 2 | 9 | 4 | 44.4 | 0.42 | 0.19 | 0.22 | 0.50 | 0 | 0 | |
| 2021-2022 | 25 | Charlton Athletic | 2 Leagues | 25.2 | 3 | 19 | 5 | 26.3 | 0.75 | 0.20 | 0.16 | 0.60 | 0 | 0 | |
| 2022-2023 | 26 | Ross County | 1 League | 10.5 | 0 | 3 | 0 | 0.0 | 0.29 | 0.00 | 0.00 | 0 | 0 | ||
| 2023-2024 | 27 | Ross County | 1 League | 10.5 | 1 | 1 | 1 | 100.0 | 0.09 | 0.09 | 1.00 | 1.00 | 0 | 0 | |
| 2023-2024 | 27 | Exeter City | 1 League | 7.5 | 1 | 4 | 3 | 75.0 | 0.53 | 0.40 | 0.25 | 0.33 | 0 | 0 | |
| 2024-2025 | 28 | Exeter City | 3 Leagues | 13.1 | 0 | 6 | 0 | 0.0 | 0.49 | 0.00 | 0.00 | 0 | 0 | ||
| 2025-2026 | 29 | Cambridge United | 3 Leagues | 21.2 | 0 | 8 | 1 | 12.5 | 0.38 | 0.05 | 0.00 | 0.00 | 0 | 0 | |
| 13 Seasons | 7 Clubs | 6 Leagues | 239.5 | 10 | 61 | 24 | 37.7 | 0.36 | 0.12 | 0.16 | 0.42 | 0 | 0 | ||
| Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Charlton Athletic (4 Seasons) | 4 Leagues | 88.0 | 7 | 37 | 12 | 32.4 | 0.52 | 0.17 | 0.19 | 0.58 | 0 | 0 | |||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 42.1 | 0 | 0 | 3 | 0.00 | 0.08 | 0.00 | 0 | 0 | |||||
| Exeter City (2 Seasons) | 3 Leagues | 20.6 | 1 | 10 | 3 | 30.0 | 0.51 | 0.15 | 0.10 | 0.33 | 0 | 0 | |||
| Ross County (2 Seasons) | 1 League | 21.0 | 1 | 4 | 1 | 25.0 | 0.19 | 0.05 | 0.25 | 1.00 | 0 | 0 | |||
| Rotherham United (2 Seasons) | 3 Leagues | 18.3 | 0 | 0 | 2 | 0.00 | 0.11 | 0.00 | 0 | 0 | |||||
| Cambridge United (1 Season) | 3 Leagues | 21.2 | 0 | 8 | 1 | 12.5 | 0.38 | 0.05 | 0.00 | 0.00 | 0 | 0 | |||
| AFC Wimbledon (1 Season) | 3 Leagues | 28.3 | 1 | 2 | 2 | 100.0 | 0.67 | 0.67 | 0.50 | 0.50 | 0 | 0 | |||
| FA Cup (8 Seasons) | 11.9 | 1 | 5 | 3 | 60.0 | 0.69 | 0.41 | 0.20 | 0.33 | 0 | 0 | ||||
| EFL Cup (8 Seasons) | 4.0 | 0 | 2 | 0 | 0.0 | 0.50 | 0.00 | 0.00 | 0 | 0 | |||||
| League One (6 Seasons) | 112.7 | 6 | 34 | 12 | 35.3 | 0.49 | 0.17 | 0.18 | 0.50 | 0 | 0 | ||||
| League Two (5 Seasons) | 58.1 | 0 | 7 | 4 | 42.9 | 0.20 | 0.07 | 0.00 | 0.00 | 0 | 0 | ||||
| Championship (2 Seasons) | 31.9 | 2 | 9 | 4 | 44.4 | 0.28 | 0.13 | 0.22 | 0.50 | 0 | 0 | ||||
| Premiership (2 Seasons) | 21.0 | 1 | 4 | 1 | 25.0 | 0.19 | 0.05 | 0.25 | 1.00 | 0 | 0 | ||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 10th | 10.8 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 7th | 5.2 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 5th | 6.2 | 0 | 1 | 0.16 | 0.00 | 0 | 0 | Matches | ||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 2nd | 16.1 | 0 | 0 | 2 | 0.00 | 0.12 | 0.00 | 0 | 0 | Matches | ||
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 24th | 8.2 | 0 | 0 | 1 | 0.00 | 0.12 | 0.00 | 0 | 0 | Matches | ||
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 4th | 9.1 | 0 | 0 | 1 | 0.00 | 0.11 | 0.00 | 0 | 0 | Matches | ||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 20th | 25.3 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 3rd | 17.5 | 0 | 0 | 0 | Matches | |||||||
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 22nd | 23.7 | 2 | 9 | 3 | 33.3 | 0.38 | 0.13 | 0.22 | 0.67 | 0 | 0 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 7th | 18.6 | 2 | 8 | 3 | 37.5 | 0.43 | 0.16 | 0.25 | 0.67 | 0 | 0 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 13th | 23.3 | 3 | 18 | 5 | 27.8 | 0.77 | 0.21 | 0.17 | 0.60 | 0 | 0 | Matches |
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 11th | 10.5 | 0 | 3 | 0 | 0.0 | 0.29 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 11th | 10.5 | 1 | 1 | 1 | 100.0 | 0.09 | 0.09 | 1.00 | 1.00 | 0 | 0 | Matches |
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 13th | 7.5 | 1 | 4 | 3 | 75.0 | 0.53 | 0.40 | 0.25 | 0.33 | 0 | 0 | Matches |
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 16th | 11.3 | 0 | 4 | 0 | 0.0 | 0.35 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 3rd | 19.8 | 0 | 7 | 1 | 14.3 | 0.35 | 0.05 | 0.00 | 0.00 | 0 | 0 | Matches |
| 13 Seasons | 7 Clubs | 4 Leagues | 223.6 | 9 | 54 | 21 | 37.0 | 0.34 | 0.12 | 0.17 | 0.43 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Charlton Athletic (4 Seasons) | 2 Leagues | 83.1 | 7 | 35 | 11 | 31.4 | 0.53 | 0.17 | 0.20 | 0.64 | 0 | 0 | |||||
| Plymouth Argyle (4 Seasons) | 1 League | 38.3 | 0 | 0 | 3 | 0.00 | 0.08 | 0.00 | 0 | 0 | |||||||
| Exeter City (2 Seasons) | 1 League | 18.8 | 1 | 8 | 3 | 37.5 | 0.43 | 0.16 | 0.13 | 0.33 | 0 | 0 | |||||
| Ross County (2 Seasons) | 1 League | 21.0 | 1 | 4 | 1 | 25.0 | 0.19 | 0.05 | 0.25 | 1.00 | 0 | 0 | |||||
| Rotherham United (2 Seasons) | 2 Leagues | 17.3 | 0 | 0 | 2 | 0.00 | 0.12 | 0.00 | 0 | 0 | |||||||
| Cambridge United (1 Season) | 1 League | 19.8 | 0 | 7 | 1 | 14.3 | 0.35 | 0.05 | 0.00 | 0.00 | 0 | 0 | |||||
| AFC Wimbledon (1 Season) | 1 League | 25.3 | 0 | 0 | 0 | ||||||||||||
| League One (6 Seasons) | 112.7 | 6 | 34 | 12 | 35.3 | 0.49 | 0.17 | 0.18 | 0.50 | 0 | 0 | ||||||
| League Two (5 Seasons) | 58.1 | 0 | 7 | 4 | 42.9 | 0.20 | 0.07 | 0.00 | 0.00 | 0 | 0 | ||||||
| Championship (2 Seasons) | 31.9 | 2 | 9 | 4 | 44.4 | 0.28 | 0.13 | 0.22 | 0.50 | 0 | 0 | ||||||
| Premiership (2 Seasons) | 21.0 | 1 | 4 | 1 | 25.0 | 0.19 | 0.05 | 0.25 | 1.00 | 0 | 0 | ||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | FA Cup | 65th | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 33rd | 3.0 | 0 | 0 | 0 | Matches | |||||||
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 33rd | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 9th | 3.0 | 1 | 2 | 2 | 100.0 | 0.67 | 0.67 | 0.50 | 0.50 | 0 | 0 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 33rd | 2.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 85th | 1.0 | 0 | 1 | 1 | 100.0 | 1.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 1.9 | 0 | 1 | 0 | 0.0 | 0.53 | 0.00 | 0.00 | 0 | 0 | Matches | ||
| 2024-2025 | 28 | Exeter City | eng ENG | EFL Cup | Rd1 | 1.0 | 0 | 2 | 0 | 0.0 | 2.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | Matches | ||||||||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 1.4 | 0 | 1 | 0 | 0.0 | 0.72 | 0.00 | 0.00 | 0 | 0 | Matches | ||
| 9 Seasons | 6 Clubs | 2 Leagues | 15.9 | 1 | 7 | 3 | 42.9 | 0.62 | 0.27 | 0.14 | 0.33 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Plymouth Argyle (3 Seasons) | 2 Leagues | 3.8 | 0 | 0 | 0 | ||||||||||||
| Charlton Athletic (2 Seasons) | 2 Leagues | 4.9 | 0 | 2 | 1 | 50.0 | 0.41 | 0.20 | 0.00 | 0.00 | 0 | 0 | |||||
| Cambridge United (1 Season) | 2 Leagues | 1.4 | 0 | 1 | 0 | 0.0 | 0.72 | 0.00 | 0.00 | 0 | 0 | ||||||
| AFC Wimbledon (1 Season) | 2 Leagues | 3.0 | 1 | 2 | 2 | 100.0 | 0.67 | 0.67 | 0.50 | 0.50 | 0 | 0 | |||||
| Exeter City (1 Season) | 2 Leagues | 1.8 | 0 | 2 | 0 | 0.0 | 2.00 | 0.00 | 0.00 | 0 | 0 | ||||||
| Rotherham United (1 Season) | 1 League | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| FA Cup (8 Seasons) | 11.9 | 1 | 5 | 3 | 60.0 | 0.69 | 0.41 | 0.20 | 0.33 | 0 | 0 | ||||||
| EFL Cup (8 Seasons) | 4.0 | 0 | 2 | 0 | 0.0 | 0.50 | 0.00 | 0.00 | 0 | 0 | |||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 12 | 974 | 81 | 23.5 | 10.8 | 11 | 1 | |||||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | FA Cup | 1 | 71 | 71 | 39.4 | 0.8 | 1 | 71 | 0 | 0 | 0 | 0.00 | 0 | 2 | -2 | -2.54 | -3.36 | Matches | |
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | League Cup | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 8 | 468 | 59 | 11.3 | 5.2 | 4 | 4 | 4 | 26 | 0.78 | 5 | 5 | 0 | 0.00 | -0.44 | Matches | ||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | FA Cup | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | League Cup | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 13 | 559 | 43 | 13.5 | 6.2 | 6 | 4 | 7 | 32 | 2.14 | 12 | 9 | +3 | +0.48 | -0.10 | Matches | ||
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 10 | 737 | 74 | 17.8 | 8.2 | 7 | 7 | 3 | 7 | 0.20 | 7 | 22 | -15 | -1.83 | -0.69 | Matches | ||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | EFL Cup | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 3 | 270 | 90 | 56.3 | 3.0 | 3 | 90 | 3 | 0 | 1 | 1.33 | 2 | 2 | 0 | 0.00 | -0.43 | Matches | |
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 19 | 1,449 | 76 | 35.0 | 16.1 | 16 | 15 | 3 | 3 | 2.47 | 32 | 16 | +16 | +0.99 | +0.69 | Matches | ||
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 1 | 0.00 | 1 | 2 | -1 | -1.00 | -2.00 | Matches | |
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 10 | 822 | 82 | 19.9 | 9.1 | 10 | 8 | 0 | 10 | 1.90 | 17 | 10 | +7 | +0.77 | +0.41 | Matches | ||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | EFL Cup | 0 | 0 | 0 | 0 | 2 | Matches | ||||||||||||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 3 | 270 | 90 | 60.0 | 3.0 | 3 | 90 | 3 | 0 | 0 | 3.00 | 7 | 3 | +4 | +1.33 | +0.83 | Matches | |
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 18 | 1,575 | 88 | 38.0 | 17.5 | 18 | 88 | 17 | 0 | 0 | 2.24 | 28 | 7 | +21 | +1.20 | +0.78 | Matches | |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 26 | 2,277 | 88 | 55.0 | 25.3 | 26 | 88 | 22 | 0 | 0 | 0.85 | 20 | 35 | -15 | -0.59 | -0.30 | Matches | |
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 31 | 2,130 | 69 | 51.4 | 23.7 | 24 | 83 | 17 | 7 | 19 | 10 | 1.26 | 25 | 33 | -8 | -0.34 | -0.02 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 3 | 4 | -1 | -0.50 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 28 | 1,675 | 60 | 40.5 | 18.6 | 19 | 81 | 14 | 9 | 14 | 6 | 1.71 | 26 | 20 | +6 | +0.32 | +0.03 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 2 | 171 | 86 | 63.3 | 1.9 | 2 | 86 | 1 | 0 | 0 | 1.50 | 2 | 1 | +1 | +0.53 | -3.11 | Matches | |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 27 | 2,099 | 78 | 50.7 | 23.3 | 24 | 87 | 21 | 3 | 3 | 5 | 1.52 | 25 | 26 | -1 | -0.04 | +0.09 | Matches |
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 11 | 941 | 86 | 27.5 | 10.5 | 11 | 86 | 9 | 0 | 5 | 0.82 | 6 | 18 | -12 | -1.15 | -0.75 | Matches | |
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 12 | 675 | 56 | 16.3 | 7.5 | 7 | 77 | 3 | 5 | 28 | 2 | 1.58 | 6 | 7 | -1 | -0.13 | +0.23 | Matches |
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 12 | 949 | 79 | 27.7 | 10.5 | 11 | 82 | 7 | 1 | 45 | 4 | 0.83 | 6 | 12 | -6 | -0.57 | +0.27 | Matches |
| 2024-2025 | 28 | Exeter 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 | ||
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 1 | 72 | 72 | 18.5 | 0.8 | 1 | 72 | 0 | 0 | 2 | 3.00 | 1 | 2 | -1 | -1.25 | -3.23 | Matches | |
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 21 | 1,017 | 48 | 24.6 | 11.3 | 12 | 79 | 8 | 9 | 8 | 8 | 1.57 | 7 | 10 | -3 | -0.27 | +0.11 | Matches |
| 2025-2026 | 29 | Cambridge United | eng ENG | EFL Cup | 0 | 0 | 0 | 0 | 3 | Matches | ||||||||||||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 3 | 125 | 42 | 41.7 | 1.4 | 1 | 90 | 1 | 2 | 18 | 0 | 1.33 | 5 | 1 | +4 | +2.88 | +3.91 | Matches |
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 34 | 1,781 | 52 | 43.0 | 19.8 | 18 | 83 | 14 | 16 | 18 | 10 | 1.97 | 26 | 18 | +8 | +0.40 | -0.55 | Matches |
| 13 Seasons | 7 Clubs | 6 Leagues | 310 | 21,557 | 70 | 31.6 | 239.5 | 240 | 84 | 183 | 70 | 16 | 141 | 1.53 | 270 | 267 | +3 | +0.01 | +0.01 | |||
| Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Charlton Athletic (4 Seasons) | 4 Leagues | 109 | 7,920 | 73 | 46.3 | 88.0 | 90 | 85 | 73 | 19 | 14 | 21 | 1.60 | 109 | 92 | +17 | +0.19 | +0.06 | ||||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 56 | 3,791 | 68 | 21.5 | 42.1 | 41 | 85 | 26 | 15 | 66 | 1.93 | 51 | 34 | +17 | +0.54 | +0.09 | |||||
| Exeter City (2 Seasons) | 3 Leagues | 35 | 1,854 | 53 | 21.2 | 20.6 | 21 | 78 | 12 | 14 | 15 | 12 | 1.60 | 15 | 20 | -5 | -0.24 | +0.02 | ||||
| Ross County (2 Seasons) | 1 League | 23 | 1,890 | 82 | 27.6 | 21.0 | 22 | 84 | 16 | 1 | 45 | 9 | 0.83 | 12 | 30 | -18 | -0.86 | -0.24 | ||||
| Rotherham United (2 Seasons) | 3 Leagues | 21 | 1,649 | 79 | 19.5 | 18.3 | 18 | 90 | 16 | 3 | 18 | 1.00 | 25 | 34 | -9 | -0.49 | -0.11 | |||||
| Cambridge United (1 Season) | 3 Leagues | 37 | 1,906 | 52 | 40.5 | 21.2 | 19 | 84 | 15 | 18 | 18 | 13 | 1.92 | 31 | 19 | +12 | +0.57 | -0.25 | ||||
| AFC Wimbledon (1 Season) | 3 Leagues | 29 | 2,547 | 88 | 53.4 | 28.3 | 29 | 88 | 25 | 0 | 2 | 1.07 | 27 | 38 | -11 | -0.39 | -0.17 | |||||
| FA Cup (8 Seasons) | 14 | 1,069 | 76 | 47.5 | 11.9 | 12 | 86 | 9 | 2 | 18 | 4 | 1.64 | 17 | 12 | +5 | +0.42 | -0.57 | |||||
| EFL Cup (8 Seasons) | 4 | 360 | 90 | 30.0 | 4.0 | 4 | 90 | 4 | 0 | 9 | 1.00 | 5 | 7 | -2 | -0.50 | -1.50 | ||||||
| League One (6 Seasons) | 142 | 10,140 | 71 | 35.0 | 112.7 | 116 | 85 | 93 | 26 | 14 | 31 | 1.57 | 129 | 115 | +14 | +0.12 | +0.14 | |||||
| League Two (5 Seasons) | 86 | 5,231 | 61 | 25.3 | 58.1 | 55 | 83 | 37 | 31 | 18 | 71 | 2.00 | 75 | 48 | +27 | +0.57 | +0.02 | |||||
| Championship (2 Seasons) | 41 | 2,867 | 70 | 34.6 | 31.9 | 31 | 83 | 24 | 10 | 19 | 17 | 1.00 | 32 | 55 | -23 | -0.72 | +0.11 | |||||
| Premiership (2 Seasons) | 23 | 1,890 | 82 | 27.6 | 21.0 | 22 | 84 | 16 | 1 | 45 | 9 | 0.83 | 12 | 30 | -18 | -0.86 | -0.24 | |||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2013-2014 | 17 | Plymouth Argyle | 1 League | 12 | 974 | 81 | 23.5 | 10.8 | 11 | 1 | |||||||||||
| 2014-2015 | 18 | Plymouth Argyle | 3 Leagues | 9 | 539 | 60 | 12.1 | 6.0 | 5 | 71 | 4 | 4 | 27 | 0.69 | 5 | 7 | -2 | -0.33 | -0.79 | ||
| 2015-2016 | 19 | Plymouth Argyle | 3 Leagues | 13 | 559 | 43 | 12.9 | 6.2 | 6 | 4 | 7 | 34 | 2.14 | 12 | 9 | +3 | +0.48 | -0.10 | |||
| 2016-2017 | 20 | Plymouth Argyle | 3 Leagues | 22 | 1,719 | 78 | 36.5 | 19.1 | 19 | 90 | 18 | 3 | 5 | 2.31 | 34 | 18 | +16 | +0.84 | +0.53 | ||
| 2016-2017 | 20 | Rotherham United | 1 League | 10 | 737 | 74 | 17.8 | 8.2 | 7 | 7 | 3 | 7 | 0.20 | 7 | 22 | -15 | -1.83 | -0.69 | |||
| 2017-2018 | 21 | Rotherham United | 2 Leagues | 11 | 912 | 83 | 21.1 | 10.1 | 11 | 90 | 9 | 0 | 11 | 1.73 | 18 | 12 | +6 | +0.59 | +0.22 | ||
| 2018-2019 | 22 | AFC Wimbledon | 3 Leagues | 29 | 2,547 | 88 | 53.4 | 28.3 | 29 | 88 | 25 | 0 | 2 | 1.07 | 27 | 38 | -11 | -0.39 | -0.17 | ||
| 2018-2019 | 22 | Charlton Athletic | 1 League | 18 | 1,575 | 88 | 38.0 | 17.5 | 18 | 88 | 17 | 0 | 0 | 2.24 | 28 | 7 | +21 | +1.20 | +0.78 | ||
| 2019-2020 | 23 | Charlton Athletic | 1 League | 31 | 2,130 | 69 | 51.4 | 23.7 | 24 | 83 | 17 | 7 | 19 | 10 | 1.26 | 25 | 33 | -8 | -0.34 | -0.02 | |
| 2020-2021 | 24 | Charlton Athletic | 3 Leagues | 31 | 1,945 | 63 | 44.1 | 21.6 | 22 | 83 | 17 | 9 | 14 | 6 | 1.64 | 29 | 25 | +4 | +0.19 | -0.11 | |
| 2021-2022 | 25 | Charlton Athletic | 2 Leagues | 29 | 2,270 | 78 | 51.5 | 25.2 | 26 | 87 | 22 | 3 | 3 | 5 | 1.52 | 27 | 27 | 0 | 0.00 | -0.04 | |
| 2022-2023 | 26 | Ross County | 1 League | 11 | 941 | 86 | 27.5 | 10.5 | 11 | 86 | 9 | 0 | 5 | 0.82 | 6 | 18 | -12 | -1.15 | -0.75 | ||
| 2023-2024 | 27 | Ross County | 1 League | 12 | 949 | 79 | 27.7 | 10.5 | 11 | 82 | 7 | 1 | 45 | 4 | 0.83 | 6 | 12 | -6 | -0.57 | +0.27 | |
| 2023-2024 | 27 | Exeter City | 1 League | 12 | 675 | 56 | 16.3 | 7.5 | 7 | 77 | 3 | 5 | 28 | 2 | 1.58 | 6 | 7 | -1 | -0.13 | +0.23 | |
| 2024-2025 | 28 | Exeter City | 3 Leagues | 23 | 1,179 | 51 | 25.5 | 13.1 | 14 | 79 | 9 | 9 | 8 | 10 | 1.61 | 9 | 13 | -4 | -0.31 | -0.15 | |
| 2025-2026 | 29 | Cambridge United | 3 Leagues | 37 | 1,906 | 52 | 40.5 | 21.2 | 19 | 84 | 15 | 18 | 18 | 13 | 1.92 | 31 | 19 | +12 | +0.57 | -0.25 | |
| 13 Seasons | 7 Clubs | 6 Leagues | 310 | 21,557 | 70 | 31.6 | 239.5 | 240 | 84 | 183 | 70 | 16 | 141 | 1.53 | 270 | 267 | +3 | +0.01 | +0.01 | ||
| Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Charlton Athletic (4 Seasons) | 4 Leagues | 109 | 7,920 | 73 | 46.3 | 88.0 | 90 | 85 | 73 | 19 | 14 | 21 | 1.60 | 109 | 92 | +17 | +0.19 | +0.06 | |||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 56 | 3,791 | 68 | 21.5 | 42.1 | 41 | 85 | 26 | 15 | 66 | 1.93 | 51 | 34 | +17 | +0.54 | +0.09 | ||||
| Exeter City (2 Seasons) | 3 Leagues | 35 | 1,854 | 53 | 21.2 | 20.6 | 21 | 78 | 12 | 14 | 15 | 12 | 1.60 | 15 | 20 | -5 | -0.24 | +0.02 | |||
| Ross County (2 Seasons) | 1 League | 23 | 1,890 | 82 | 27.6 | 21.0 | 22 | 84 | 16 | 1 | 45 | 9 | 0.83 | 12 | 30 | -18 | -0.86 | -0.24 | |||
| Rotherham United (2 Seasons) | 3 Leagues | 21 | 1,649 | 79 | 19.5 | 18.3 | 18 | 90 | 16 | 3 | 18 | 1.00 | 25 | 34 | -9 | -0.49 | -0.11 | ||||
| Cambridge United (1 Season) | 3 Leagues | 37 | 1,906 | 52 | 40.5 | 21.2 | 19 | 84 | 15 | 18 | 18 | 13 | 1.92 | 31 | 19 | +12 | +0.57 | -0.25 | |||
| AFC Wimbledon (1 Season) | 3 Leagues | 29 | 2,547 | 88 | 53.4 | 28.3 | 29 | 88 | 25 | 0 | 2 | 1.07 | 27 | 38 | -11 | -0.39 | -0.17 | ||||
| FA Cup (8 Seasons) | 14 | 1,069 | 76 | 47.5 | 11.9 | 12 | 86 | 9 | 2 | 18 | 4 | 1.64 | 17 | 12 | +5 | +0.42 | -0.57 | ||||
| EFL Cup (8 Seasons) | 4 | 360 | 90 | 30.0 | 4.0 | 4 | 90 | 4 | 0 | 9 | 1.00 | 5 | 7 | -2 | -0.50 | -1.50 | |||||
| League One (6 Seasons) | 142 | 10,140 | 71 | 35.0 | 112.7 | 116 | 85 | 93 | 26 | 14 | 31 | 1.57 | 129 | 115 | +14 | +0.12 | +0.14 | ||||
| League Two (5 Seasons) | 86 | 5,231 | 61 | 25.3 | 58.1 | 55 | 83 | 37 | 31 | 18 | 71 | 2.00 | 75 | 48 | +27 | +0.57 | +0.02 | ||||
| Championship (2 Seasons) | 41 | 2,867 | 70 | 34.6 | 31.9 | 31 | 83 | 24 | 10 | 19 | 17 | 1.00 | 32 | 55 | -23 | -0.72 | +0.11 | ||||
| Premiership (2 Seasons) | 23 | 1,890 | 82 | 27.6 | 21.0 | 22 | 84 | 16 | 1 | 45 | 9 | 0.83 | 12 | 30 | -18 | -0.86 | -0.24 | ||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 10th | 12 | 974 | 81 | 23.5 | 10.8 | 11 | 1 | |||||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 7th | 8 | 468 | 59 | 11.3 | 5.2 | 4 | 4 | 4 | 26 | 0.78 | 5 | 5 | 0 | 0.00 | -0.44 | Matches | ||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 5th | 13 | 559 | 43 | 13.5 | 6.2 | 6 | 4 | 7 | 32 | 2.14 | 12 | 9 | +3 | +0.48 | -0.10 | Matches | ||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 2nd | 19 | 1,449 | 76 | 35.0 | 16.1 | 16 | 15 | 3 | 3 | 2.47 | 32 | 16 | +16 | +0.99 | +0.69 | Matches | ||
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 24th | 10 | 737 | 74 | 17.8 | 8.2 | 7 | 7 | 3 | 7 | 0.20 | 7 | 22 | -15 | -1.83 | -0.69 | Matches | ||
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 4th | 10 | 822 | 82 | 19.9 | 9.1 | 10 | 8 | 0 | 10 | 1.90 | 17 | 10 | +7 | +0.77 | +0.41 | Matches | ||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 20th | 26 | 2,277 | 88 | 55.0 | 25.3 | 26 | 88 | 22 | 0 | 0 | 0.85 | 20 | 35 | -15 | -0.59 | -0.30 | Matches | |
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 3rd | 18 | 1,575 | 88 | 38.0 | 17.5 | 18 | 88 | 17 | 0 | 0 | 2.24 | 28 | 7 | +21 | +1.20 | +0.78 | Matches | |
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 22nd | 31 | 2,130 | 69 | 51.4 | 23.7 | 24 | 83 | 17 | 7 | 19 | 10 | 1.26 | 25 | 33 | -8 | -0.34 | -0.02 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 7th | 28 | 1,675 | 60 | 40.5 | 18.6 | 19 | 81 | 14 | 9 | 14 | 6 | 1.71 | 26 | 20 | +6 | +0.32 | +0.03 | Matches |
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 13th | 27 | 2,099 | 78 | 50.7 | 23.3 | 24 | 87 | 21 | 3 | 3 | 5 | 1.52 | 25 | 26 | -1 | -0.04 | +0.09 | Matches |
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 11th | 11 | 941 | 86 | 27.5 | 10.5 | 11 | 86 | 9 | 0 | 5 | 0.82 | 6 | 18 | -12 | -1.15 | -0.75 | Matches | |
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 11th | 12 | 949 | 79 | 27.7 | 10.5 | 11 | 82 | 7 | 1 | 45 | 4 | 0.83 | 6 | 12 | -6 | -0.57 | +0.27 | Matches |
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 13th | 12 | 675 | 56 | 16.3 | 7.5 | 7 | 77 | 3 | 5 | 28 | 2 | 1.58 | 6 | 7 | -1 | -0.13 | +0.23 | Matches |
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 16th | 21 | 1,017 | 48 | 24.6 | 11.3 | 12 | 79 | 8 | 9 | 8 | 8 | 1.57 | 7 | 10 | -3 | -0.27 | +0.11 | Matches |
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 3rd | 34 | 1,781 | 52 | 43.0 | 19.8 | 18 | 83 | 14 | 16 | 18 | 10 | 1.97 | 26 | 18 | +8 | +0.40 | -0.55 | Matches |
| 13 Seasons | 7 Clubs | 4 Leagues | 292 | 20,128 | 69 | 31.1 | 223.6 | 224 | 84 | 170 | 68 | 16 | 128 | 1.54 | 248 | 248 | 0 | 0.00 | +0.03 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Charlton Athletic (4 Seasons) | 2 Leagues | 104 | 7,479 | 72 | 45.2 | 83.1 | 85 | 85 | 69 | 19 | 14 | 21 | 1.62 | 104 | 86 | +18 | +0.22 | +0.12 | |||||
| Plymouth Argyle (4 Seasons) | 1 League | 52 | 3,450 | 66 | 20.8 | 38.3 | 37 | 23 | 15 | 61 | 2.02 | 49 | 30 | +19 | +0.69 | +0.24 | |||||||
| Exeter City (2 Seasons) | 1 League | 33 | 1,692 | 51 | 20.4 | 18.8 | 19 | 78 | 11 | 14 | 15 | 10 | 1.57 | 13 | 17 | -4 | -0.21 | +0.16 | |||||
| Ross County (2 Seasons) | 1 League | 23 | 1,890 | 82 | 27.6 | 21.0 | 22 | 84 | 16 | 1 | 45 | 9 | 0.83 | 12 | 30 | -18 | -0.86 | -0.24 | |||||
| Rotherham United (2 Seasons) | 2 Leagues | 20 | 1,559 | 78 | 18.8 | 17.3 | 17 | 15 | 3 | 17 | 1.05 | 24 | 32 | -8 | -0.46 | -0.06 | |||||||
| Cambridge United (1 Season) | 1 League | 34 | 1,781 | 52 | 43.0 | 19.8 | 18 | 83 | 14 | 16 | 18 | 10 | 1.97 | 26 | 18 | +8 | +0.40 | -0.55 | |||||
| AFC Wimbledon (1 Season) | 1 League | 26 | 2,277 | 88 | 55.0 | 25.3 | 26 | 88 | 22 | 0 | 0 | 0.85 | 20 | 35 | -15 | -0.59 | -0.30 | ||||||
| League One (6 Seasons) | 142 | 10,140 | 71 | 35.0 | 112.7 | 116 | 85 | 93 | 26 | 14 | 31 | 1.57 | 129 | 115 | +14 | +0.12 | +0.14 | ||||||
| League Two (5 Seasons) | 86 | 5,231 | 61 | 25.3 | 58.1 | 55 | 83 | 37 | 31 | 18 | 71 | 2.00 | 75 | 48 | +27 | +0.57 | +0.02 | ||||||
| Championship (2 Seasons) | 41 | 2,867 | 70 | 34.6 | 31.9 | 31 | 83 | 24 | 10 | 19 | 17 | 1.00 | 32 | 55 | -23 | -0.72 | +0.11 | ||||||
| Premiership (2 Seasons) | 23 | 1,890 | 82 | 27.6 | 21.0 | 22 | 84 | 16 | 1 | 45 | 9 | 0.83 | 12 | 30 | -18 | -0.86 | -0.24 | ||||||
| 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 | Plymouth Argyle | eng ENG | FA Cup | 65th | 1 | 71 | 71 | 39.4 | 0.8 | 1 | 71 | 0 | 0 | 0 | 0.00 | 0 | 2 | -2 | -2.54 | -3.36 | Matches | |
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | League Cup | 58th | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | FA Cup | 85th | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | League Cup | 57th | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | EFL Cup | 58th | 0 | 0 | 0 | 0 | 1 | Matches | ||||||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 33rd | 3 | 270 | 90 | 56.3 | 3.0 | 3 | 90 | 3 | 0 | 1 | 1.33 | 2 | 2 | 0 | 0.00 | -0.43 | Matches | |
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 33rd | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 1 | 0.00 | 1 | 2 | -1 | -1.00 | -2.00 | Matches | |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | EFL Cup | 33rd | 0 | 0 | 0 | 0 | 2 | Matches | ||||||||||||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 9th | 3 | 270 | 90 | 60.0 | 3.0 | 3 | 90 | 3 | 0 | 0 | 3.00 | 7 | 3 | +4 | +1.33 | +0.83 | Matches | |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 33rd | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 3 | 4 | -1 | -0.50 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 85th | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.00 | Matches | ||
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 2 | 171 | 86 | 63.3 | 1.9 | 2 | 86 | 1 | 0 | 0 | 1.50 | 2 | 1 | +1 | +0.53 | -3.11 | Matches | ||
| 2024-2025 | 28 | Exeter 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 | ||
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 1 | 72 | 72 | 18.5 | 0.8 | 1 | 72 | 0 | 0 | 2 | 3.00 | 1 | 2 | -1 | -1.25 | -3.23 | Matches | ||
| 2025-2026 | 29 | Cambridge United | eng ENG | EFL Cup | Rd3 | 0 | 0 | 0 | 0 | 3 | Matches | ||||||||||||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 3 | 125 | 42 | 41.7 | 1.4 | 1 | 90 | 1 | 2 | 18 | 0 | 1.33 | 5 | 1 | +4 | +2.88 | +3.91 | Matches | |
| 9 Seasons | 6 Clubs | 2 Leagues | 18 | 1,429 | 79 | 41.4 | 15.9 | 16 | 87 | 13 | 2 | 18 | 13 | 1.50 | 22 | 19 | +3 | +0.19 | -0.80 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Plymouth Argyle (3 Seasons) | 2 Leagues | 4 | 341 | 85 | 32.5 | 3.8 | 4 | 85 | 3 | 0 | 5 | 1.00 | 2 | 4 | -2 | -0.53 | -1.09 | ||||||
| Charlton Athletic (2 Seasons) | 2 Leagues | 5 | 441 | 88 | 81.7 | 4.9 | 5 | 88 | 4 | 0 | 0 | 1.20 | 5 | 6 | -1 | -0.20 | -3.84 | ||||||
| Cambridge United (1 Season) | 2 Leagues | 3 | 125 | 42 | 21.9 | 1.4 | 1 | 90 | 1 | 2 | 18 | 3 | 1.33 | 5 | 1 | +4 | +2.88 | +3.91 | |||||
| AFC Wimbledon (1 Season) | 2 Leagues | 3 | 270 | 90 | 42.9 | 3.0 | 3 | 90 | 3 | 0 | 2 | 3.00 | 7 | 3 | +4 | +1.33 | +0.83 | ||||||
| Exeter City (1 Season) | 2 Leagues | 2 | 162 | 81 | 33.8 | 1.8 | 2 | 81 | 1 | 0 | 2 | 2.00 | 2 | 3 | -1 | -0.56 | -2.54 | ||||||
| Rotherham United (1 Season) | 1 League | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 1 | 0.00 | 1 | 2 | -1 | -1.00 | -2.00 | ||||||
| FA Cup (8 Seasons) | 14 | 1,069 | 76 | 47.5 | 11.9 | 12 | 86 | 9 | 2 | 18 | 4 | 1.64 | 17 | 12 | +5 | +0.42 | -0.57 | ||||||
| EFL Cup (8 Seasons) | 4 | 360 | 90 | 30.0 | 4.0 | 4 | 90 | 4 | 0 | 9 | 1.00 | 5 | 7 | -2 | -0.50 | -1.50 | |||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 10.8 | 2 | 0 | 7 | ||||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | FA Cup | 0.8 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 5.2 | 1 | 0 | 4 | Matches | |||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 6.2 | 2 | 0 | 6 | Matches | |||||||||
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 8.2 | 1 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 3.0 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 16.1 | 4 | 0 | 0 | 18 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 1.0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 9.1 | 1 | 0 | 0 | 9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 3.0 | 0 | 0 | 0 | 3 | 1 | 0 | 6 | 4 | 1 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 17.5 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 25.3 | 4 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 23.7 | 4 | 0 | 0 | 25 | 10 | 0 | 38 | 31 | 25 | 0 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 2.0 | 0 | 0 | 0 | 3 | 1 | 0 | 2 | 4 | 0 | 0 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 0 | 0 | 0 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 18.6 | 5 | 1 | 1 | 23 | 11 | 1 | 40 | 24 | 21 | 0 | Matches | ||
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 1.9 | 1 | 0 | 0 | 5 | 1 | 0 | 3 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 23.3 | 7 | 0 | 0 | 27 | 19 | 1 | 32 | 23 | 26 | 1 | Matches | ||
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 10.5 | 1 | 0 | 0 | 9 | 6 | 1 | 7 | 10 | 18 | 0 | Matches | ||
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 7.5 | 3 | 0 | 0 | 4 | 3 | 0 | 4 | 6 | 5 | 0 | Matches | ||
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 10.5 | 1 | 0 | 0 | 14 | 7 | 0 | 15 | 9 | 11 | 0 | Matches | ||
| 2024-2025 | 28 | Exeter City | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 3 | 0 | 0 | Matches | ||
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 11.3 | 3 | 0 | 0 | 14 | 3 | 3 | 14 | 16 | 12 | 0 | Matches | ||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 1.4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 19.8 | 4 | 0 | 0 | 22 | 9 | 1 | 41 | 25 | 23 | 0 | Matches | ||
| 13 Seasons | 7 Clubs | 6 Leagues | 239.5 | 49 | 1 | 1 | 205 | 74 | 7 | 205 | 155 | 142 | 0 | 0 | 1 | |||
| Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Charlton Athletic (4 Seasons) | 4 Leagues | 88.0 | 18 | 1 | 1 | 85 | 43 | 2 | 116 | 82 | 72 | 1 | ||||||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 42.1 | 11 | 0 | 0 | 35 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
| Exeter City (2 Seasons) | 3 Leagues | 20.6 | 6 | 0 | 0 | 20 | 7 | 3 | 19 | 25 | 17 | 0 | ||||||
| Ross County (2 Seasons) | 1 League | 21.0 | 2 | 0 | 0 | 23 | 13 | 1 | 22 | 19 | 29 | 0 | ||||||
| Rotherham United (2 Seasons) | 3 Leagues | 18.3 | 3 | 0 | 0 | 17 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | ||||
| Cambridge United (1 Season) | 3 Leagues | 21.2 | 5 | 0 | 0 | 22 | 10 | 1 | 41 | 25 | 23 | 0 | ||||||
| AFC Wimbledon (1 Season) | 3 Leagues | 28.3 | 4 | 0 | 0 | 3 | 1 | 0 | 6 | 4 | 1 | 0 | 0 | 0 | ||||
| FA Cup (8 Seasons) | 11.9 | 4 | 0 | 0 | 10 | 4 | 0 | 10 | 4 | 1 | 0 | 0 | 0 | |||||
| EFL Cup (8 Seasons) | 4.0 | 1 | 0 | 0 | 6 | 2 | 0 | 4 | 7 | 0 | 0 | 0 | 0 | |||||
| League One (6 Seasons) | 112.7 | 24 | 1 | 1 | 77 | 36 | 5 | 90 | 69 | 64 | 0 | 0 | 1 | |||||
| League Two (5 Seasons) | 58.1 | 13 | 0 | 0 | 57 | 9 | 1 | 41 | 25 | 23 | 0 | 0 | 0 | |||||
| Championship (2 Seasons) | 31.9 | 5 | 0 | 0 | 32 | 10 | 0 | 38 | 31 | 25 | 0 | 0 | 0 | |||||
| Premiership (2 Seasons) | 21.0 | 2 | 0 | 0 | 23 | 13 | 1 | 22 | 19 | 29 | 0 | |||||||
| Performance | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2013-2014 | 17 | Plymouth Argyle | 1 League | 10.8 | 2 | 0 | 7 | ||||||||||
| 2014-2015 | 18 | Plymouth Argyle | 3 Leagues | 6.0 | 2 | 0 | 0 | 4 | 0 | ||||||||
| 2015-2016 | 19 | Plymouth Argyle | 3 Leagues | 6.2 | 2 | 0 | 6 | ||||||||||
| 2016-2017 | 20 | Plymouth Argyle | 3 Leagues | 19.1 | 5 | 0 | 0 | 18 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2016-2017 | 20 | Rotherham United | 1 League | 8.2 | 1 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2017-2018 | 21 | Rotherham United | 2 Leagues | 10.1 | 2 | 0 | 0 | 10 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |
| 2018-2019 | 22 | AFC Wimbledon | 3 Leagues | 28.3 | 4 | 0 | 0 | 3 | 1 | 0 | 6 | 4 | 1 | 0 | 0 | 0 | |
| 2018-2019 | 22 | Charlton Athletic | 1 League | 17.5 | 1 | 0 | 0 | 0 | |||||||||
| 2019-2020 | 23 | Charlton Athletic | 1 League | 23.7 | 4 | 0 | 0 | 25 | 10 | 0 | 38 | 31 | 25 | 0 | |||
| 2020-2021 | 24 | Charlton Athletic | 3 Leagues | 21.6 | 5 | 1 | 1 | 28 | 13 | 1 | 43 | 28 | 21 | 0 | |||
| 2021-2022 | 25 | Charlton Athletic | 2 Leagues | 25.2 | 8 | 0 | 0 | 32 | 20 | 1 | 35 | 23 | 26 | 1 | |||
| 2022-2023 | 26 | Ross County | 1 League | 10.5 | 1 | 0 | 0 | 9 | 6 | 1 | 7 | 10 | 18 | 0 | |||
| 2023-2024 | 27 | Ross County | 1 League | 10.5 | 1 | 0 | 0 | 14 | 7 | 0 | 15 | 9 | 11 | 0 | |||
| 2023-2024 | 27 | Exeter City | 1 League | 7.5 | 3 | 0 | 0 | 4 | 3 | 0 | 4 | 6 | 5 | 0 | |||
| 2024-2025 | 28 | Exeter City | 3 Leagues | 13.1 | 3 | 0 | 0 | 16 | 4 | 3 | 15 | 19 | 12 | 0 | |||
| 2025-2026 | 29 | Cambridge United | 3 Leagues | 21.2 | 5 | 0 | 0 | 22 | 10 | 1 | 41 | 25 | 23 | 0 | |||
| 13 Seasons | 7 Clubs | 6 Leagues | 239.5 | 49 | 1 | 1 | 205 | 74 | 7 | 205 | 155 | 142 | 0 | 0 | 1 | ||
| Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Charlton Athletic (4 Seasons) | 4 Leagues | 88.0 | 18 | 1 | 1 | 85 | 43 | 2 | 116 | 82 | 72 | 1 | |||||
| Plymouth Argyle (4 Seasons) | 3 Leagues | 42.1 | 11 | 0 | 0 | 35 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||
| Exeter City (2 Seasons) | 3 Leagues | 20.6 | 6 | 0 | 0 | 20 | 7 | 3 | 19 | 25 | 17 | 0 | |||||
| Ross County (2 Seasons) | 1 League | 21.0 | 2 | 0 | 0 | 23 | 13 | 1 | 22 | 19 | 29 | 0 | |||||
| Rotherham United (2 Seasons) | 3 Leagues | 18.3 | 3 | 0 | 0 | 17 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |||
| Cambridge United (1 Season) | 3 Leagues | 21.2 | 5 | 0 | 0 | 22 | 10 | 1 | 41 | 25 | 23 | 0 | |||||
| AFC Wimbledon (1 Season) | 3 Leagues | 28.3 | 4 | 0 | 0 | 3 | 1 | 0 | 6 | 4 | 1 | 0 | 0 | 0 | |||
| FA Cup (8 Seasons) | 11.9 | 4 | 0 | 0 | 10 | 4 | 0 | 10 | 4 | 1 | 0 | 0 | 0 | ||||
| EFL Cup (8 Seasons) | 4.0 | 1 | 0 | 0 | 6 | 2 | 0 | 4 | 7 | 0 | 0 | 0 | 0 | ||||
| League One (6 Seasons) | 112.7 | 24 | 1 | 1 | 77 | 36 | 5 | 90 | 69 | 64 | 0 | 0 | 1 | ||||
| League Two (5 Seasons) | 58.1 | 13 | 0 | 0 | 57 | 9 | 1 | 41 | 25 | 23 | 0 | 0 | 0 | ||||
| Championship (2 Seasons) | 31.9 | 5 | 0 | 0 | 32 | 10 | 0 | 38 | 31 | 25 | 0 | 0 | 0 | ||||
| Premiership (2 Seasons) | 21.0 | 2 | 0 | 0 | 23 | 13 | 1 | 22 | 19 | 29 | 0 | ||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2013-2014 | 17 | Plymouth Argyle | eng ENG | 4. League Two | 10th | 10.8 | 2 | 0 | 7 | ||||||||||
| 2014-2015 | 18 | Plymouth Argyle | eng ENG | 4. League Two | 7th | 5.2 | 1 | 0 | 4 | Matches | |||||||||
| 2015-2016 | 19 | Plymouth Argyle | eng ENG | 4. League Two | 5th | 6.2 | 2 | 0 | 6 | Matches | |||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | 4. League Two | 2nd | 16.1 | 4 | 0 | 0 | 18 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 20 | Rotherham United | eng ENG | 2. Championship | 24th | 8.2 | 1 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 21 | Rotherham United | eng ENG | 3. League One | 4th | 9.1 | 1 | 0 | 0 | 9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | 3. League One | 20th | 25.3 | 4 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 22 | Charlton Athletic | eng ENG | 3. League One | 3rd | 17.5 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 23 | Charlton Athletic | eng ENG | 2. Championship | 22nd | 23.7 | 4 | 0 | 0 | 25 | 10 | 0 | 38 | 31 | 25 | 0 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | 3. League One | 7th | 18.6 | 5 | 1 | 1 | 23 | 11 | 1 | 40 | 24 | 21 | 0 | Matches | ||
| 2021-2022 | 25 | Charlton Athletic | eng ENG | 3. League One | 13th | 23.3 | 7 | 0 | 0 | 27 | 19 | 1 | 32 | 23 | 26 | 1 | Matches | ||
| 2022-2023 | 26 | Ross County | sct SCO | 1. Premiership | 11th | 10.5 | 1 | 0 | 0 | 9 | 6 | 1 | 7 | 10 | 18 | 0 | Matches | ||
| 2023-2024 | 27 | Ross County | sct SCO | 1. Premiership | 11th | 10.5 | 1 | 0 | 0 | 14 | 7 | 0 | 15 | 9 | 11 | 0 | Matches | ||
| 2023-2024 | 27 | Exeter City | eng ENG | 3. League One | 13th | 7.5 | 3 | 0 | 0 | 4 | 3 | 0 | 4 | 6 | 5 | 0 | Matches | ||
| 2024-2025 | 28 | Exeter City | eng ENG | 3. League One | 16th | 11.3 | 3 | 0 | 0 | 14 | 3 | 3 | 14 | 16 | 12 | 0 | Matches | ||
| 2025-2026 | 29 | Cambridge United | eng ENG | 4. League Two | 3rd | 19.8 | 4 | 0 | 0 | 22 | 9 | 1 | 41 | 25 | 23 | 0 | Matches | ||
| 13 Seasons | 7 Clubs | 4 Leagues | 223.6 | 44 | 1 | 1 | 189 | 68 | 7 | 191 | 144 | 141 | 0 | 0 | 1 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Charlton Athletic (4 Seasons) | 2 Leagues | 83.1 | 17 | 1 | 1 | 75 | 40 | 2 | 110 | 78 | 72 | 1 | |||||||
| Plymouth Argyle (4 Seasons) | 1 League | 38.3 | 9 | 0 | 0 | 35 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Exeter City (2 Seasons) | 1 League | 18.8 | 6 | 0 | 0 | 18 | 6 | 3 | 18 | 22 | 17 | 0 | |||||||
| Ross County (2 Seasons) | 1 League | 21.0 | 2 | 0 | 0 | 23 | 13 | 1 | 22 | 19 | 29 | 0 | |||||||
| Rotherham United (2 Seasons) | 2 Leagues | 17.3 | 2 | 0 | 0 | 16 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Cambridge United (1 Season) | 1 League | 19.8 | 4 | 0 | 0 | 22 | 9 | 1 | 41 | 25 | 23 | 0 | |||||||
| AFC Wimbledon (1 Season) | 1 League | 25.3 | 4 | 0 | 0 | 0 | |||||||||||||
| League One (6 Seasons) | 112.7 | 24 | 1 | 1 | 77 | 36 | 5 | 90 | 69 | 64 | 0 | 0 | 1 | ||||||
| League Two (5 Seasons) | 58.1 | 13 | 0 | 0 | 57 | 9 | 1 | 41 | 25 | 23 | 0 | 0 | 0 | ||||||
| Championship (2 Seasons) | 31.9 | 5 | 0 | 0 | 32 | 10 | 0 | 38 | 31 | 25 | 0 | 0 | 0 | ||||||
| Premiership (2 Seasons) | 21.0 | 2 | 0 | 0 | 23 | 13 | 1 | 22 | 19 | 29 | 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 | Plymouth Argyle | eng ENG | FA Cup | 65th | 0.8 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 20 | Plymouth Argyle | eng ENG | FA Cup | 33rd | 3.0 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 21 | Rotherham United | eng ENG | EFL Cup | 33rd | 1.0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 22 | AFC Wimbledon | eng ENG | FA Cup | 9th | 3.0 | 0 | 0 | 0 | 3 | 1 | 0 | 6 | 4 | 1 | 0 | 0 | 0 | Matches |
| 2020-2021 | 24 | Charlton Athletic | eng ENG | EFL Cup | 33rd | 2.0 | 0 | 0 | 0 | 3 | 1 | 0 | 2 | 4 | 0 | 0 | Matches | ||
| 2020-2021 | 24 | Charlton Athletic | eng ENG | FA Cup | 85th | 1.0 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 25 | Charlton Athletic | eng ENG | FA Cup | 1.9 | 1 | 0 | 0 | 5 | 1 | 0 | 3 | 0 | 0 | 0 | Matches | |||
| 2024-2025 | 28 | Exeter City | eng ENG | EFL Cup | Rd1 | 1.0 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 3 | 0 | 0 | Matches | ||
| 2024-2025 | 28 | Exeter City | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2025-2026 | 29 | Cambridge United | eng ENG | FA Cup | 1.4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches | |||
| 9 Seasons | 6 Clubs | 2 Leagues | 15.9 | 5 | 0 | 0 | 16 | 6 | 0 | 14 | 11 | 1 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Plymouth Argyle (3 Seasons) | 2 Leagues | 3.8 | 2 | 0 | 0 | 0 | |||||||||||||
| Charlton Athletic (2 Seasons) | 2 Leagues | 4.9 | 1 | 0 | 0 | 10 | 3 | 0 | 6 | 4 | 0 | 0 | |||||||
| Cambridge United (1 Season) | 2 Leagues | 1.4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |||||||
| AFC Wimbledon (1 Season) | 2 Leagues | 3.0 | 0 | 0 | 0 | 3 | 1 | 0 | 6 | 4 | 1 | 0 | 0 | 0 | |||||
| Exeter City (1 Season) | 2 Leagues | 1.8 | 0 | 0 | 0 | 2 | 1 | 0 | 1 | 3 | 0 | 0 | |||||||
| Rotherham United (1 Season) | 1 League | 1.0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |||||
| FA Cup (8 Seasons) | 11.9 | 4 | 0 | 0 | 10 | 4 | 0 | 10 | 4 | 1 | 0 | 0 | 0 | ||||||
| EFL Cup (8 Seasons) | 4.0 | 1 | 0 | 0 | 6 | 2 | 0 | 4 | 7 | 0 | 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