| 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 | |||||
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 4 | 0 | 61 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 6 | 2 | 178 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.01 | 0.00 | 1.01 | 1.01 | 1.01 | |
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 3 | 2 | 144 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 4 | 1 | 122 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 2 | 0 | 27 | 0.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 1 | 1 | 76 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 17 | 12 | 1,028 | 11.4 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 0.18 | 0.00 | 0.18 | 0.18 | 0.18 | Matches |
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 15 | 10 | 953 | 10.6 | 4 | 1 | 5 | 4 | 0 | 0 | 0 | 0 | 0.38 | 0.09 | 0.47 | 0.38 | 0.47 | Matches |
| 2016-2017 | 23 | Crystal Palace | eng ENG | 1. Premier League | 0 | 0 | Matches | |||||||||||||||
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 1 | 0 | 34 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 10 | 3 | 317 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 2 | 2 | 167 | 1.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.54 | 0.00 | 0.54 | 0.54 | 0.54 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 45 | 42 | 3,702 | 41.1 | 18 | 3 | 21 | 18 | 0 | 0 | 1 | 0 | 0.44 | 0.07 | 0.51 | 0.44 | 0.51 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 2 | 2 | 153 | 1.7 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.59 | 0.00 | 0.59 | 0.59 | 0.59 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 3 | 1 | 141 | 1.6 | 2 | 1 | 3 | 2 | 0 | 0 | 0 | 0 | 1.28 | 0.64 | 1.91 | 1.28 | 1.91 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 31 | 20 | 1,861 | 20.7 | 14 | 1 | 15 | 13 | 1 | 2 | 2 | 0 | 0.68 | 0.05 | 0.73 | 0.63 | 0.68 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 42 | 23 | 2,101 | 23.3 | 9 | 0 | 9 | 9 | 0 | 1 | 0 | 0 | 0.39 | 0.00 | 0.39 | 0.39 | 0.39 | Matches |
| 2020-2021 | 27 | Rotherham United | 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 | 28 | Rotherham United | eng ENG | EFL Cup | 1 | 1 | 59 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 2 | 2 | 149 | 1.7 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.60 | 0.00 | 0.60 | 0.60 | 0.60 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 31 | 22 | 2,069 | 23.0 | 11 | 2 | 13 | 11 | 0 | 0 | 0 | 0 | 0.48 | 0.09 | 0.57 | 0.48 | 0.57 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 4 | 2 | 220 | 2.4 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.82 | 0.00 | 0.82 | 0.82 | 0.82 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 46 | 23 | 2,175 | 24.2 | 17 | 2 | 19 | 16 | 1 | 1 | 0 | 0 | 0.70 | 0.08 | 0.79 | 0.66 | 0.74 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 17 | 2 | 350 | 3.9 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.51 | 0.00 | 0.51 | 0.51 | 0.51 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | 4 | 4 | 284 | 3.2 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.63 | 0.00 | 0.63 | 0.63 | 0.63 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 1 | 1 | 56 | 0.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 14 | 8 | 711 | 7.9 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 1 | 0 | 7 | 0.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 21 | 1 | 467 | 5.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 12 Seasons | 14 Clubs | 7 Leagues | 341 | 191 | 18,066 | 200.7 | 89 | 11 | 100 | 87 | 2 | 4 | 8 | 0 | 0.44 | 0.05 | 0.50 | 0.43 | 0.49 | |||
| Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rotherham United (3 Seasons) | 4 Leagues | 113 | 72 | 6,623 | 73.6 | 38 | 4 | 42 | 37 | 1 | 3 | 3 | 0 | 0.52 | 0.05 | 0.57 | 0.50 | 0.56 | ||||
| Ipswich Town (2 Seasons) | 4 Leagues | 72 | 32 | 3,085 | 34.3 | 23 | 2 | 25 | 22 | 1 | 1 | 0 | 0 | 0.67 | 0.06 | 0.73 | 0.64 | 0.70 | ||||
| Colchester United (2 Seasons) | 1 League | 6 | 0 | 88 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Crystal Palace (2 Seasons) | 2 Leagues | 2 | 0 | 51 | 0.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Plymouth Argyle (1 Season) | 3 Leagues | 49 | 46 | 4,049 | 45.0 | 19 | 3 | 22 | 19 | 0 | 0 | 2 | 0 | 0.42 | 0.07 | 0.49 | 0.42 | 0.49 | ||||
| Huddersfield Town (1 Season) | 2 Leagues | 22 | 1 | 474 | 5.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Oldham Athletic (1 Season) | 2 Leagues | 18 | 13 | 1,104 | 12.3 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 0.16 | 0.00 | 0.16 | 0.16 | 0.16 | ||||
| Shrewsbury Town (1 Season) | 1 League | 15 | 10 | 953 | 10.6 | 4 | 1 | 5 | 4 | 0 | 0 | 0 | 0 | 0.38 | 0.09 | 0.47 | 0.38 | 0.47 | ||||
| Charlton Athletic (1 Season) | 1 League | 14 | 8 | 711 | 7.9 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | ||||
| Southend United (1 Season) | 1 League | 10 | 3 | 317 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Chesterfield (1 Season) | 1 League | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Nuneaton Town (1 Season) | 1 League | 6 | 2 | 178 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.01 | 0.00 | 1.01 | 1.01 | 1.01 | ||||
| Woking (1 Season) | 1 League | 4 | 1 | 122 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Harriers (1 Season) | 1 League | 3 | 2 | 144 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| League One (10 Seasons) | 236 | 141 | 13,371 | 148.6 | 67 | 10 | 77 | 65 | 2 | 3 | 6 | 0 | 0.45 | 0.07 | 0.52 | 0.44 | 0.50 | |||||
| FA Cup (7 Seasons) | 14 | 9 | 829 | 9.2 | 5 | 1 | 6 | 5 | 0 | 0 | 1 | 0 | 0.54 | 0.11 | 0.65 | 0.54 | 0.65 | |||||
| EFL Cup (6 Seasons) | 11 | 10 | 787 | 8.7 | 4 | 0 | 4 | 4 | 0 | 0 | 1 | 0 | 0.46 | 0.00 | 0.46 | 0.46 | 0.46 | |||||
| Championship (2 Seasons) | 59 | 25 | 2,451 | 27.2 | 11 | 0 | 11 | 11 | 0 | 1 | 0 | 0 | 0.40 | 0.00 | 0.40 | 0.40 | 0.40 | |||||
| Premier League (2 Seasons) | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Conf Premier (1 Season) | 13 | 5 | 444 | 4.9 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.41 | 0.00 | 0.41 | 0.41 | 0.41 | |||||
| League Two (1 Season) | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| 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 | |||||
| 2012-2013 | 19 | Colchester United | 1 League | 4 | 0 | 61 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Colchester United | 1 League | 2 | 0 | 27 | 0.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Nuneaton Town | 1 League | 6 | 2 | 178 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.01 | 0.00 | 1.01 | 1.01 | 1.01 | |
| 2013-2014 | 20 | Woking | 1 League | 4 | 1 | 122 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Harriers | 1 League | 3 | 2 | 144 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2016-2017 | 23 | Oldham Athletic | 2 Leagues | 18 | 13 | 1,104 | 12.3 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 0.16 | 0.00 | 0.16 | 0.16 | 0.16 | |
| 2016-2017 | 23 | Shrewsbury Town | 1 League | 15 | 10 | 953 | 10.6 | 4 | 1 | 5 | 4 | 0 | 0 | 0 | 0 | 0.38 | 0.09 | 0.47 | 0.38 | 0.47 | |
| 2016-2017 | 23 | Crystal Palace | 1 League | 0 | 0 | ||||||||||||||||
| 2017-2018 | 24 | Crystal Palace | 2 Leagues | 2 | 0 | 51 | 0.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2017-2018 | 24 | Southend United | 1 League | 10 | 3 | 317 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2018-2019 | 25 | Plymouth Argyle | 3 Leagues | 49 | 46 | 4,049 | 45.0 | 19 | 3 | 22 | 19 | 0 | 0 | 2 | 0 | 0.42 | 0.07 | 0.49 | 0.42 | 0.49 | |
| 2019-2020 | 26 | Rotherham United | 3 Leagues | 36 | 23 | 2,155 | 23.9 | 17 | 2 | 19 | 16 | 1 | 2 | 2 | 0 | 0.71 | 0.08 | 0.79 | 0.67 | 0.75 | |
| 2020-2021 | 27 | Rotherham United | 2 Leagues | 43 | 24 | 2,191 | 24.3 | 9 | 0 | 9 | 9 | 0 | 1 | 0 | 0 | 0.37 | 0.00 | 0.37 | 0.37 | 0.37 | |
| 2021-2022 | 28 | Rotherham United | 3 Leagues | 34 | 25 | 2,277 | 25.3 | 12 | 2 | 14 | 12 | 0 | 0 | 1 | 0 | 0.47 | 0.08 | 0.55 | 0.47 | 0.55 | |
| 2022-2023 | 29 | Ipswich Town | 2 Leagues | 50 | 25 | 2,395 | 26.6 | 19 | 2 | 21 | 18 | 1 | 1 | 0 | 0 | 0.71 | 0.08 | 0.79 | 0.68 | 0.75 | |
| 2023-2024 | 30 | Ipswich Town | 3 Leagues | 22 | 7 | 690 | 7.7 | 4 | 0 | 4 | 4 | 0 | 0 | 0 | 0 | 0.52 | 0.00 | 0.52 | 0.52 | 0.52 | |
| 2023-2024 | 30 | Charlton Athletic | 1 League | 14 | 8 | 711 | 7.9 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | |
| 2024-2025 | 31 | Huddersfield Town | 2 Leagues | 22 | 1 | 474 | 5.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2025-2026 | 32 | Chesterfield | 1 League | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 12 Seasons | 14 Clubs | 7 Leagues | 341 | 191 | 18,066 | 200.7 | 89 | 11 | 100 | 87 | 2 | 4 | 8 | 0 | 0.44 | 0.05 | 0.50 | 0.43 | 0.49 | ||
| Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rotherham United (3 Seasons) | 4 Leagues | 113 | 72 | 6,623 | 73.6 | 38 | 4 | 42 | 37 | 1 | 3 | 3 | 0 | 0.52 | 0.05 | 0.57 | 0.50 | 0.56 | |||
| Ipswich Town (2 Seasons) | 4 Leagues | 72 | 32 | 3,085 | 34.3 | 23 | 2 | 25 | 22 | 1 | 1 | 0 | 0 | 0.67 | 0.06 | 0.73 | 0.64 | 0.70 | |||
| Colchester United (2 Seasons) | 1 League | 6 | 0 | 88 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Crystal Palace (2 Seasons) | 2 Leagues | 2 | 0 | 51 | 0.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Plymouth Argyle (1 Season) | 3 Leagues | 49 | 46 | 4,049 | 45.0 | 19 | 3 | 22 | 19 | 0 | 0 | 2 | 0 | 0.42 | 0.07 | 0.49 | 0.42 | 0.49 | |||
| Huddersfield Town (1 Season) | 2 Leagues | 22 | 1 | 474 | 5.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Oldham Athletic (1 Season) | 2 Leagues | 18 | 13 | 1,104 | 12.3 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 0.16 | 0.00 | 0.16 | 0.16 | 0.16 | |||
| Shrewsbury Town (1 Season) | 1 League | 15 | 10 | 953 | 10.6 | 4 | 1 | 5 | 4 | 0 | 0 | 0 | 0 | 0.38 | 0.09 | 0.47 | 0.38 | 0.47 | |||
| Charlton Athletic (1 Season) | 1 League | 14 | 8 | 711 | 7.9 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | |||
| Southend United (1 Season) | 1 League | 10 | 3 | 317 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Chesterfield (1 Season) | 1 League | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Nuneaton Town (1 Season) | 1 League | 6 | 2 | 178 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.01 | 0.00 | 1.01 | 1.01 | 1.01 | |||
| Woking (1 Season) | 1 League | 4 | 1 | 122 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Harriers (1 Season) | 1 League | 3 | 2 | 144 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| League One (10 Seasons) | 236 | 141 | 13,371 | 148.6 | 67 | 10 | 77 | 65 | 2 | 3 | 6 | 0 | 0.45 | 0.07 | 0.52 | 0.44 | 0.50 | ||||
| FA Cup (7 Seasons) | 14 | 9 | 829 | 9.2 | 5 | 1 | 6 | 5 | 0 | 0 | 1 | 0 | 0.54 | 0.11 | 0.65 | 0.54 | 0.65 | ||||
| EFL Cup (6 Seasons) | 11 | 10 | 787 | 8.7 | 4 | 0 | 4 | 4 | 0 | 0 | 1 | 0 | 0.46 | 0.00 | 0.46 | 0.46 | 0.46 | ||||
| Championship (2 Seasons) | 59 | 25 | 2,451 | 27.2 | 11 | 0 | 11 | 11 | 0 | 1 | 0 | 0 | 0.40 | 0.00 | 0.40 | 0.40 | 0.40 | ||||
| Premier League (2 Seasons) | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Conf Premier (1 Season) | 13 | 5 | 444 | 4.9 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.41 | 0.00 | 0.41 | 0.41 | 0.41 | ||||
| League Two (1 Season) | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| 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 | |||||
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 20th | 4 | 0 | 61 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 16th | 2 | 0 | 27 | 0.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 13th | 6 | 2 | 178 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.01 | 0.00 | 1.01 | 1.01 | 1.01 | |
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 9th | 4 | 1 | 122 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 7th | 3 | 2 | 144 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 17th | 17 | 12 | 1,028 | 11.4 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 0.18 | 0.00 | 0.18 | 0.18 | 0.18 | Matches |
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 18th | 15 | 10 | 953 | 10.6 | 4 | 1 | 5 | 4 | 0 | 0 | 0 | 0 | 0.38 | 0.09 | 0.47 | 0.38 | 0.47 | Matches |
| 2016-2017 | 23 | Crystal Palace | eng ENG | 1. Premier League | 14th | 0 | 0 | Matches | |||||||||||||||
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 11th | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 10th | 10 | 3 | 317 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 21st | 45 | 42 | 3,702 | 41.1 | 18 | 3 | 21 | 18 | 0 | 0 | 1 | 0 | 0.44 | 0.07 | 0.51 | 0.44 | 0.51 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 2nd | 31 | 20 | 1,861 | 20.7 | 14 | 1 | 15 | 13 | 1 | 2 | 2 | 0 | 0.68 | 0.05 | 0.73 | 0.63 | 0.68 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 23rd | 42 | 23 | 2,101 | 23.3 | 9 | 0 | 9 | 9 | 0 | 1 | 0 | 0 | 0.39 | 0.00 | 0.39 | 0.39 | 0.39 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 2nd | 31 | 22 | 2,069 | 23.0 | 11 | 2 | 13 | 11 | 0 | 0 | 0 | 0 | 0.48 | 0.09 | 0.57 | 0.48 | 0.57 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 2nd | 46 | 23 | 2,175 | 24.2 | 17 | 2 | 19 | 16 | 1 | 1 | 0 | 0 | 0.70 | 0.08 | 0.79 | 0.66 | 0.74 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 2nd | 17 | 2 | 350 | 3.9 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.51 | 0.00 | 0.51 | 0.51 | 0.51 | Matches |
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 16th | 14 | 8 | 711 | 7.9 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 10th | 21 | 1 | 467 | 5.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 6th | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 12 Seasons | 14 Clubs | 5 Leagues | 316 | 172 | 16,450 | 182.8 | 80 | 10 | 90 | 78 | 2 | 4 | 6 | 0 | 0.44 | 0.05 | 0.49 | 0.43 | 0.48 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rotherham United (3 Seasons) | 2 Leagues | 104 | 65 | 6,031 | 67.0 | 34 | 3 | 37 | 33 | 1 | 3 | 2 | 0 | 0.51 | 0.04 | 0.55 | 0.49 | 0.54 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 63 | 25 | 2,525 | 28.1 | 19 | 2 | 21 | 18 | 1 | 1 | 0 | 0 | 0.68 | 0.07 | 0.75 | 0.64 | 0.71 | |||||
| Colchester United (2 Seasons) | 1 League | 6 | 0 | 88 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Crystal Palace (2 Seasons) | 1 League | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Plymouth Argyle (1 Season) | 1 League | 45 | 42 | 3,702 | 41.1 | 18 | 3 | 21 | 18 | 0 | 0 | 1 | 0 | 0.44 | 0.07 | 0.51 | 0.44 | 0.51 | |||||
| Huddersfield Town (1 Season) | 1 League | 21 | 1 | 467 | 5.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Oldham Athletic (1 Season) | 1 League | 17 | 12 | 1,028 | 11.4 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 0.18 | 0.00 | 0.18 | 0.18 | 0.18 | |||||
| Shrewsbury Town (1 Season) | 1 League | 15 | 10 | 953 | 10.6 | 4 | 1 | 5 | 4 | 0 | 0 | 0 | 0 | 0.38 | 0.09 | 0.47 | 0.38 | 0.47 | |||||
| Charlton Athletic (1 Season) | 1 League | 14 | 8 | 711 | 7.9 | 1 | 1 | 2 | 1 | 0 | 0 | 2 | 0 | 0.13 | 0.13 | 0.25 | 0.13 | 0.25 | |||||
| Southend United (1 Season) | 1 League | 10 | 3 | 317 | 3.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Chesterfield (1 Season) | 1 League | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Nuneaton Town (1 Season) | 1 League | 6 | 2 | 178 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.01 | 0.00 | 1.01 | 1.01 | 1.01 | |||||
| Woking (1 Season) | 1 League | 4 | 1 | 122 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Harriers (1 Season) | 1 League | 3 | 2 | 144 | 1.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| League One (10 Seasons) | 236 | 141 | 13,371 | 148.6 | 67 | 10 | 77 | 65 | 2 | 3 | 6 | 0 | 0.45 | 0.07 | 0.52 | 0.44 | 0.50 | ||||||
| Championship (2 Seasons) | 59 | 25 | 2,451 | 27.2 | 11 | 0 | 11 | 11 | 0 | 1 | 0 | 0 | 0.40 | 0.00 | 0.40 | 0.40 | 0.40 | ||||||
| Premier League (2 Seasons) | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||||
| Conf Premier (1 Season) | 13 | 5 | 444 | 4.9 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.41 | 0.00 | 0.41 | 0.41 | 0.41 | ||||||
| League Two (1 Season) | 7 | 1 | 167 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||||
| 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 | |||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 65th | 1 | 1 | 76 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 9th | 1 | 0 | 34 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 33rd | 2 | 2 | 167 | 1.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.54 | 0.00 | 0.54 | 0.54 | 0.54 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 65th | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 33rd | 2 | 2 | 153 | 1.7 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.59 | 0.00 | 0.59 | 0.59 | 0.59 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 33rd | 3 | 1 | 141 | 1.6 | 2 | 1 | 3 | 2 | 0 | 0 | 0 | 0 | 1.28 | 0.64 | 1.91 | 1.28 | 1.91 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | EFL Cup | 58th | 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 | 28 | Rotherham United | eng ENG | EFL Cup | Rd1 | 1 | 1 | 59 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 2 | 2 | 149 | 1.7 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.60 | 0.00 | 0.60 | 0.60 | 0.60 | Matches | |
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 4 | 2 | 220 | 2.4 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.82 | 0.00 | 0.82 | 0.82 | 0.82 | Matches | |
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | Rd4 | 4 | 4 | 284 | 3.2 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 0.63 | 0.00 | 0.63 | 0.63 | 0.63 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 1 | 1 | 56 | 0.6 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 1 | 0 | 7 | 0.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 9 Seasons | 6 Clubs | 2 Leagues | 25 | 19 | 1,616 | 18.0 | 9 | 1 | 10 | 9 | 0 | 0 | 2 | 0 | 0.50 | 0.06 | 0.56 | 0.50 | 0.56 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Rotherham United (3 Seasons) | 2 Leagues | 9 | 7 | 592 | 6.6 | 4 | 1 | 5 | 4 | 0 | 0 | 1 | 0 | 0.61 | 0.15 | 0.76 | 0.61 | 0.76 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 9 | 7 | 560 | 6.2 | 4 | 0 | 4 | 4 | 0 | 0 | 0 | 0 | 0.64 | 0.00 | 0.64 | 0.64 | 0.64 | |||||
| Plymouth Argyle (1 Season) | 2 Leagues | 4 | 4 | 347 | 3.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.26 | 0.00 | 0.26 | 0.26 | 0.26 | |||||
| Crystal Palace (1 Season) | 1 League | 1 | 0 | 34 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Oldham Athletic (1 Season) | 1 League | 1 | 1 | 76 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Huddersfield Town (1 Season) | 1 League | 1 | 0 | 7 | 0.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| FA Cup (7 Seasons) | 14 | 9 | 829 | 9.2 | 5 | 1 | 6 | 5 | 0 | 0 | 1 | 0 | 0.54 | 0.11 | 0.65 | 0.54 | 0.65 | ||||||
| EFL Cup (6 Seasons) | 11 | 10 | 787 | 8.7 | 4 | 0 | 4 | 4 | 0 | 0 | 1 | 0 | 0.46 | 0.00 | 0.46 | 0.46 | 0.46 | ||||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 0.7 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 2.0 | 2 | 7 | 3.54 | 0.29 | 0 | 0 | |||||
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 1.6 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 1.4 | 0 | 1 | 0.74 | 0.00 | 0 | 0 | |||||
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 0.3 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 11.4 | 2 | 0 | 4 | 0.00 | 0.35 | 0.50 | 0 | 0 | Matches | ||
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 10.6 | 4 | 0 | 8 | 0.00 | 0.76 | 0.50 | 0 | 0 | Matches | ||
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 0.4 | 0 | 2 | 1 | 50.0 | 5.29 | 2.65 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 3.5 | 0 | 0 | 6 | 0.00 | 1.70 | 0.00 | 0 | 0 | Matches | ||
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 1.9 | 1 | 3 | 1 | 33.3 | 1.62 | 0.54 | 0.33 | 1.00 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 2.0 | 0 | 3 | 0 | 0.0 | 1.50 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 41.1 | 18 | 0 | 0 | Matches | |||||||
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 1.7 | 1 | 5 | 2 | 40.0 | 2.94 | 1.18 | 0.20 | 0.50 | 0 | 0 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 1.6 | 2 | 7 | 4 | 57.1 | 4.47 | 2.55 | 0.29 | 0.50 | 0 | 0 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 20.7 | 14 | 84 | 35 | 41.7 | 4.06 | 1.69 | 0.15 | 0.37 | 1 | 2 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 23.3 | 9 | 62 | 18 | 29.0 | 2.66 | 0.77 | 0.15 | 0.50 | 0 | 1 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | EFL Cup | 1.0 | 0 | 1 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021-2022 | 28 | Rotherham United | eng ENG | EFL Cup | 0.7 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 1.7 | 1 | 2 | 1 | 50.0 | 1.21 | 0.60 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 23.0 | 11 | 72 | 28 | 38.9 | 3.13 | 1.22 | 0.15 | 0.39 | 0 | 0 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 2.4 | 2 | 1 | 1 | 100.0 | 0.41 | 0.41 | 2.00 | 2.00 | 0 | 0 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 24.2 | 17 | 102 | 47 | 46.1 | 4.22 | 1.94 | 0.16 | 0.34 | 1 | 1 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 3.9 | 2 | 17 | 8 | 47.1 | 4.37 | 2.06 | 0.12 | 0.25 | 0 | 0 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | 3.2 | 2 | 10 | 5 | 50.0 | 3.17 | 1.58 | 0.20 | 0.40 | 0 | 0 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 0.6 | 0 | 4 | 1 | 25.0 | 6.43 | 1.61 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 7.9 | 1 | 26 | 11 | 42.3 | 3.29 | 1.39 | 0.04 | 0.09 | 0 | 0 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 0.1 | 0 | 0 | 0 | Matches | |||||||
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 5.2 | 0 | 9 | 1 | 11.1 | 1.73 | 0.19 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | Matches |
| 12 Seasons | 14 Clubs | 7 Leagues | 200.7 | 89 | 416 | 192 | 44.2 | 2.72 | 1.21 | 0.16 | 0.36 | 2 | 4 | |||
| Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rotherham United (3 Seasons) | 4 Leagues | 73.6 | 38 | 233 | 88 | 37.8 | 3.17 | 1.20 | 0.16 | 0.42 | 1 | 3 | ||||
| Ipswich Town (2 Seasons) | 4 Leagues | 34.3 | 23 | 134 | 62 | 46.3 | 3.91 | 1.81 | 0.16 | 0.35 | 1 | 1 | ||||
| Colchester United (2 Seasons) | 1 League | 1.0 | 0 | 0 | 0.00 | 0 | 0 | |||||||||
| Crystal Palace (2 Seasons) | 2 Leagues | 0.6 | 0 | 2 | 1 | 50.0 | 3.53 | 1.76 | 0.00 | 0.00 | 0 | 0 | ||||
| Plymouth Argyle (1 Season) | 3 Leagues | 45.0 | 19 | 6 | 1 | 16.7 | 1.56 | 0.26 | 0.17 | 1.00 | 0 | 0 | ||||
| Huddersfield Town (1 Season) | 2 Leagues | 5.3 | 0 | 9 | 1 | 11.1 | 1.73 | 0.19 | 0.00 | 0.00 | 0 | 0 | ||||
| Oldham Athletic (1 Season) | 2 Leagues | 12.3 | 2 | 0 | 4 | 0.00 | 0.35 | 0.50 | 0 | 0 | ||||||
| Shrewsbury Town (1 Season) | 1 League | 10.6 | 4 | 0 | 8 | 0.00 | 0.76 | 0.50 | 0 | 0 | ||||||
| Charlton Athletic (1 Season) | 1 League | 7.9 | 1 | 26 | 11 | 42.3 | 3.29 | 1.39 | 0.04 | 0.09 | 0 | 0 | ||||
| Southend United (1 Season) | 1 League | 3.5 | 0 | 0 | 6 | 0.00 | 1.70 | 0.00 | 0 | 0 | ||||||
| Chesterfield (1 Season) | 1 League | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | ||||
| Nuneaton Town (1 Season) | 1 League | 2.0 | 2 | 7 | 3.54 | 0.29 | 0 | 0 | ||||||||
| Woking (1 Season) | 1 League | 1.4 | 0 | 1 | 0.74 | 0.00 | 0 | 0 | ||||||||
| Harriers (1 Season) | 1 League | 1.6 | 0 | 0 | 0.00 | 0 | 0 | |||||||||
| League One (10 Seasons) | 148.6 | 67 | 293 | 140 | 47.8 | 2.75 | 1.30 | 0.16 | 0.34 | 2 | 3 | |||||
| FA Cup (7 Seasons) | 9.2 | 5 | 17 | 7 | 41.2 | 2.05 | 0.84 | 0.29 | 0.71 | 0 | 0 | |||||
| EFL Cup (6 Seasons) | 8.7 | 4 | 21 | 9 | 42.9 | 2.40 | 1.03 | 0.19 | 0.44 | 0 | 0 | |||||
| Championship (2 Seasons) | 27.2 | 11 | 79 | 26 | 32.9 | 2.90 | 0.95 | 0.14 | 0.42 | 0 | 1 | |||||
| Premier League (2 Seasons) | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| Conf Premier (1 Season) | 4.9 | 2 | 8 | 1.62 | 0.25 | 0 | 0 | |||||||||
| League Two (1 Season) | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | |||||
| Standard | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2012-2013 | 19 | Colchester United | 1 League | 0.7 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 20 | Colchester United | 1 League | 0.3 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 20 | Nuneaton Town | 1 League | 2.0 | 2 | 7 | 3.54 | 0.29 | 0 | 0 | |||||
| 2013-2014 | 20 | Woking | 1 League | 1.4 | 0 | 1 | 0.74 | 0.00 | 0 | 0 | |||||
| 2013-2014 | 20 | Harriers | 1 League | 1.6 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2016-2017 | 23 | Oldham Athletic | 2 Leagues | 12.3 | 2 | 0 | 4 | 0.00 | 0.35 | 0.50 | 0 | 0 | |||
| 2016-2017 | 23 | Shrewsbury Town | 1 League | 10.6 | 4 | 0 | 8 | 0.00 | 0.76 | 0.50 | 0 | 0 | |||
| 2017-2018 | 24 | Crystal Palace | 2 Leagues | 0.6 | 0 | 2 | 1 | 50.0 | 3.53 | 1.76 | 0.00 | 0.00 | 0 | 0 | |
| 2017-2018 | 24 | Southend United | 1 League | 3.5 | 0 | 0 | 6 | 0.00 | 1.70 | 0.00 | 0 | 0 | |||
| 2018-2019 | 25 | Plymouth Argyle | 3 Leagues | 45.0 | 19 | 6 | 1 | 16.7 | 1.56 | 0.26 | 0.17 | 1.00 | 0 | 0 | |
| 2019-2020 | 26 | Rotherham United | 3 Leagues | 23.9 | 17 | 96 | 41 | 42.7 | 4.01 | 1.71 | 0.17 | 0.39 | 1 | 2 | |
| 2020-2021 | 27 | Rotherham United | 2 Leagues | 24.3 | 9 | 63 | 18 | 28.6 | 2.59 | 0.74 | 0.14 | 0.50 | 0 | 1 | |
| 2021-2022 | 28 | Rotherham United | 3 Leagues | 25.3 | 12 | 74 | 29 | 39.2 | 2.92 | 1.15 | 0.16 | 0.41 | 0 | 0 | |
| 2022-2023 | 29 | Ipswich Town | 2 Leagues | 26.6 | 19 | 103 | 48 | 46.6 | 3.87 | 1.80 | 0.17 | 0.38 | 1 | 1 | |
| 2023-2024 | 30 | Ipswich Town | 3 Leagues | 7.7 | 4 | 31 | 14 | 45.2 | 4.04 | 1.83 | 0.13 | 0.29 | 0 | 0 | |
| 2023-2024 | 30 | Charlton Athletic | 1 League | 7.9 | 1 | 26 | 11 | 42.3 | 3.29 | 1.39 | 0.04 | 0.09 | 0 | 0 | |
| 2024-2025 | 31 | Huddersfield Town | 2 Leagues | 5.3 | 0 | 9 | 1 | 11.1 | 1.73 | 0.19 | 0.00 | 0.00 | 0 | 0 | |
| 2025-2026 | 32 | Chesterfield | 1 League | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | |
| 12 Seasons | 14 Clubs | 7 Leagues | 200.7 | 89 | 416 | 192 | 44.2 | 2.72 | 1.21 | 0.16 | 0.36 | 2 | 4 | ||
| Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rotherham United (3 Seasons) | 4 Leagues | 73.6 | 38 | 233 | 88 | 37.8 | 3.17 | 1.20 | 0.16 | 0.42 | 1 | 3 | |||
| Ipswich Town (2 Seasons) | 4 Leagues | 34.3 | 23 | 134 | 62 | 46.3 | 3.91 | 1.81 | 0.16 | 0.35 | 1 | 1 | |||
| Colchester United (2 Seasons) | 1 League | 1.0 | 0 | 0 | 0.00 | 0 | 0 | ||||||||
| Crystal Palace (2 Seasons) | 2 Leagues | 0.6 | 0 | 2 | 1 | 50.0 | 3.53 | 1.76 | 0.00 | 0.00 | 0 | 0 | |||
| Plymouth Argyle (1 Season) | 3 Leagues | 45.0 | 19 | 6 | 1 | 16.7 | 1.56 | 0.26 | 0.17 | 1.00 | 0 | 0 | |||
| Huddersfield Town (1 Season) | 2 Leagues | 5.3 | 0 | 9 | 1 | 11.1 | 1.73 | 0.19 | 0.00 | 0.00 | 0 | 0 | |||
| Oldham Athletic (1 Season) | 2 Leagues | 12.3 | 2 | 0 | 4 | 0.00 | 0.35 | 0.50 | 0 | 0 | |||||
| Shrewsbury Town (1 Season) | 1 League | 10.6 | 4 | 0 | 8 | 0.00 | 0.76 | 0.50 | 0 | 0 | |||||
| Charlton Athletic (1 Season) | 1 League | 7.9 | 1 | 26 | 11 | 42.3 | 3.29 | 1.39 | 0.04 | 0.09 | 0 | 0 | |||
| Southend United (1 Season) | 1 League | 3.5 | 0 | 0 | 6 | 0.00 | 1.70 | 0.00 | 0 | 0 | |||||
| Chesterfield (1 Season) | 1 League | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | |||
| Nuneaton Town (1 Season) | 1 League | 2.0 | 2 | 7 | 3.54 | 0.29 | 0 | 0 | |||||||
| Woking (1 Season) | 1 League | 1.4 | 0 | 1 | 0.74 | 0.00 | 0 | 0 | |||||||
| Harriers (1 Season) | 1 League | 1.6 | 0 | 0 | 0.00 | 0 | 0 | ||||||||
| League One (10 Seasons) | 148.6 | 67 | 293 | 140 | 47.8 | 2.75 | 1.30 | 0.16 | 0.34 | 2 | 3 | ||||
| FA Cup (7 Seasons) | 9.2 | 5 | 17 | 7 | 41.2 | 2.05 | 0.84 | 0.29 | 0.71 | 0 | 0 | ||||
| EFL Cup (6 Seasons) | 8.7 | 4 | 21 | 9 | 42.9 | 2.40 | 1.03 | 0.19 | 0.44 | 0 | 0 | ||||
| Championship (2 Seasons) | 27.2 | 11 | 79 | 26 | 32.9 | 2.90 | 0.95 | 0.14 | 0.42 | 0 | 1 | ||||
| Premier League (2 Seasons) | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||
| Conf Premier (1 Season) | 4.9 | 2 | 8 | 1.62 | 0.25 | 0 | 0 | ||||||||
| League Two (1 Season) | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | ||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 20th | 0.7 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 16th | 0.3 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 13th | 2.0 | 2 | 7 | 3.54 | 0.29 | 0 | 0 | |||||
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 9th | 1.4 | 0 | 1 | 0.74 | 0.00 | 0 | 0 | |||||
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 7th | 1.6 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 17th | 11.4 | 2 | 0 | 4 | 0.00 | 0.35 | 0.50 | 0 | 0 | Matches | ||
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 18th | 10.6 | 4 | 0 | 8 | 0.00 | 0.76 | 0.50 | 0 | 0 | Matches | ||
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 11th | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 10th | 3.5 | 0 | 0 | 6 | 0.00 | 1.70 | 0.00 | 0 | 0 | Matches | ||
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 21st | 41.1 | 18 | 0 | 0 | Matches | |||||||
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 2nd | 20.7 | 14 | 84 | 35 | 41.7 | 4.06 | 1.69 | 0.15 | 0.37 | 1 | 2 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 23rd | 23.3 | 9 | 62 | 18 | 29.0 | 2.66 | 0.77 | 0.15 | 0.50 | 0 | 1 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 2nd | 23.0 | 11 | 72 | 28 | 38.9 | 3.13 | 1.22 | 0.15 | 0.39 | 0 | 0 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 2nd | 24.2 | 17 | 102 | 47 | 46.1 | 4.22 | 1.94 | 0.16 | 0.34 | 1 | 1 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 2nd | 3.9 | 2 | 17 | 8 | 47.1 | 4.37 | 2.06 | 0.12 | 0.25 | 0 | 0 | Matches |
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 16th | 7.9 | 1 | 26 | 11 | 42.3 | 3.29 | 1.39 | 0.04 | 0.09 | 0 | 0 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 10th | 5.2 | 0 | 9 | 1 | 11.1 | 1.73 | 0.19 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 6th | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | Matches |
| 12 Seasons | 14 Clubs | 5 Leagues | 182.8 | 80 | 378 | 176 | 44.4 | 2.78 | 1.24 | 0.15 | 0.34 | 2 | 4 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rotherham United (3 Seasons) | 2 Leagues | 67.0 | 34 | 218 | 81 | 37.2 | 3.25 | 1.21 | 0.15 | 0.41 | 1 | 3 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 28.1 | 19 | 119 | 55 | 46.2 | 4.24 | 1.96 | 0.15 | 0.33 | 1 | 1 | |||||
| Colchester United (2 Seasons) | 1 League | 1.0 | 0 | 0 | 0.00 | 0 | 0 | ||||||||||
| Crystal Palace (2 Seasons) | 1 League | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| Plymouth Argyle (1 Season) | 1 League | 41.1 | 18 | 0 | 0 | ||||||||||||
| Huddersfield Town (1 Season) | 1 League | 5.2 | 0 | 9 | 1 | 11.1 | 1.73 | 0.19 | 0.00 | 0.00 | 0 | 0 | |||||
| Oldham Athletic (1 Season) | 1 League | 11.4 | 2 | 0 | 4 | 0.00 | 0.35 | 0.50 | 0 | 0 | |||||||
| Shrewsbury Town (1 Season) | 1 League | 10.6 | 4 | 0 | 8 | 0.00 | 0.76 | 0.50 | 0 | 0 | |||||||
| Charlton Athletic (1 Season) | 1 League | 7.9 | 1 | 26 | 11 | 42.3 | 3.29 | 1.39 | 0.04 | 0.09 | 0 | 0 | |||||
| Southend United (1 Season) | 1 League | 3.5 | 0 | 0 | 6 | 0.00 | 1.70 | 0.00 | 0 | 0 | |||||||
| Chesterfield (1 Season) | 1 League | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | |||||
| Nuneaton Town (1 Season) | 1 League | 2.0 | 2 | 7 | 3.54 | 0.29 | 0 | 0 | |||||||||
| Woking (1 Season) | 1 League | 1.4 | 0 | 1 | 0.74 | 0.00 | 0 | 0 | |||||||||
| Harriers (1 Season) | 1 League | 1.6 | 0 | 0 | 0.00 | 0 | 0 | ||||||||||
| League One (10 Seasons) | 148.6 | 67 | 293 | 140 | 47.8 | 2.75 | 1.30 | 0.16 | 0.34 | 2 | 3 | ||||||
| Championship (2 Seasons) | 27.2 | 11 | 79 | 26 | 32.9 | 2.90 | 0.95 | 0.14 | 0.42 | 0 | 1 | ||||||
| Premier League (2 Seasons) | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||||
| Conf Premier (1 Season) | 4.9 | 2 | 8 | 1.62 | 0.25 | 0 | 0 | ||||||||||
| League Two (1 Season) | 1.9 | 0 | 6 | 2 | 33.3 | 3.23 | 1.08 | 0.00 | 0.00 | 0 | 0 | ||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 65th | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 9th | 0.4 | 0 | 2 | 1 | 50.0 | 5.29 | 2.65 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 33rd | 1.9 | 1 | 3 | 1 | 33.3 | 1.62 | 0.54 | 0.33 | 1.00 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 65th | 2.0 | 0 | 3 | 0 | 0.0 | 1.50 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 33rd | 1.7 | 1 | 5 | 2 | 40.0 | 2.94 | 1.18 | 0.20 | 0.50 | 0 | 0 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 33rd | 1.6 | 2 | 7 | 4 | 57.1 | 4.47 | 2.55 | 0.29 | 0.50 | 0 | 0 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | EFL Cup | 58th | 1.0 | 0 | 1 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021-2022 | 28 | Rotherham United | eng ENG | EFL Cup | Rd1 | 0.7 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 1.7 | 1 | 2 | 1 | 50.0 | 1.21 | 0.60 | 0.50 | 1.00 | 0 | 0 | Matches | |
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 2.4 | 2 | 1 | 1 | 100.0 | 0.41 | 0.41 | 2.00 | 2.00 | 0 | 0 | Matches | |
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | Rd4 | 3.2 | 2 | 10 | 5 | 50.0 | 3.17 | 1.58 | 0.20 | 0.40 | 0 | 0 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 0.6 | 0 | 4 | 1 | 25.0 | 6.43 | 1.61 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 0.1 | 0 | 0 | 0 | Matches | ||||||||
| 9 Seasons | 6 Clubs | 2 Leagues | 18.0 | 9 | 38 | 16 | 42.1 | 2.23 | 0.94 | 0.24 | 0.56 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Rotherham United (3 Seasons) | 2 Leagues | 6.6 | 4 | 15 | 7 | 46.7 | 2.28 | 1.06 | 0.27 | 0.57 | 0 | 0 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 6.2 | 4 | 15 | 7 | 46.7 | 2.41 | 1.13 | 0.27 | 0.57 | 0 | 0 | |||||
| Plymouth Argyle (1 Season) | 2 Leagues | 3.9 | 1 | 6 | 1 | 16.7 | 1.56 | 0.26 | 0.17 | 1.00 | 0 | 0 | |||||
| Crystal Palace (1 Season) | 1 League | 0.4 | 0 | 2 | 1 | 50.0 | 5.29 | 2.65 | 0.00 | 0.00 | 0 | 0 | |||||
| Oldham Athletic (1 Season) | 1 League | 0.8 | 0 | 0 | 0 | ||||||||||||
| Huddersfield Town (1 Season) | 1 League | 0.1 | 0 | 0 | 0 | ||||||||||||
| FA Cup (7 Seasons) | 9.2 | 5 | 17 | 7 | 41.2 | 2.05 | 0.84 | 0.29 | 0.71 | 0 | 0 | ||||||
| EFL Cup (6 Seasons) | 8.7 | 4 | 21 | 9 | 42.9 | 2.40 | 1.03 | 0.19 | 0.44 | 0 | 0 | ||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 4 | 61 | 15 | 1.5 | 0.7 | 0 | 4 | |||||||||||
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 6 | 178 | 30 | 4.3 | 2.0 | 2 | 4 | |||||||||||
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 3 | 144 | 48 | 3.5 | 1.6 | 2 | 1 | |||||||||||
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 4 | 122 | 31 | 2.9 | 1.4 | 1 | 3 | |||||||||||
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 2 | 27 | 14 | 0.7 | 0.3 | 0 | 2 | |||||||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 1 | 76 | 76 | 42.2 | 0.8 | 1 | 76 | 0 | 0 | 0 | 0.00 | 2 | 3 | -1 | -1.18 | -2.05 | Matches | |
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 17 | 1,028 | 60 | 24.8 | 11.4 | 12 | 5 | 5 | 0 | 0.65 | 8 | 18 | -10 | -0.88 | -0.79 | Matches | ||
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 15 | 953 | 64 | 23.0 | 10.6 | 10 | 3 | 5 | 2 | 1.73 | 10 | 10 | 0 | 0.00 | +0.48 | Matches | ||
| 2016-2017 | 23 | Crystal Palace | eng ENG | 1. Premier League | 0 | 0 | 0 | 0 | 2 | Matches | ||||||||||||
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 1 | 34 | 34 | 12.6 | 0.4 | 0 | 0 | 1 | 33 | 0 | 0.00 | 0 | 2 | -2 | -5.29 | -5.68 | Matches | |
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 10 | 317 | 32 | 7.7 | 3.5 | 3 | 1 | 7 | 4 | 2.10 | 3 | 3 | 0 | 0.00 | +0.09 | Matches | ||
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 1 | 17 | 17 | 0.5 | 0.2 | 0 | 0 | 1 | 1 | 0.00 | 0 | 1 | -1 | -5.29 | -5.06 | Matches | ||
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 2 | 167 | 84 | 92.8 | 1.9 | 2 | 84 | 1 | 0 | 0 | 1.50 | 3 | 1 | +2 | +1.08 | +14.92 | Matches | |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 2 | 2 | 0 | 0.00 | Matches | ||
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 45 | 3,702 | 82 | 89.4 | 41.1 | 42 | 86 | 29 | 3 | 36 | 0 | 1.11 | 51 | 67 | -16 | -0.39 | +1.25 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 2 | 153 | 77 | 85.0 | 1.7 | 2 | 77 | 1 | 0 | 0 | 1.50 | 3 | 1 | +2 | +1.18 | -2.16 | Matches | |
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 3 | 141 | 47 | 52.2 | 1.6 | 1 | 90 | 1 | 2 | 26 | 0 | 2.00 | 7 | 4 | +3 | +1.91 | +2.61 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 31 | 1,861 | 60 | 59.1 | 20.7 | 20 | 83 | 12 | 11 | 19 | 2 | 1.81 | 35 | 25 | +10 | +0.48 | -0.42 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 42 | 2,101 | 50 | 50.7 | 23.3 | 23 | 76 | 5 | 19 | 19 | 3 | 0.88 | 25 | 34 | -9 | -0.39 | -0.08 | Matches |
| 2020-2021 | 27 | Rotherham United | 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 | 28 | Rotherham United | eng ENG | EFL Cup | 1 | 59 | 59 | 65.6 | 0.7 | 1 | 59 | 0 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.53 | -1.53 | Matches | |
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 2 | 149 | 75 | 49.7 | 1.7 | 2 | 75 | 1 | 0 | 1 | 3.00 | 3 | 0 | +3 | +1.81 | +1.22 | Matches | |
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 31 | 2,069 | 67 | 50.0 | 23.0 | 22 | 83 | 10 | 9 | 27 | 7 | 1.77 | 35 | 21 | +14 | +0.61 | -0.39 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 4 | 220 | 55 | 48.9 | 2.4 | 2 | 84 | 0 | 2 | 26 | 0 | 1.75 | 6 | 2 | +4 | +1.64 | -0.32 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 46 | 2,175 | 47 | 52.5 | 24.2 | 23 | 73 | 3 | 23 | 21 | 0 | 2.13 | 53 | 22 | +31 | +1.28 | -0.32 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 17 | 350 | 21 | 8.5 | 3.9 | 2 | 63 | 0 | 15 | 15 | 9 | 1.94 | 12 | 5 | +7 | +1.80 | +1.14 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | 4 | 284 | 71 | 72.8 | 3.2 | 4 | 71 | 0 | 0 | 0 | 1.75 | 6 | 5 | +1 | +0.32 | +0.32 | Matches | |
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 1 | 56 | 56 | 31.1 | 0.6 | 1 | 56 | 0 | 0 | 0 | 3.00 | 2 | 1 | +1 | +1.61 | +1.61 | Matches | |
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 14 | 711 | 51 | 17.2 | 7.9 | 8 | 75 | 1 | 6 | 19 | 2 | 1.14 | 10 | 13 | -3 | -0.38 | -0.43 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 1 | 7 | 7 | 7.8 | 0.1 | 0 | 0 | 1 | 7 | 0 | 0.00 | 0 | 0 | 0 | 0.00 | +1.08 | Matches | |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 21 | 467 | 22 | 11.3 | 5.2 | 1 | 69 | 0 | 20 | 20 | 6 | 1.86 | 7 | 5 | +2 | +0.39 | +0.36 | Matches |
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | Matches |
| 12 Seasons | 14 Clubs | 7 Leagues | 341 | 18,066 | 53 | 22.8 | 200.7 | 191 | 80 | 76 | 150 | 20 | 40 | 1.52 | 287 | 250 | +37 | +0.19 | +0.01 | |||
| Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rotherham United (3 Seasons) | 4 Leagues | 113 | 6,623 | 59 | 53.6 | 73.6 | 72 | 80 | 31 | 41 | 21 | 13 | 1.45 | 109 | 87 | +22 | +0.30 | -0.17 | ||||
| Ipswich Town (2 Seasons) | 4 Leagues | 72 | 3,085 | 43 | 33.2 | 34.3 | 32 | 72 | 3 | 40 | 19 | 9 | 2.06 | 79 | 35 | +44 | +1.28 | +0.30 | ||||
| Colchester United (2 Seasons) | 1 League | 6 | 88 | 15 | 1.1 | 1.0 | 0 | 6 | ||||||||||||||
| Crystal Palace (2 Seasons) | 2 Leagues | 2 | 51 | 26 | 0.7 | 0.6 | 0 | 0 | 2 | 33 | 3 | 0.00 | 0 | 3 | -3 | -5.29 | -5.10 | |||||
| Plymouth Argyle (1 Season) | 3 Leagues | 49 | 4,049 | 83 | 90.0 | 45.0 | 46 | 86 | 32 | 3 | 36 | 0 | 1.14 | 56 | 70 | -14 | -0.31 | +1.68 | ||||
| Huddersfield Town (1 Season) | 2 Leagues | 22 | 474 | 22 | 11.2 | 5.3 | 1 | 69 | 0 | 21 | 19 | 6 | 1.78 | 7 | 5 | +2 | +0.38 | +0.38 | ||||
| Oldham Athletic (1 Season) | 2 Leagues | 18 | 1,104 | 61 | 25.6 | 12.3 | 13 | 76 | 5 | 5 | 0 | 0.61 | 10 | 21 | -11 | -0.90 | -0.84 | |||||
| Shrewsbury Town (1 Season) | 1 League | 15 | 953 | 64 | 23.0 | 10.6 | 10 | 3 | 5 | 2 | 1.73 | 10 | 10 | 0 | 0.00 | +0.48 | ||||||
| Charlton Athletic (1 Season) | 1 League | 14 | 711 | 51 | 17.2 | 7.9 | 8 | 75 | 1 | 6 | 19 | 2 | 1.14 | 10 | 13 | -3 | -0.38 | -0.43 | ||||
| Southend United (1 Season) | 1 League | 10 | 317 | 32 | 7.7 | 3.5 | 3 | 1 | 7 | 4 | 2.10 | 3 | 3 | 0 | 0.00 | +0.09 | ||||||
| Chesterfield (1 Season) | 1 League | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | ||||
| Nuneaton Town (1 Season) | 1 League | 6 | 178 | 30 | 4.3 | 2.0 | 2 | 4 | ||||||||||||||
| Woking (1 Season) | 1 League | 4 | 122 | 31 | 2.9 | 1.4 | 1 | 3 | ||||||||||||||
| Harriers (1 Season) | 1 League | 3 | 144 | 48 | 3.5 | 1.6 | 2 | 1 | ||||||||||||||
| League One (10 Seasons) | 236 | 13,371 | 57 | 30.0 | 148.6 | 141 | 81 | 64 | 95 | 22 | 23 | 1.62 | 212 | 184 | +28 | +0.19 | +0.03 | |||||
| FA Cup (7 Seasons) | 14 | 829 | 59 | 50.2 | 9.2 | 9 | 80 | 4 | 5 | 22 | 1 | 1.79 | 22 | 12 | +10 | +1.09 | +0.54 | |||||
| EFL Cup (6 Seasons) | 11 | 787 | 72 | 65.6 | 8.7 | 10 | 75 | 3 | 1 | 33 | 0 | 1.27 | 13 | 11 | +2 | +0.23 | +0.23 | |||||
| Championship (2 Seasons) | 59 | 2,451 | 42 | 29.6 | 27.2 | 25 | 75 | 5 | 34 | 17 | 12 | 1.19 | 37 | 39 | -2 | -0.07 | -0.40 | |||||
| Premier League (2 Seasons) | 1 | 17 | 17 | 0.2 | 0.2 | 0 | 0 | 1 | 3 | 0.00 | 0 | 1 | -1 | -5.29 | -5.06 | |||||||
| Conf Premier (1 Season) | 13 | 444 | 34 | 3.6 | 4.9 | 5 | 8 | |||||||||||||||
| League Two (1 Season) | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | |||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2012-2013 | 19 | Colchester United | 1 League | 4 | 61 | 15 | 1.5 | 0.7 | 0 | 4 | |||||||||||
| 2013-2014 | 20 | Colchester United | 1 League | 2 | 27 | 14 | 0.7 | 0.3 | 0 | 2 | |||||||||||
| 2013-2014 | 20 | Nuneaton Town | 1 League | 6 | 178 | 30 | 4.3 | 2.0 | 2 | 4 | |||||||||||
| 2013-2014 | 20 | Woking | 1 League | 4 | 122 | 31 | 2.9 | 1.4 | 1 | 3 | |||||||||||
| 2013-2014 | 20 | Harriers | 1 League | 3 | 144 | 48 | 3.5 | 1.6 | 2 | 1 | |||||||||||
| 2016-2017 | 23 | Oldham Athletic | 2 Leagues | 18 | 1,104 | 61 | 25.6 | 12.3 | 13 | 76 | 5 | 5 | 0 | 0.61 | 10 | 21 | -11 | -0.90 | -0.84 | ||
| 2016-2017 | 23 | Shrewsbury Town | 1 League | 15 | 953 | 64 | 23.0 | 10.6 | 10 | 3 | 5 | 2 | 1.73 | 10 | 10 | 0 | 0.00 | +0.48 | |||
| 2016-2017 | 23 | Crystal Palace | 1 League | 0 | 0 | 0 | 0 | 2 | |||||||||||||
| 2017-2018 | 24 | Crystal Palace | 2 Leagues | 2 | 51 | 26 | 1.4 | 0.6 | 0 | 0 | 2 | 33 | 1 | 0.00 | 0 | 3 | -3 | -5.29 | -5.10 | ||
| 2017-2018 | 24 | Southend United | 1 League | 10 | 317 | 32 | 7.7 | 3.5 | 3 | 1 | 7 | 4 | 2.10 | 3 | 3 | 0 | 0.00 | +0.09 | |||
| 2018-2019 | 25 | Plymouth Argyle | 3 Leagues | 49 | 4,049 | 83 | 90.0 | 45.0 | 46 | 86 | 32 | 3 | 36 | 0 | 1.14 | 56 | 70 | -14 | -0.31 | +1.68 | |
| 2019-2020 | 26 | Rotherham United | 3 Leagues | 36 | 2,155 | 60 | 59.9 | 23.9 | 23 | 82 | 14 | 13 | 20 | 2 | 1.81 | 45 | 30 | +15 | +0.63 | -0.18 | |
| 2020-2021 | 27 | Rotherham United | 2 Leagues | 43 | 2,191 | 51 | 51.8 | 24.3 | 24 | 77 | 6 | 19 | 19 | 3 | 0.88 | 26 | 35 | -9 | -0.37 | -0.06 | |
| 2021-2022 | 28 | Rotherham United | 3 Leagues | 34 | 2,277 | 67 | 50.3 | 25.3 | 25 | 81 | 11 | 9 | 27 | 8 | 1.79 | 38 | 22 | +16 | +0.63 | -0.33 | |
| 2022-2023 | 29 | Ipswich Town | 2 Leagues | 50 | 2,395 | 48 | 52.2 | 26.6 | 25 | 74 | 3 | 25 | 22 | 0 | 2.10 | 59 | 24 | +35 | +1.32 | -0.32 | |
| 2023-2024 | 30 | Ipswich Town | 3 Leagues | 22 | 690 | 31 | 14.6 | 7.7 | 7 | 66 | 0 | 15 | 15 | 9 | 1.95 | 20 | 11 | +9 | +1.17 | +0.55 | |
| 2023-2024 | 30 | Charlton Athletic | 1 League | 14 | 711 | 51 | 17.2 | 7.9 | 8 | 75 | 1 | 6 | 19 | 2 | 1.14 | 10 | 13 | -3 | -0.38 | -0.43 | |
| 2024-2025 | 31 | Huddersfield Town | 2 Leagues | 22 | 474 | 22 | 11.2 | 5.3 | 1 | 69 | 0 | 21 | 19 | 6 | 1.78 | 7 | 5 | +2 | +0.38 | +0.38 | |
| 2025-2026 | 32 | Chesterfield | 1 League | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | |
| 12 Seasons | 14 Clubs | 7 Leagues | 341 | 18,066 | 53 | 22.8 | 200.7 | 191 | 80 | 76 | 150 | 20 | 40 | 1.52 | 287 | 250 | +37 | +0.19 | +0.01 | ||
| Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rotherham United (3 Seasons) | 4 Leagues | 113 | 6,623 | 59 | 53.6 | 73.6 | 72 | 80 | 31 | 41 | 21 | 13 | 1.45 | 109 | 87 | +22 | +0.30 | -0.17 | |||
| Ipswich Town (2 Seasons) | 4 Leagues | 72 | 3,085 | 43 | 33.2 | 34.3 | 32 | 72 | 3 | 40 | 19 | 9 | 2.06 | 79 | 35 | +44 | +1.28 | +0.30 | |||
| Colchester United (2 Seasons) | 1 League | 6 | 88 | 15 | 1.1 | 1.0 | 0 | 6 | |||||||||||||
| Crystal Palace (2 Seasons) | 2 Leagues | 2 | 51 | 26 | 0.7 | 0.6 | 0 | 0 | 2 | 33 | 3 | 0.00 | 0 | 3 | -3 | -5.29 | -5.10 | ||||
| Plymouth Argyle (1 Season) | 3 Leagues | 49 | 4,049 | 83 | 90.0 | 45.0 | 46 | 86 | 32 | 3 | 36 | 0 | 1.14 | 56 | 70 | -14 | -0.31 | +1.68 | |||
| Huddersfield Town (1 Season) | 2 Leagues | 22 | 474 | 22 | 11.2 | 5.3 | 1 | 69 | 0 | 21 | 19 | 6 | 1.78 | 7 | 5 | +2 | +0.38 | +0.38 | |||
| Oldham Athletic (1 Season) | 2 Leagues | 18 | 1,104 | 61 | 25.6 | 12.3 | 13 | 76 | 5 | 5 | 0 | 0.61 | 10 | 21 | -11 | -0.90 | -0.84 | ||||
| Shrewsbury Town (1 Season) | 1 League | 15 | 953 | 64 | 23.0 | 10.6 | 10 | 3 | 5 | 2 | 1.73 | 10 | 10 | 0 | 0.00 | +0.48 | |||||
| Charlton Athletic (1 Season) | 1 League | 14 | 711 | 51 | 17.2 | 7.9 | 8 | 75 | 1 | 6 | 19 | 2 | 1.14 | 10 | 13 | -3 | -0.38 | -0.43 | |||
| Southend United (1 Season) | 1 League | 10 | 317 | 32 | 7.7 | 3.5 | 3 | 1 | 7 | 4 | 2.10 | 3 | 3 | 0 | 0.00 | +0.09 | |||||
| Chesterfield (1 Season) | 1 League | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | |||
| Nuneaton Town (1 Season) | 1 League | 6 | 178 | 30 | 4.3 | 2.0 | 2 | 4 | |||||||||||||
| Woking (1 Season) | 1 League | 4 | 122 | 31 | 2.9 | 1.4 | 1 | 3 | |||||||||||||
| Harriers (1 Season) | 1 League | 3 | 144 | 48 | 3.5 | 1.6 | 2 | 1 | |||||||||||||
| League One (10 Seasons) | 236 | 13,371 | 57 | 30.0 | 148.6 | 141 | 81 | 64 | 95 | 22 | 23 | 1.62 | 212 | 184 | +28 | +0.19 | +0.03 | ||||
| FA Cup (7 Seasons) | 14 | 829 | 59 | 50.2 | 9.2 | 9 | 80 | 4 | 5 | 22 | 1 | 1.79 | 22 | 12 | +10 | +1.09 | +0.54 | ||||
| EFL Cup (6 Seasons) | 11 | 787 | 72 | 65.6 | 8.7 | 10 | 75 | 3 | 1 | 33 | 0 | 1.27 | 13 | 11 | +2 | +0.23 | +0.23 | ||||
| Championship (2 Seasons) | 59 | 2,451 | 42 | 29.6 | 27.2 | 25 | 75 | 5 | 34 | 17 | 12 | 1.19 | 37 | 39 | -2 | -0.07 | -0.40 | ||||
| Premier League (2 Seasons) | 1 | 17 | 17 | 0.2 | 0.2 | 0 | 0 | 1 | 3 | 0.00 | 0 | 1 | -1 | -5.29 | -5.06 | ||||||
| Conf Premier (1 Season) | 13 | 444 | 34 | 3.6 | 4.9 | 5 | 8 | ||||||||||||||
| League Two (1 Season) | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | ||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 20th | 4 | 61 | 15 | 1.5 | 0.7 | 0 | 4 | |||||||||||
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 16th | 2 | 27 | 14 | 0.7 | 0.3 | 0 | 2 | |||||||||||
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 13th | 6 | 178 | 30 | 4.3 | 2.0 | 2 | 4 | |||||||||||
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 9th | 4 | 122 | 31 | 2.9 | 1.4 | 1 | 3 | |||||||||||
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 7th | 3 | 144 | 48 | 3.5 | 1.6 | 2 | 1 | |||||||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 17th | 17 | 1,028 | 60 | 24.8 | 11.4 | 12 | 5 | 5 | 0 | 0.65 | 8 | 18 | -10 | -0.88 | -0.79 | Matches | ||
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 18th | 15 | 953 | 64 | 23.0 | 10.6 | 10 | 3 | 5 | 2 | 1.73 | 10 | 10 | 0 | 0.00 | +0.48 | Matches | ||
| 2016-2017 | 23 | Crystal Palace | eng ENG | 1. Premier League | 14th | 0 | 0 | 0 | 0 | 2 | Matches | ||||||||||||
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 11th | 1 | 17 | 17 | 0.5 | 0.2 | 0 | 0 | 1 | 1 | 0.00 | 0 | 1 | -1 | -5.29 | -5.06 | Matches | ||
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 10th | 10 | 317 | 32 | 7.7 | 3.5 | 3 | 1 | 7 | 4 | 2.10 | 3 | 3 | 0 | 0.00 | +0.09 | Matches | ||
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 21st | 45 | 3,702 | 82 | 89.4 | 41.1 | 42 | 86 | 29 | 3 | 36 | 0 | 1.11 | 51 | 67 | -16 | -0.39 | +1.25 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 2nd | 31 | 1,861 | 60 | 59.1 | 20.7 | 20 | 83 | 12 | 11 | 19 | 2 | 1.81 | 35 | 25 | +10 | +0.48 | -0.42 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 23rd | 42 | 2,101 | 50 | 50.7 | 23.3 | 23 | 76 | 5 | 19 | 19 | 3 | 0.88 | 25 | 34 | -9 | -0.39 | -0.08 | Matches |
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 2nd | 31 | 2,069 | 67 | 50.0 | 23.0 | 22 | 83 | 10 | 9 | 27 | 7 | 1.77 | 35 | 21 | +14 | +0.61 | -0.39 | Matches |
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 2nd | 46 | 2,175 | 47 | 52.5 | 24.2 | 23 | 73 | 3 | 23 | 21 | 0 | 2.13 | 53 | 22 | +31 | +1.28 | -0.32 | Matches |
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 2nd | 17 | 350 | 21 | 8.5 | 3.9 | 2 | 63 | 0 | 15 | 15 | 9 | 1.94 | 12 | 5 | +7 | +1.80 | +1.14 | Matches |
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 16th | 14 | 711 | 51 | 17.2 | 7.9 | 8 | 75 | 1 | 6 | 19 | 2 | 1.14 | 10 | 13 | -3 | -0.38 | -0.43 | Matches |
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 10th | 21 | 467 | 22 | 11.3 | 5.2 | 1 | 69 | 0 | 20 | 20 | 6 | 1.86 | 7 | 5 | +2 | +0.39 | +0.36 | Matches |
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 6th | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | Matches |
| 12 Seasons | 14 Clubs | 5 Leagues | 316 | 16,450 | 52 | 21.6 | 182.8 | 172 | 80 | 69 | 144 | 20 | 39 | 1.52 | 252 | 227 | +25 | +0.14 | -0.03 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rotherham United (3 Seasons) | 2 Leagues | 104 | 6,031 | 58 | 52.8 | 67.0 | 65 | 80 | 27 | 39 | 21 | 12 | 1.42 | 95 | 80 | +15 | +0.22 | -0.26 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 63 | 2,525 | 40 | 30.5 | 28.1 | 25 | 72 | 3 | 38 | 19 | 9 | 2.08 | 65 | 27 | +38 | +1.35 | +0.37 | |||||
| Colchester United (2 Seasons) | 1 League | 6 | 88 | 15 | 1.1 | 1.0 | 0 | 6 | |||||||||||||||
| Crystal Palace (2 Seasons) | 1 League | 1 | 17 | 17 | 0.2 | 0.2 | 0 | 0 | 1 | 3 | 0.00 | 0 | 1 | -1 | -5.29 | -5.06 | |||||||
| Plymouth Argyle (1 Season) | 1 League | 45 | 3,702 | 82 | 89.4 | 41.1 | 42 | 86 | 29 | 3 | 36 | 0 | 1.11 | 51 | 67 | -16 | -0.39 | +1.25 | |||||
| Huddersfield Town (1 Season) | 1 League | 21 | 467 | 22 | 11.3 | 5.2 | 1 | 69 | 0 | 20 | 20 | 6 | 1.86 | 7 | 5 | +2 | +0.39 | +0.36 | |||||
| Oldham Athletic (1 Season) | 1 League | 17 | 1,028 | 60 | 24.8 | 11.4 | 12 | 5 | 5 | 0 | 0.65 | 8 | 18 | -10 | -0.88 | -0.79 | |||||||
| Shrewsbury Town (1 Season) | 1 League | 15 | 953 | 64 | 23.0 | 10.6 | 10 | 3 | 5 | 2 | 1.73 | 10 | 10 | 0 | 0.00 | +0.48 | |||||||
| Charlton Athletic (1 Season) | 1 League | 14 | 711 | 51 | 17.2 | 7.9 | 8 | 75 | 1 | 6 | 19 | 2 | 1.14 | 10 | 13 | -3 | -0.38 | -0.43 | |||||
| Southend United (1 Season) | 1 League | 10 | 317 | 32 | 7.7 | 3.5 | 3 | 1 | 7 | 4 | 2.10 | 3 | 3 | 0 | 0.00 | +0.09 | |||||||
| Chesterfield (1 Season) | 1 League | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | |||||
| Nuneaton Town (1 Season) | 1 League | 6 | 178 | 30 | 4.3 | 2.0 | 2 | 4 | |||||||||||||||
| Woking (1 Season) | 1 League | 4 | 122 | 31 | 2.9 | 1.4 | 1 | 3 | |||||||||||||||
| Harriers (1 Season) | 1 League | 3 | 144 | 48 | 3.5 | 1.6 | 2 | 1 | |||||||||||||||
| League One (10 Seasons) | 236 | 13,371 | 57 | 30.0 | 148.6 | 141 | 81 | 64 | 95 | 22 | 23 | 1.62 | 212 | 184 | +28 | +0.19 | +0.03 | ||||||
| Championship (2 Seasons) | 59 | 2,451 | 42 | 29.6 | 27.2 | 25 | 75 | 5 | 34 | 17 | 12 | 1.19 | 37 | 39 | -2 | -0.07 | -0.40 | ||||||
| Premier League (2 Seasons) | 1 | 17 | 17 | 0.2 | 0.2 | 0 | 0 | 1 | 3 | 0.00 | 0 | 1 | -1 | -5.29 | -5.06 | ||||||||
| Conf Premier (1 Season) | 13 | 444 | 34 | 3.6 | 4.9 | 5 | 8 | ||||||||||||||||
| League Two (1 Season) | 7 | 167 | 24 | 4.0 | 1.9 | 1 | 65 | 0 | 6 | 17 | 1 | 1.43 | 3 | 3 | 0 | 0.00 | -0.34 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 65th | 1 | 76 | 76 | 42.2 | 0.8 | 1 | 76 | 0 | 0 | 0 | 0.00 | 2 | 3 | -1 | -1.18 | -2.05 | Matches | |
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 9th | 1 | 34 | 34 | 12.6 | 0.4 | 0 | 0 | 1 | 33 | 0 | 0.00 | 0 | 2 | -2 | -5.29 | -5.68 | Matches | |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 33rd | 2 | 167 | 84 | 92.8 | 1.9 | 2 | 84 | 1 | 0 | 0 | 1.50 | 3 | 1 | +2 | +1.08 | +14.92 | Matches | |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 65th | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 2 | 2 | 0 | 0.00 | Matches | ||
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 33rd | 2 | 153 | 77 | 85.0 | 1.7 | 2 | 77 | 1 | 0 | 0 | 1.50 | 3 | 1 | +2 | +1.18 | -2.16 | Matches | |
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 33rd | 3 | 141 | 47 | 52.2 | 1.6 | 1 | 90 | 1 | 2 | 26 | 0 | 2.00 | 7 | 4 | +3 | +1.91 | +2.61 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | EFL Cup | 58th | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 1.00 | 1 | 1 | 0 | 0.00 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | EFL Cup | Rd1 | 1 | 59 | 59 | 65.6 | 0.7 | 1 | 59 | 0 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.53 | -1.53 | Matches | |
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 2 | 149 | 75 | 49.7 | 1.7 | 2 | 75 | 1 | 0 | 1 | 3.00 | 3 | 0 | +3 | +1.81 | +1.22 | Matches | ||
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 4 | 220 | 55 | 48.9 | 2.4 | 2 | 84 | 0 | 2 | 26 | 0 | 1.75 | 6 | 2 | +4 | +1.64 | -0.32 | Matches | |
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | Rd4 | 4 | 284 | 71 | 72.8 | 3.2 | 4 | 71 | 0 | 0 | 0 | 1.75 | 6 | 5 | +1 | +0.32 | +0.32 | Matches | |
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 1 | 56 | 56 | 31.1 | 0.6 | 1 | 56 | 0 | 0 | 0 | 3.00 | 2 | 1 | +1 | +1.61 | +1.61 | Matches | ||
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 1 | 7 | 7 | 7.8 | 0.1 | 0 | 0 | 1 | 7 | 0 | 0.00 | 0 | 0 | 0 | 0.00 | +1.08 | Matches | ||
| 9 Seasons | 6 Clubs | 2 Leagues | 25 | 1,616 | 65 | 56.7 | 18.0 | 19 | 78 | 7 | 6 | 24 | 1 | 1.56 | 35 | 23 | +12 | +0.67 | +0.30 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Rotherham United (3 Seasons) | 2 Leagues | 9 | 592 | 66 | 63.7 | 6.6 | 7 | 77 | 4 | 2 | 26 | 1 | 1.78 | 14 | 7 | +7 | +1.06 | +0.80 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 9 | 560 | 62 | 54.9 | 6.2 | 7 | 73 | 0 | 2 | 26 | 0 | 1.89 | 14 | 8 | +6 | +0.96 | -0.01 | |||||
| Plymouth Argyle (1 Season) | 2 Leagues | 4 | 347 | 87 | 96.4 | 3.9 | 4 | 87 | 3 | 0 | 0 | 1.50 | 5 | 3 | +2 | +0.52 | +14.36 | ||||||
| Crystal Palace (1 Season) | 1 League | 1 | 34 | 34 | 12.6 | 0.4 | 0 | 0 | 1 | 33 | 0 | 0.00 | 0 | 2 | -2 | -5.29 | -5.68 | ||||||
| Oldham Athletic (1 Season) | 1 League | 1 | 76 | 76 | 42.2 | 0.8 | 1 | 76 | 0 | 0 | 0 | 0.00 | 2 | 3 | -1 | -1.18 | -2.05 | ||||||
| Huddersfield Town (1 Season) | 1 League | 1 | 7 | 7 | 7.8 | 0.1 | 0 | 0 | 1 | 7 | 0 | 0.00 | 0 | 0 | 0 | 0.00 | +1.08 | ||||||
| FA Cup (7 Seasons) | 14 | 829 | 59 | 50.2 | 9.2 | 9 | 80 | 4 | 5 | 22 | 1 | 1.79 | 22 | 12 | +10 | +1.09 | +0.54 | ||||||
| EFL Cup (6 Seasons) | 11 | 787 | 72 | 65.6 | 8.7 | 10 | 75 | 3 | 1 | 33 | 0 | 1.27 | 13 | 11 | +2 | +0.23 | +0.23 | ||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 0.7 | 0 | 0 | 3 | ||||||||||
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 2.0 | 0 | 0 | 0 | ||||||||||
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 1.6 | 0 | 0 | 0 | ||||||||||
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 1.4 | 0 | 0 | 1 | ||||||||||
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 0.3 | 0 | 0 | 1 | ||||||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 11.4 | 1 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 10.6 | 0 | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 0.4 | 0 | 0 | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 3.5 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 1.9 | 1 | 0 | 0 | 5 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 2.0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 41.1 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 1.7 | 0 | 0 | 0 | 0 | 1 | 0 | 2 | 0 | 0 | 0 | Matches | ||
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 1.6 | 0 | 0 | 0 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | Matches | ||
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 20.7 | 2 | 0 | 0 | 27 | 22 | 14 | 14 | 5 | 6 | 1 | 0 | 0 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 23.3 | 0 | 0 | 0 | 50 | 25 | 13 | 14 | 8 | 5 | 0 | Matches | ||
| 2020-2021 | 27 | Rotherham United | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | EFL Cup | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 1.7 | 1 | 0 | 0 | 5 | 2 | 2 | 0 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 23.0 | 0 | 0 | 0 | 42 | 14 | 9 | 10 | 2 | 6 | 0 | Matches | ||
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 2.4 | 0 | 0 | 0 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | Matches | ||
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 24.2 | 0 | 0 | 0 | 36 | 14 | 15 | 7 | 1 | 7 | 0 | Matches | ||
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 3.9 | 0 | 0 | 0 | 2 | 5 | 1 | 3 | 0 | 3 | 0 | Matches | ||
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | 3.2 | 0 | 0 | 0 | 5 | 5 | 4 | 0 | 0 | 1 | 0 | Matches | ||
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 0.6 | 0 | 0 | 0 | 2 | 0 | 1 | 0 | 0 | 0 | 0 | Matches | ||
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 7.9 | 2 | 0 | 0 | 11 | 5 | 5 | 0 | 2 | 2 | 0 | Matches | ||
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 0.1 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 5.2 | 0 | 0 | 0 | 14 | 4 | 3 | 1 | 1 | 1 | 0 | Matches | ||
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | Matches | ||
| 12 Seasons | 14 Clubs | 7 Leagues | 200.7 | 8 | 0 | 0 | 246 | 108 | 75 | 54 | 19 | 32 | 1 | 0 | 0 | |||
| Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rotherham United (3 Seasons) | 4 Leagues | 73.6 | 3 | 0 | 0 | 128 | 66 | 41 | 41 | 15 | 18 | 1 | 0 | 0 | ||||
| Ipswich Town (2 Seasons) | 4 Leagues | 34.3 | 0 | 0 | 0 | 47 | 26 | 23 | 10 | 1 | 11 | 0 | ||||||
| Colchester United (2 Seasons) | 1 League | 1.0 | 0 | 0 | 4 | |||||||||||||
| Crystal Palace (2 Seasons) | 2 Leagues | 0.6 | 0 | 0 | 0 | 3 | 1 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | ||||
| Plymouth Argyle (1 Season) | 3 Leagues | 45.0 | 2 | 0 | 0 | 5 | 6 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
| Huddersfield Town (1 Season) | 2 Leagues | 5.3 | 0 | 0 | 0 | 14 | 4 | 3 | 1 | 1 | 1 | 0 | ||||||
| Oldham Athletic (1 Season) | 2 Leagues | 12.3 | 1 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
| Shrewsbury Town (1 Season) | 1 League | 10.6 | 0 | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
| Charlton Athletic (1 Season) | 1 League | 7.9 | 2 | 0 | 0 | 11 | 5 | 5 | 0 | 2 | 2 | 0 | ||||||
| Southend United (1 Season) | 1 League | 3.5 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
| Chesterfield (1 Season) | 1 League | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | ||||||
| Nuneaton Town (1 Season) | 1 League | 2.0 | 0 | 0 | 0 | |||||||||||||
| Woking (1 Season) | 1 League | 1.4 | 0 | 0 | 1 | |||||||||||||
| Harriers (1 Season) | 1 League | 1.6 | 0 | 0 | 0 | |||||||||||||
| League One (10 Seasons) | 148.6 | 6 | 0 | 0 | 163 | 59 | 46 | 32 | 11 | 22 | 1 | 0 | 0 | |||||
| FA Cup (7 Seasons) | 9.2 | 1 | 0 | 0 | 12 | 8 | 6 | 0 | 0 | 1 | 0 | 0 | 0 | |||||
| EFL Cup (6 Seasons) | 8.7 | 1 | 0 | 0 | 14 | 11 | 7 | 3 | 0 | 1 | 0 | 0 | 0 | |||||
| Championship (2 Seasons) | 27.2 | 0 | 0 | 0 | 52 | 30 | 14 | 17 | 8 | 8 | 0 | |||||||
| Premier League (2 Seasons) | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | |||||
| Conf Premier (1 Season) | 4.9 | 0 | 0 | 1 | ||||||||||||||
| League Two (1 Season) | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | |||||||
| Performance | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2012-2013 | 19 | Colchester United | 1 League | 0.7 | 0 | 0 | 3 | ||||||||||
| 2013-2014 | 20 | Colchester United | 1 League | 0.3 | 0 | 0 | 1 | ||||||||||
| 2013-2014 | 20 | Nuneaton Town | 1 League | 2.0 | 0 | 0 | 0 | ||||||||||
| 2013-2014 | 20 | Woking | 1 League | 1.4 | 0 | 0 | 1 | ||||||||||
| 2013-2014 | 20 | Harriers | 1 League | 1.6 | 0 | 0 | 0 | ||||||||||
| 2016-2017 | 23 | Oldham Athletic | 2 Leagues | 12.3 | 1 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2016-2017 | 23 | Shrewsbury Town | 1 League | 10.6 | 0 | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2017-2018 | 24 | Crystal Palace | 2 Leagues | 0.6 | 0 | 0 | 0 | 3 | 1 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | |
| 2017-2018 | 24 | Southend United | 1 League | 3.5 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2018-2019 | 25 | Plymouth Argyle | 3 Leagues | 45.0 | 2 | 0 | 0 | 5 | 6 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2019-2020 | 26 | Rotherham United | 3 Leagues | 23.9 | 2 | 0 | 0 | 30 | 24 | 15 | 16 | 5 | 7 | 1 | 0 | 0 | |
| 2020-2021 | 27 | Rotherham United | 2 Leagues | 24.3 | 0 | 0 | 0 | 51 | 26 | 15 | 14 | 8 | 5 | 0 | |||
| 2021-2022 | 28 | Rotherham United | 3 Leagues | 25.3 | 1 | 0 | 0 | 47 | 16 | 11 | 11 | 2 | 6 | 0 | |||
| 2022-2023 | 29 | Ipswich Town | 2 Leagues | 26.6 | 0 | 0 | 0 | 38 | 16 | 17 | 7 | 1 | 7 | 0 | |||
| 2023-2024 | 30 | Ipswich Town | 3 Leagues | 7.7 | 0 | 0 | 0 | 9 | 10 | 6 | 3 | 0 | 4 | 0 | |||
| 2023-2024 | 30 | Charlton Athletic | 1 League | 7.9 | 2 | 0 | 0 | 11 | 5 | 5 | 0 | 2 | 2 | 0 | |||
| 2024-2025 | 31 | Huddersfield Town | 2 Leagues | 5.3 | 0 | 0 | 0 | 14 | 4 | 3 | 1 | 1 | 1 | 0 | |||
| 2025-2026 | 32 | Chesterfield | 1 League | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | |||
| 12 Seasons | 14 Clubs | 7 Leagues | 200.7 | 8 | 0 | 0 | 246 | 108 | 75 | 54 | 19 | 32 | 1 | 0 | 0 | ||
| Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rotherham United (3 Seasons) | 4 Leagues | 73.6 | 3 | 0 | 0 | 128 | 66 | 41 | 41 | 15 | 18 | 1 | 0 | 0 | |||
| Ipswich Town (2 Seasons) | 4 Leagues | 34.3 | 0 | 0 | 0 | 47 | 26 | 23 | 10 | 1 | 11 | 0 | |||||
| Colchester United (2 Seasons) | 1 League | 1.0 | 0 | 0 | 4 | ||||||||||||
| Crystal Palace (2 Seasons) | 2 Leagues | 0.6 | 0 | 0 | 0 | 3 | 1 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | |||
| Plymouth Argyle (1 Season) | 3 Leagues | 45.0 | 2 | 0 | 0 | 5 | 6 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |||
| Huddersfield Town (1 Season) | 2 Leagues | 5.3 | 0 | 0 | 0 | 14 | 4 | 3 | 1 | 1 | 1 | 0 | |||||
| Oldham Athletic (1 Season) | 2 Leagues | 12.3 | 1 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||
| Shrewsbury Town (1 Season) | 1 League | 10.6 | 0 | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||
| Charlton Athletic (1 Season) | 1 League | 7.9 | 2 | 0 | 0 | 11 | 5 | 5 | 0 | 2 | 2 | 0 | |||||
| Southend United (1 Season) | 1 League | 3.5 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||
| Chesterfield (1 Season) | 1 League | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | |||||
| Nuneaton Town (1 Season) | 1 League | 2.0 | 0 | 0 | 0 | ||||||||||||
| Woking (1 Season) | 1 League | 1.4 | 0 | 0 | 1 | ||||||||||||
| Harriers (1 Season) | 1 League | 1.6 | 0 | 0 | 0 | ||||||||||||
| League One (10 Seasons) | 148.6 | 6 | 0 | 0 | 163 | 59 | 46 | 32 | 11 | 22 | 1 | 0 | 0 | ||||
| FA Cup (7 Seasons) | 9.2 | 1 | 0 | 0 | 12 | 8 | 6 | 0 | 0 | 1 | 0 | 0 | 0 | ||||
| EFL Cup (6 Seasons) | 8.7 | 1 | 0 | 0 | 14 | 11 | 7 | 3 | 0 | 1 | 0 | 0 | 0 | ||||
| Championship (2 Seasons) | 27.2 | 0 | 0 | 0 | 52 | 30 | 14 | 17 | 8 | 8 | 0 | ||||||
| Premier League (2 Seasons) | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | ||||
| Conf Premier (1 Season) | 4.9 | 0 | 0 | 1 | |||||||||||||
| League Two (1 Season) | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | ||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2012-2013 | 19 | Colchester United | eng ENG | 3. League One | 20th | 0.7 | 0 | 0 | 3 | ||||||||||
| 2013-2014 | 20 | Colchester United | eng ENG | 3. League One | 16th | 0.3 | 0 | 0 | 1 | ||||||||||
| 2013-2014 | 20 | Nuneaton Town | eng ENG | 5. Conf Premier | 13th | 2.0 | 0 | 0 | 0 | ||||||||||
| 2013-2014 | 20 | Woking | eng ENG | 5. Conf Premier | 9th | 1.4 | 0 | 0 | 1 | ||||||||||
| 2013-2014 | 20 | Harriers | eng ENG | 5. Conf Premier | 7th | 1.6 | 0 | 0 | 0 | ||||||||||
| 2016-2017 | 23 | Oldham Athletic | eng ENG | 3. League One | 17th | 11.4 | 1 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 23 | Shrewsbury Town | eng ENG | 3. League One | 18th | 10.6 | 0 | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 24 | Crystal Palace | eng ENG | 1. Premier League | 11th | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 24 | Southend United | eng ENG | 3. League One | 10th | 3.5 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | 3. League One | 21st | 41.1 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 26 | Rotherham United | eng ENG | 3. League One | 2nd | 20.7 | 2 | 0 | 0 | 27 | 22 | 14 | 14 | 5 | 6 | 1 | 0 | 0 | Matches |
| 2020-2021 | 27 | Rotherham United | eng ENG | 2. Championship | 23rd | 23.3 | 0 | 0 | 0 | 50 | 25 | 13 | 14 | 8 | 5 | 0 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | 3. League One | 2nd | 23.0 | 0 | 0 | 0 | 42 | 14 | 9 | 10 | 2 | 6 | 0 | Matches | ||
| 2022-2023 | 29 | Ipswich Town | eng ENG | 3. League One | 2nd | 24.2 | 0 | 0 | 0 | 36 | 14 | 15 | 7 | 1 | 7 | 0 | Matches | ||
| 2023-2024 | 30 | Ipswich Town | eng ENG | 2. Championship | 2nd | 3.9 | 0 | 0 | 0 | 2 | 5 | 1 | 3 | 0 | 3 | 0 | Matches | ||
| 2023-2024 | 30 | Charlton Athletic | eng ENG | 3. League One | 16th | 7.9 | 2 | 0 | 0 | 11 | 5 | 5 | 0 | 2 | 2 | 0 | Matches | ||
| 2024-2025 | 31 | Huddersfield Town | eng ENG | 3. League One | 10th | 5.2 | 0 | 0 | 0 | 14 | 4 | 3 | 1 | 1 | 1 | 0 | Matches | ||
| 2025-2026 | 32 | Chesterfield | eng ENG | 4. League Two | 6th | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | Matches | ||
| 12 Seasons | 14 Clubs | 5 Leagues | 182.8 | 6 | 0 | 0 | 220 | 89 | 62 | 51 | 19 | 30 | 1 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rotherham United (3 Seasons) | 2 Leagues | 67.0 | 2 | 0 | 0 | 119 | 61 | 36 | 38 | 15 | 17 | 1 | 0 | 0 | |||||
| Ipswich Town (2 Seasons) | 2 Leagues | 28.1 | 0 | 0 | 0 | 38 | 19 | 16 | 10 | 1 | 10 | 0 | |||||||
| Colchester United (2 Seasons) | 1 League | 1.0 | 0 | 0 | 4 | ||||||||||||||
| Crystal Palace (2 Seasons) | 1 League | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | |||||
| Plymouth Argyle (1 Season) | 1 League | 41.1 | 1 | 0 | 0 | 0 | |||||||||||||
| Huddersfield Town (1 Season) | 1 League | 5.2 | 0 | 0 | 0 | 14 | 4 | 3 | 1 | 1 | 1 | 0 | |||||||
| Oldham Athletic (1 Season) | 1 League | 11.4 | 1 | 0 | 0 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Shrewsbury Town (1 Season) | 1 League | 10.6 | 0 | 0 | 0 | 12 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Charlton Athletic (1 Season) | 1 League | 7.9 | 2 | 0 | 0 | 11 | 5 | 5 | 0 | 2 | 2 | 0 | |||||||
| Southend United (1 Season) | 1 League | 3.5 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Chesterfield (1 Season) | 1 League | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | |||||||
| Nuneaton Town (1 Season) | 1 League | 2.0 | 0 | 0 | 0 | ||||||||||||||
| Woking (1 Season) | 1 League | 1.4 | 0 | 0 | 1 | ||||||||||||||
| Harriers (1 Season) | 1 League | 1.6 | 0 | 0 | 0 | ||||||||||||||
| League One (10 Seasons) | 148.6 | 6 | 0 | 0 | 163 | 59 | 46 | 32 | 11 | 22 | 1 | 0 | 0 | ||||||
| Championship (2 Seasons) | 27.2 | 0 | 0 | 0 | 52 | 30 | 14 | 17 | 8 | 8 | 0 | ||||||||
| Premier League (2 Seasons) | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | ||||||
| Conf Premier (1 Season) | 4.9 | 0 | 0 | 1 | |||||||||||||||
| League Two (1 Season) | 1.9 | 0 | 0 | 0 | 4 | 0 | 2 | 0 | 0 | 0 | 0 | ||||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2016-2017 | 23 | Oldham Athletic | eng ENG | FA Cup | 65th | 0.8 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 24 | Crystal Palace | eng ENG | EFL Cup | 9th | 0.4 | 0 | 0 | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | EFL Cup | 33rd | 1.9 | 1 | 0 | 0 | 5 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 25 | Plymouth Argyle | eng ENG | FA Cup | 65th | 2.0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2019-2020 | 26 | Rotherham United | eng ENG | EFL Cup | 33rd | 1.7 | 0 | 0 | 0 | 0 | 1 | 0 | 2 | 0 | 0 | 0 | Matches | ||
| 2019-2020 | 26 | Rotherham United | eng ENG | FA Cup | 33rd | 1.6 | 0 | 0 | 0 | 3 | 1 | 1 | 0 | 0 | 1 | 0 | Matches | ||
| 2020-2021 | 27 | Rotherham United | eng ENG | EFL Cup | 58th | 1.0 | 0 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | EFL Cup | Rd1 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 28 | Rotherham United | eng ENG | FA Cup | 1.7 | 1 | 0 | 0 | 5 | 2 | 2 | 0 | 0 | 0 | 0 | Matches | |||
| 2022-2023 | 29 | Ipswich Town | eng ENG | FA Cup | 2.4 | 0 | 0 | 0 | 2 | 2 | 2 | 0 | 0 | 0 | 0 | Matches | |||
| 2023-2024 | 30 | Ipswich Town | eng ENG | EFL Cup | Rd4 | 3.2 | 0 | 0 | 0 | 5 | 5 | 4 | 0 | 0 | 1 | 0 | Matches | ||
| 2023-2024 | 30 | Ipswich Town | eng ENG | FA Cup | 0.6 | 0 | 0 | 0 | 2 | 0 | 1 | 0 | 0 | 0 | 0 | Matches | |||
| 2024-2025 | 31 | Huddersfield Town | eng ENG | FA Cup | 0.1 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 9 Seasons | 6 Clubs | 2 Leagues | 18.0 | 2 | 0 | 0 | 26 | 19 | 13 | 3 | 0 | 2 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Rotherham United (3 Seasons) | 2 Leagues | 6.6 | 1 | 0 | 0 | 9 | 5 | 5 | 3 | 0 | 1 | 0 | |||||||
| Ipswich Town (2 Seasons) | 2 Leagues | 6.2 | 0 | 0 | 0 | 9 | 7 | 7 | 0 | 0 | 1 | 0 | |||||||
| Plymouth Argyle (1 Season) | 2 Leagues | 3.9 | 1 | 0 | 0 | 5 | 6 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Crystal Palace (1 Season) | 1 League | 0.4 | 0 | 0 | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Oldham Athletic (1 Season) | 1 League | 0.8 | 0 | 0 | 0 | 0 | |||||||||||||
| Huddersfield Town (1 Season) | 1 League | 0.1 | 0 | 0 | 0 | 0 | |||||||||||||
| FA Cup (7 Seasons) | 9.2 | 1 | 0 | 0 | 12 | 8 | 6 | 0 | 0 | 1 | 0 | 0 | 0 | ||||||
| EFL Cup (6 Seasons) | 8.7 | 1 | 0 | 0 | 14 | 11 | 7 | 3 | 0 | 1 | 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