| 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 | |||||
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 14 | 2 | 337 | 3.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 34 | 24 | 2,165 | 24.1 | 3 | 3 | 6 | 3 | 0 | 0 | 1 | 0 | 0.12 | 0.12 | 0.25 | 0.12 | 0.25 | |
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 46 | 46 | 3,969 | 44.1 | 12 | 6 | 18 | 12 | 0 | 0 | 0 | 0 | 0.27 | 0.14 | 0.41 | 0.27 | 0.41 | |
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 32 | 22 | 1,984 | 22.0 | 8 | 4 | 12 | 8 | 0 | 0 | 0 | 0 | 0.36 | 0.18 | 0.54 | 0.36 | 0.54 | |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 21 | 4 | 668 | 7.4 | 1 | 3 | 4 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.40 | 0.54 | 0.13 | 0.54 | Matches |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 1 | 0 | 2 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 3 | 3 | 224 | 2.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 1 | 0 | 10 | 0.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 34 | 22 | 2,027 | 22.5 | 6 | 4 | 10 | 6 | 0 | 0 | 1 | 0 | 0.27 | 0.18 | 0.44 | 0.27 | 0.44 | Matches |
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 2 | 2 | 180 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.00 | 0.00 | 1.00 | 1.00 | 1.00 | Matches |
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 1 | 1 | 70 | 0.8 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.29 | 1.29 | 0.00 | 1.29 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 22 | 16 | 1,404 | 15.6 | 4 | 4 | 8 | 4 | 0 | 0 | 2 | 0 | 0.26 | 0.26 | 0.51 | 0.26 | 0.51 | Matches |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 2 | 2 | 178 | 2.0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.51 | 0.00 | 0.51 | 0.51 | 0.51 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 2 | 1 | 101 | 1.1 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.89 | 0.00 | 0.89 | 0.89 | 0.89 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 41 | 34 | 2,858 | 31.8 | 5 | 8 | 13 | 5 | 0 | 0 | 2 | 0 | 0.16 | 0.25 | 0.41 | 0.16 | 0.41 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 5 | 3 | 323 | 3.6 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.28 | 0.28 | 0.56 | 0.28 | 0.56 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 41 | 31 | 2,645 | 29.4 | 5 | 4 | 9 | 5 | 0 | 0 | 1 | 0 | 0.17 | 0.14 | 0.31 | 0.17 | 0.31 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 2 | 1 | 91 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 21 | 15 | 1,363 | 15.1 | 6 | 2 | 8 | 6 | 0 | 0 | 2 | 0 | 0.40 | 0.13 | 0.53 | 0.40 | 0.53 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 10 | 5 | 492 | 5.5 | 1 | 2 | 3 | 1 | 0 | 0 | 0 | 0 | 0.18 | 0.37 | 0.55 | 0.18 | 0.55 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 1 | 1 | 65 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 20 | 15 | 1,356 | 15.1 | 3 | 2 | 5 | 3 | 0 | 0 | 3 | 0 | 0.20 | 0.13 | 0.33 | 0.20 | 0.33 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 1 | 1 | 90 | 1.0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1.00 | 0.00 | 1.00 | 1.00 | 1.00 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 1 | 1 | 75 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 38 | 33 | 2,952 | 32.8 | 9 | 9 | 18 | 9 | 0 | 0 | 3 | 0 | 0.27 | 0.27 | 0.55 | 0.27 | 0.55 | Matches |
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 23 | 9 | 946 | 10.5 | 0 | 2 | 2 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.19 | 0.19 | 0.00 | 0.19 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 44 | 40 | 3,222 | 35.8 | 7 | 6 | 13 | 7 | 0 | 0 | 8 | 0 | 0.20 | 0.17 | 0.36 | 0.20 | 0.36 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | 2 | 0 | 52 | 0.6 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1.73 | 0.00 | 1.73 | 1.73 | 1.73 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 2 | 0 | 38 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024 | 32 | Charlotte | us USA | 1. MLS | 4 | 0 | 49 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 8 | 0 | 79 | 0.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1.14 | 0.00 | 1.14 | 1.14 | 1.14 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 1 | 1 | 75 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 22 | 7 | 830 | 9.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 16 Seasons | 9 Clubs | 5 Leagues | 506 | 345 | 31,207 | 346.7 | 78 | 61 | 139 | 78 | 0 | 1 | 30 | 0 | 0.22 | 0.18 | 0.40 | 0.22 | 0.40 | |||
| Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Bristol City (5 Seasons) | 3 Leagues | 157 | 119 | 10,371 | 115.2 | 26 | 21 | 47 | 26 | 0 | 0 | 12 | 0 | 0.23 | 0.18 | 0.41 | 0.23 | 0.41 | ||||
| Nottingham Forest (4 Seasons) | 3 Leagues | 62 | 32 | 3,153 | 35.0 | 10 | 8 | 18 | 10 | 0 | 0 | 1 | 0 | 0.29 | 0.23 | 0.51 | 0.29 | 0.51 | ||||
| Swansea City (3 Seasons) | 3 Leagues | 109 | 82 | 7,210 | 80.1 | 17 | 17 | 34 | 17 | 0 | 0 | 13 | 0 | 0.21 | 0.21 | 0.42 | 0.21 | 0.42 | ||||
| Walsall (3 Seasons) | 1 League | 94 | 72 | 6,471 | 71.9 | 15 | 9 | 24 | 15 | 0 | 0 | 1 | 0 | 0.21 | 0.13 | 0.33 | 0.21 | 0.33 | ||||
| Huddersfield Town (1 Season) | 2 Leagues | 36 | 24 | 2,207 | 24.5 | 8 | 4 | 12 | 8 | 0 | 0 | 1 | 0 | 0.33 | 0.16 | 0.49 | 0.33 | 0.49 | ||||
| Plymouth Argyle (1 Season) | 3 Leagues | 24 | 9 | 995 | 11.1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Derby County (1 Season) | 2 Leagues | 12 | 7 | 672 | 7.5 | 1 | 2 | 3 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.27 | 0.40 | 0.13 | 0.40 | ||||
| Coventry City (1 Season) | 1 League | 8 | 0 | 79 | 0.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1.14 | 0.00 | 1.14 | 1.14 | 1.14 | ||||
| Charlotte (1 Season) | 1 League | 4 | 0 | 49 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Championship (12 Seasons) | 357 | 246 | 22,023 | 244.7 | 56 | 50 | 106 | 56 | 0 | 0 | 26 | 0 | 0.23 | 0.20 | 0.43 | 0.23 | 0.43 | |||||
| EFL Cup (8 Seasons) | 17 | 13 | 1,207 | 13.4 | 4 | 2 | 6 | 4 | 0 | 1 | 2 | 0 | 0.30 | 0.15 | 0.45 | 0.30 | 0.45 | |||||
| FA Cup (8 Seasons) | 12 | 7 | 627 | 7.0 | 3 | 0 | 3 | 3 | 0 | 0 | 1 | 0 | 0.43 | 0.00 | 0.43 | 0.43 | 0.43 | |||||
| League One (4 Seasons) | 116 | 79 | 7,301 | 81.1 | 15 | 9 | 24 | 15 | 0 | 0 | 1 | 0 | 0.18 | 0.11 | 0.30 | 0.18 | 0.30 | |||||
| MLS (1 Season) | 4 | 0 | 49 | 0.5 | 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 | |||||
| 2010-2011 | 18 | Walsall | 1 League | 14 | 2 | 337 | 3.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2011-2012 | 19 | Walsall | 1 League | 34 | 24 | 2,165 | 24.1 | 3 | 3 | 6 | 3 | 0 | 0 | 1 | 0 | 0.12 | 0.12 | 0.25 | 0.12 | 0.25 | |
| 2012-2013 | 20 | Walsall | 1 League | 46 | 46 | 3,969 | 44.1 | 12 | 6 | 18 | 12 | 0 | 0 | 0 | 0 | 0.27 | 0.14 | 0.41 | 0.27 | 0.41 | |
| 2013-2014 | 21 | Nottingham Forest | 1 League | 32 | 22 | 1,984 | 22.0 | 8 | 4 | 12 | 8 | 0 | 0 | 0 | 0 | 0.36 | 0.18 | 0.54 | 0.36 | 0.54 | |
| 2014-2015 | 22 | Nottingham Forest | 3 Leagues | 25 | 7 | 894 | 9.9 | 1 | 3 | 4 | 1 | 0 | 0 | 1 | 0 | 0.10 | 0.30 | 0.40 | 0.10 | 0.40 | |
| 2015-2016 | 23 | Huddersfield Town | 2 Leagues | 36 | 24 | 2,207 | 24.5 | 8 | 4 | 12 | 8 | 0 | 0 | 1 | 0 | 0.33 | 0.16 | 0.49 | 0.33 | 0.49 | |
| 2015-2016 | 23 | Nottingham Forest | 2 Leagues | 2 | 1 | 80 | 0.9 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.13 | 1.13 | 0.00 | 1.13 | |
| 2016-2017 | 24 | Nottingham Forest | 2 Leagues | 3 | 2 | 195 | 2.2 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.46 | 0.00 | 0.46 | 0.46 | 0.46 | |
| 2016-2017 | 24 | Bristol City | 2 Leagues | 24 | 17 | 1,505 | 16.7 | 5 | 4 | 9 | 5 | 0 | 0 | 3 | 0 | 0.30 | 0.24 | 0.54 | 0.30 | 0.54 | |
| 2017-2018 | 25 | Bristol City | 2 Leagues | 46 | 37 | 3,181 | 35.3 | 6 | 9 | 15 | 6 | 0 | 0 | 3 | 0 | 0.17 | 0.25 | 0.42 | 0.17 | 0.42 | |
| 2018-2019 | 26 | Bristol City | 2 Leagues | 43 | 32 | 2,736 | 30.4 | 5 | 4 | 9 | 5 | 0 | 0 | 1 | 0 | 0.16 | 0.13 | 0.30 | 0.16 | 0.30 | |
| 2019-2020 | 27 | Derby County | 2 Leagues | 12 | 7 | 672 | 7.5 | 1 | 2 | 3 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.27 | 0.40 | 0.13 | 0.40 | |
| 2019-2020 | 27 | Bristol City | 2 Leagues | 22 | 16 | 1,428 | 15.9 | 6 | 2 | 8 | 6 | 0 | 0 | 2 | 0 | 0.38 | 0.13 | 0.50 | 0.38 | 0.50 | |
| 2020-2021 | 28 | Bristol City | 3 Leagues | 22 | 17 | 1,521 | 16.9 | 4 | 2 | 6 | 4 | 0 | 0 | 3 | 0 | 0.24 | 0.12 | 0.36 | 0.24 | 0.36 | |
| 2021-2022 | 29 | Swansea City | 1 League | 38 | 33 | 2,952 | 32.8 | 9 | 9 | 18 | 9 | 0 | 0 | 3 | 0 | 0.27 | 0.27 | 0.55 | 0.27 | 0.55 | |
| 2022-2023 | 30 | Swansea City | 1 League | 23 | 9 | 946 | 10.5 | 0 | 2 | 2 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.19 | 0.19 | 0.00 | 0.19 | |
| 2023-2024 | 31 | Swansea City | 3 Leagues | 48 | 40 | 3,312 | 36.8 | 8 | 6 | 14 | 8 | 0 | 0 | 8 | 0 | 0.22 | 0.16 | 0.38 | 0.22 | 0.38 | |
| 2024 | 32 | Charlotte | 1 League | 4 | 0 | 49 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2024-2025 | 32 | Coventry City | 1 League | 8 | 0 | 79 | 0.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1.14 | 0.00 | 1.14 | 1.14 | 1.14 | |
| 2025-2026 | 33 | Plymouth Argyle | 3 Leagues | 24 | 9 | 995 | 11.1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 16 Seasons | 9 Clubs | 5 Leagues | 506 | 345 | 31,207 | 346.7 | 78 | 61 | 139 | 78 | 0 | 1 | 30 | 0 | 0.22 | 0.18 | 0.40 | 0.22 | 0.40 | ||
| Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Bristol City (5 Seasons) | 3 Leagues | 157 | 119 | 10,371 | 115.2 | 26 | 21 | 47 | 26 | 0 | 0 | 12 | 0 | 0.23 | 0.18 | 0.41 | 0.23 | 0.41 | |||
| Nottingham Forest (4 Seasons) | 3 Leagues | 62 | 32 | 3,153 | 35.0 | 10 | 8 | 18 | 10 | 0 | 0 | 1 | 0 | 0.29 | 0.23 | 0.51 | 0.29 | 0.51 | |||
| Swansea City (3 Seasons) | 3 Leagues | 109 | 82 | 7,210 | 80.1 | 17 | 17 | 34 | 17 | 0 | 0 | 13 | 0 | 0.21 | 0.21 | 0.42 | 0.21 | 0.42 | |||
| Walsall (3 Seasons) | 1 League | 94 | 72 | 6,471 | 71.9 | 15 | 9 | 24 | 15 | 0 | 0 | 1 | 0 | 0.21 | 0.13 | 0.33 | 0.21 | 0.33 | |||
| Huddersfield Town (1 Season) | 2 Leagues | 36 | 24 | 2,207 | 24.5 | 8 | 4 | 12 | 8 | 0 | 0 | 1 | 0 | 0.33 | 0.16 | 0.49 | 0.33 | 0.49 | |||
| Plymouth Argyle (1 Season) | 3 Leagues | 24 | 9 | 995 | 11.1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Derby County (1 Season) | 2 Leagues | 12 | 7 | 672 | 7.5 | 1 | 2 | 3 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.27 | 0.40 | 0.13 | 0.40 | |||
| Coventry City (1 Season) | 1 League | 8 | 0 | 79 | 0.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1.14 | 0.00 | 1.14 | 1.14 | 1.14 | |||
| Charlotte (1 Season) | 1 League | 4 | 0 | 49 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Championship (12 Seasons) | 357 | 246 | 22,023 | 244.7 | 56 | 50 | 106 | 56 | 0 | 0 | 26 | 0 | 0.23 | 0.20 | 0.43 | 0.23 | 0.43 | ||||
| EFL Cup (8 Seasons) | 17 | 13 | 1,207 | 13.4 | 4 | 2 | 6 | 4 | 0 | 1 | 2 | 0 | 0.30 | 0.15 | 0.45 | 0.30 | 0.45 | ||||
| FA Cup (8 Seasons) | 12 | 7 | 627 | 7.0 | 3 | 0 | 3 | 3 | 0 | 0 | 1 | 0 | 0.43 | 0.00 | 0.43 | 0.43 | 0.43 | ||||
| League One (4 Seasons) | 116 | 79 | 7,301 | 81.1 | 15 | 9 | 24 | 15 | 0 | 0 | 1 | 0 | 0.18 | 0.11 | 0.30 | 0.18 | 0.30 | ||||
| MLS (1 Season) | 4 | 0 | 49 | 0.5 | 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 | |||||
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 20th | 14 | 2 | 337 | 3.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 19th | 34 | 24 | 2,165 | 24.1 | 3 | 3 | 6 | 3 | 0 | 0 | 1 | 0 | 0.12 | 0.12 | 0.25 | 0.12 | 0.25 | |
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 9th | 46 | 46 | 3,969 | 44.1 | 12 | 6 | 18 | 12 | 0 | 0 | 0 | 0 | 0.27 | 0.14 | 0.41 | 0.27 | 0.41 | |
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 11th | 32 | 22 | 1,984 | 22.0 | 8 | 4 | 12 | 8 | 0 | 0 | 0 | 0 | 0.36 | 0.18 | 0.54 | 0.36 | 0.54 | |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 14th | 21 | 4 | 668 | 7.4 | 1 | 3 | 4 | 1 | 0 | 0 | 1 | 0 | 0.13 | 0.40 | 0.54 | 0.13 | 0.54 | Matches |
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 19th | 34 | 22 | 2,027 | 22.5 | 6 | 4 | 10 | 6 | 0 | 0 | 1 | 0 | 0.27 | 0.18 | 0.44 | 0.27 | 0.44 | Matches |
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 16th | 1 | 0 | 10 | 0.1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 21st | 1 | 0 | 17 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 17th | 22 | 16 | 1,404 | 15.6 | 4 | 4 | 8 | 4 | 0 | 0 | 2 | 0 | 0.26 | 0.26 | 0.51 | 0.26 | 0.51 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 11th | 41 | 34 | 2,858 | 31.8 | 5 | 8 | 13 | 5 | 0 | 0 | 2 | 0 | 0.16 | 0.25 | 0.41 | 0.16 | 0.41 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 8th | 41 | 31 | 2,645 | 29.4 | 5 | 4 | 9 | 5 | 0 | 0 | 1 | 0 | 0.17 | 0.14 | 0.31 | 0.17 | 0.31 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 10th | 10 | 5 | 492 | 5.5 | 1 | 2 | 3 | 1 | 0 | 0 | 0 | 0 | 0.18 | 0.37 | 0.55 | 0.18 | 0.55 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 12th | 21 | 15 | 1,363 | 15.1 | 6 | 2 | 8 | 6 | 0 | 0 | 2 | 0 | 0.40 | 0.13 | 0.53 | 0.40 | 0.53 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 19th | 20 | 15 | 1,356 | 15.1 | 3 | 2 | 5 | 3 | 0 | 0 | 3 | 0 | 0.20 | 0.13 | 0.33 | 0.20 | 0.33 | Matches |
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 15th | 38 | 33 | 2,952 | 32.8 | 9 | 9 | 18 | 9 | 0 | 0 | 3 | 0 | 0.27 | 0.27 | 0.55 | 0.27 | 0.55 | Matches |
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 10th | 23 | 9 | 946 | 10.5 | 0 | 2 | 2 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.19 | 0.19 | 0.00 | 0.19 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 14th | 44 | 40 | 3,222 | 35.8 | 7 | 6 | 13 | 7 | 0 | 0 | 8 | 0 | 0.20 | 0.17 | 0.36 | 0.20 | 0.36 | Matches |
| 2024 | 32 | Charlotte | us USA | 1. MLS | 11th | 4 | 0 | 49 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 5th | 8 | 0 | 79 | 0.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1.14 | 0.00 | 1.14 | 1.14 | 1.14 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 8th | 22 | 7 | 830 | 9.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 16 Seasons | 9 Clubs | 3 Leagues | 477 | 325 | 29,373 | 326.4 | 71 | 59 | 130 | 71 | 0 | 0 | 27 | 0 | 0.22 | 0.18 | 0.40 | 0.22 | 0.40 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Bristol City (5 Seasons) | 1 League | 145 | 111 | 9,626 | 107.0 | 23 | 20 | 43 | 23 | 0 | 0 | 10 | 0 | 0.22 | 0.19 | 0.40 | 0.22 | 0.40 | |||||
| Nottingham Forest (4 Seasons) | 1 League | 55 | 26 | 2,679 | 29.8 | 9 | 7 | 16 | 9 | 0 | 0 | 1 | 0 | 0.30 | 0.24 | 0.54 | 0.30 | 0.54 | |||||
| Swansea City (3 Seasons) | 1 League | 105 | 82 | 7,120 | 79.1 | 16 | 17 | 33 | 16 | 0 | 0 | 13 | 0 | 0.20 | 0.21 | 0.42 | 0.20 | 0.42 | |||||
| Walsall (3 Seasons) | 1 League | 94 | 72 | 6,471 | 71.9 | 15 | 9 | 24 | 15 | 0 | 0 | 1 | 0 | 0.21 | 0.13 | 0.33 | 0.21 | 0.33 | |||||
| Huddersfield Town (1 Season) | 1 League | 34 | 22 | 2,027 | 22.5 | 6 | 4 | 10 | 6 | 0 | 0 | 1 | 0 | 0.27 | 0.18 | 0.44 | 0.27 | 0.44 | |||||
| Plymouth Argyle (1 Season) | 1 League | 22 | 7 | 830 | 9.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Derby County (1 Season) | 1 League | 10 | 5 | 492 | 5.5 | 1 | 2 | 3 | 1 | 0 | 0 | 0 | 0 | 0.18 | 0.37 | 0.55 | 0.18 | 0.55 | |||||
| Coventry City (1 Season) | 1 League | 8 | 0 | 79 | 0.9 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1.14 | 0.00 | 1.14 | 1.14 | 1.14 | |||||
| Charlotte (1 Season) | 1 League | 4 | 0 | 49 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Championship (12 Seasons) | 357 | 246 | 22,023 | 244.7 | 56 | 50 | 106 | 56 | 0 | 0 | 26 | 0 | 0.23 | 0.20 | 0.43 | 0.23 | 0.43 | ||||||
| League One (4 Seasons) | 116 | 79 | 7,301 | 81.1 | 15 | 9 | 24 | 15 | 0 | 0 | 1 | 0 | 0.18 | 0.11 | 0.30 | 0.18 | 0.30 | ||||||
| MLS (1 Season) | 4 | 0 | 49 | 0.5 | 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 | |||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 33rd | 1 | 0 | 2 | 0.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 17th | 3 | 3 | 224 | 2.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 33rd | 2 | 2 | 180 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.00 | 0.00 | 1.00 | 1.00 | 1.00 | Matches |
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 57th | 1 | 1 | 70 | 0.8 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 1.29 | 1.29 | 0.00 | 1.29 | Matches |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 17th | 2 | 2 | 178 | 2.0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0.51 | 0.00 | 0.51 | 0.51 | 0.51 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 17th | 2 | 1 | 101 | 1.1 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0.89 | 0.00 | 0.89 | 0.89 | 0.89 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 3rd | 5 | 3 | 323 | 3.6 | 1 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 0.28 | 0.28 | 0.56 | 0.28 | 0.56 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 9th | 2 | 1 | 91 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 33rd | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 33rd | 1 | 1 | 65 | 0.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 17th | 1 | 1 | 90 | 1.0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1.00 | 0.00 | 1.00 | 1.00 | 1.00 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 9th | 1 | 1 | 75 | 0.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | Rd2 | 2 | 0 | 52 | 0.6 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1.73 | 0.00 | 1.73 | 1.73 | 1.73 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 2 | 0 | 38 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | Rd2 | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 1 | 1 | 75 | 0.8 | 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 | 29 | 20 | 1,834 | 20.4 | 7 | 2 | 9 | 7 | 0 | 1 | 3 | 0 | 0.34 | 0.10 | 0.44 | 0.34 | 0.44 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Bristol City (5 Seasons) | 2 Leagues | 12 | 8 | 745 | 8.3 | 3 | 1 | 4 | 3 | 0 | 0 | 2 | 0 | 0.36 | 0.12 | 0.48 | 0.36 | 0.48 | |||||
| Nottingham Forest (3 Seasons) | 2 Leagues | 7 | 6 | 474 | 5.3 | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 0 | 0.19 | 0.19 | 0.38 | 0.19 | 0.38 | |||||
| Swansea City (1 Season) | 2 Leagues | 4 | 0 | 90 | 1.0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1.00 | 0.00 | 1.00 | 1.00 | 1.00 | |||||
| Derby County (1 Season) | 1 League | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Plymouth Argyle (1 Season) | 2 Leagues | 2 | 2 | 165 | 1.8 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Huddersfield Town (1 Season) | 1 League | 2 | 2 | 180 | 2.0 | 2 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1.00 | 0.00 | 1.00 | 1.00 | 1.00 | |||||
| EFL Cup (8 Seasons) | 17 | 13 | 1,207 | 13.4 | 4 | 2 | 6 | 4 | 0 | 1 | 2 | 0 | 0.30 | 0.15 | 0.45 | 0.30 | 0.45 | ||||||
| FA Cup (8 Seasons) | 12 | 7 | 627 | 7.0 | 3 | 0 | 3 | 3 | 0 | 0 | 1 | 0 | 0.43 | 0.00 | 0.43 | 0.43 | 0.43 | ||||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 3.7 | 0 | 1 | 0.27 | 0.00 | 0 | 0 | |||||
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 24.1 | 3 | 30 | 1.25 | 0.10 | 0 | 0 | |||||
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 44.1 | 12 | 63 | 1.43 | 0.19 | 0 | 0 | |||||
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 22.0 | 8 | 25 | 1.13 | 0.32 | 0 | 0 | |||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 7.4 | 1 | 6 | 0.81 | 0.17 | 0 | 0 | Matches | ||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 0.0 | 0 | 0 | 0 | Matches | |||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 2.5 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 0.1 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 22.5 | 6 | 15 | 0.67 | 0.40 | 0 | 0 | Matches | ||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 2.0 | 2 | 0 | 0 | Matches | |||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 15.6 | 4 | 0 | 11 | 0.00 | 0.71 | 0.36 | 0 | 0 | Matches | ||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 2.0 | 1 | 2 | 1 | 50.0 | 1.01 | 0.51 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 1.1 | 1 | 0 | 0 | Matches | |||||||
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 31.8 | 5 | 52 | 17 | 32.7 | 1.64 | 0.54 | 0.10 | 0.29 | 0 | 0 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 3.6 | 1 | 6 | 1 | 16.7 | 1.67 | 0.28 | 0.17 | 1.00 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 29.4 | 5 | 65 | 26 | 40.0 | 2.21 | 0.88 | 0.08 | 0.19 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 1.0 | 0 | 1 | 0 | 0.0 | 0.99 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 15.1 | 6 | 25 | 9 | 36.0 | 1.65 | 0.59 | 0.24 | 0.67 | 0 | 0 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 5.5 | 1 | 4 | 2 | 50.0 | 0.73 | 0.37 | 0.25 | 0.50 | 0 | 0 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 2.0 | 0 | 8 | 2 | 25.0 | 4.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 0.7 | 0 | 1 | 0 | 0.0 | 1.38 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 15.1 | 3 | 20 | 9 | 45.0 | 1.33 | 0.60 | 0.15 | 0.33 | 0 | 0 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 1.0 | 1 | 3 | 1 | 33.3 | 3.00 | 1.00 | 0.33 | 1.00 | 0 | 0 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 0.8 | 0 | 1 | 0 | 0.0 | 1.20 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 32.8 | 9 | 45 | 14 | 31.1 | 1.37 | 0.43 | 0.20 | 0.64 | 0 | 0 | Matches |
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 10.5 | 0 | 21 | 5 | 23.8 | 2.00 | 0.48 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 35.8 | 7 | 68 | 18 | 26.5 | 1.90 | 0.50 | 0.10 | 0.39 | 0 | 0 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | 0.6 | 1 | 1 | 1 | 100.0 | 1.73 | 1.73 | 1.00 | 1.00 | 0 | 0 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2024 | 32 | Charlotte | us USA | 1. MLS | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 0.9 | 1 | 2 | 1 | 50.0 | 2.28 | 1.14 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | 1.0 | 0 | 5 | 2 | 40.0 | 5.00 | 2.00 | 0.00 | 0.00 | 0 | 1 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 9.2 | 0 | 12 | 1 | 8.3 | 1.30 | 0.11 | 0.00 | 0.00 | 0 | 0 | Matches |
| 16 Seasons | 9 Clubs | 5 Leagues | 346.7 | 78 | 344 | 261 | 35.2 | 1.60 | 0.77 | 0.13 | 0.29 | 0 | 1 | |||
| Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Bristol City (5 Seasons) | 3 Leagues | 115.2 | 26 | 174 | 74 | 42.5 | 1.52 | 0.65 | 0.14 | 0.34 | 0 | 0 | ||||
| Nottingham Forest (4 Seasons) | 3 Leagues | 35.0 | 10 | 2 | 32 | 50.0 | 0.92 | 1.01 | 0.50 | 0.31 | 0 | 0 | ||||
| Swansea City (3 Seasons) | 3 Leagues | 80.1 | 17 | 135 | 38 | 28.1 | 1.69 | 0.47 | 0.13 | 0.45 | 0 | 0 | ||||
| Walsall (3 Seasons) | 1 League | 71.9 | 15 | 94 | 1.31 | 0.16 | 0 | 0 | ||||||||
| Huddersfield Town (1 Season) | 2 Leagues | 24.5 | 8 | 15 | 0.67 | 0.40 | 0 | 0 | ||||||||
| Plymouth Argyle (1 Season) | 3 Leagues | 11.1 | 0 | 17 | 3 | 17.6 | 1.66 | 0.29 | 0.00 | 0.00 | 0 | 1 | ||||
| Derby County (1 Season) | 2 Leagues | 7.5 | 1 | 12 | 4 | 33.3 | 1.61 | 0.54 | 0.08 | 0.25 | 0 | 0 | ||||
| Coventry City (1 Season) | 1 League | 0.9 | 1 | 2 | 1 | 50.0 | 2.28 | 1.14 | 0.50 | 1.00 | 0 | 0 | ||||
| Charlotte (1 Season) | 1 League | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | |||||
| Championship (12 Seasons) | 244.7 | 56 | 302 | 158 | 37.1 | 1.57 | 0.65 | 0.14 | 0.35 | 0 | 0 | |||||
| EFL Cup (8 Seasons) | 13.4 | 4 | 25 | 8 | 32.0 | 2.46 | 0.79 | 0.16 | 0.50 | 0 | 1 | |||||
| FA Cup (8 Seasons) | 7.0 | 3 | 3 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | ||||||
| League One (4 Seasons) | 81.1 | 15 | 12 | 95 | 8.3 | 1.30 | 1.17 | 0.00 | 0.16 | 0 | 0 | |||||
| MLS (1 Season) | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | ||||||
| Standard | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2010-2011 | 18 | Walsall | 1 League | 3.7 | 0 | 1 | 0.27 | 0.00 | 0 | 0 | |||||
| 2011-2012 | 19 | Walsall | 1 League | 24.1 | 3 | 30 | 1.25 | 0.10 | 0 | 0 | |||||
| 2012-2013 | 20 | Walsall | 1 League | 44.1 | 12 | 63 | 1.43 | 0.19 | 0 | 0 | |||||
| 2013-2014 | 21 | Nottingham Forest | 1 League | 22.0 | 8 | 25 | 1.13 | 0.32 | 0 | 0 | |||||
| 2014-2015 | 22 | Nottingham Forest | 3 Leagues | 9.9 | 1 | 6 | 0.81 | 0.17 | 0 | 0 | |||||
| 2015-2016 | 23 | Huddersfield Town | 2 Leagues | 24.5 | 8 | 15 | 0.67 | 0.40 | 0 | 0 | |||||
| 2015-2016 | 23 | Nottingham Forest | 2 Leagues | 0.9 | 0 | 0 | 0.00 | 0 | 0 | ||||||
| 2016-2017 | 24 | Nottingham Forest | 2 Leagues | 2.2 | 1 | 2 | 1 | 50.0 | 0.92 | 0.46 | 0.50 | 1.00 | 0 | 0 | |
| 2016-2017 | 24 | Bristol City | 2 Leagues | 16.7 | 5 | 0 | 11 | 0.00 | 0.71 | 0.36 | 0 | 0 | |||
| 2017-2018 | 25 | Bristol City | 2 Leagues | 35.3 | 6 | 58 | 18 | 31.0 | 1.64 | 0.51 | 0.10 | 0.33 | 0 | 0 | |
| 2018-2019 | 26 | Bristol City | 2 Leagues | 30.4 | 5 | 66 | 26 | 39.4 | 2.17 | 0.86 | 0.08 | 0.19 | 0 | 0 | |
| 2019-2020 | 27 | Derby County | 2 Leagues | 7.5 | 1 | 12 | 4 | 33.3 | 1.61 | 0.54 | 0.08 | 0.25 | 0 | 0 | |
| 2019-2020 | 27 | Bristol City | 2 Leagues | 15.9 | 6 | 26 | 9 | 34.6 | 1.64 | 0.57 | 0.23 | 0.67 | 0 | 0 | |
| 2020-2021 | 28 | Bristol City | 3 Leagues | 16.9 | 4 | 24 | 10 | 41.7 | 1.42 | 0.59 | 0.17 | 0.40 | 0 | 0 | |
| 2021-2022 | 29 | Swansea City | 1 League | 32.8 | 9 | 45 | 14 | 31.1 | 1.37 | 0.43 | 0.20 | 0.64 | 0 | 0 | |
| 2022-2023 | 30 | Swansea City | 1 League | 10.5 | 0 | 21 | 5 | 23.8 | 2.00 | 0.48 | 0.00 | 0.00 | 0 | 0 | |
| 2023-2024 | 31 | Swansea City | 3 Leagues | 36.8 | 8 | 69 | 19 | 27.5 | 1.87 | 0.52 | 0.12 | 0.42 | 0 | 0 | |
| 2024 | 32 | Charlotte | 1 League | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | ||
| 2024-2025 | 32 | Coventry City | 1 League | 0.9 | 1 | 2 | 1 | 50.0 | 2.28 | 1.14 | 0.50 | 1.00 | 0 | 0 | |
| 2025-2026 | 33 | Plymouth Argyle | 3 Leagues | 11.1 | 0 | 17 | 3 | 17.6 | 1.66 | 0.29 | 0.00 | 0.00 | 0 | 1 | |
| 16 Seasons | 9 Clubs | 5 Leagues | 346.7 | 78 | 344 | 261 | 35.2 | 1.60 | 0.77 | 0.13 | 0.29 | 0 | 1 | ||
| Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Bristol City (5 Seasons) | 3 Leagues | 115.2 | 26 | 174 | 74 | 42.5 | 1.52 | 0.65 | 0.14 | 0.34 | 0 | 0 | |||
| Nottingham Forest (4 Seasons) | 3 Leagues | 35.0 | 10 | 2 | 32 | 50.0 | 0.92 | 1.01 | 0.50 | 0.31 | 0 | 0 | |||
| Swansea City (3 Seasons) | 3 Leagues | 80.1 | 17 | 135 | 38 | 28.1 | 1.69 | 0.47 | 0.13 | 0.45 | 0 | 0 | |||
| Walsall (3 Seasons) | 1 League | 71.9 | 15 | 94 | 1.31 | 0.16 | 0 | 0 | |||||||
| Huddersfield Town (1 Season) | 2 Leagues | 24.5 | 8 | 15 | 0.67 | 0.40 | 0 | 0 | |||||||
| Plymouth Argyle (1 Season) | 3 Leagues | 11.1 | 0 | 17 | 3 | 17.6 | 1.66 | 0.29 | 0.00 | 0.00 | 0 | 1 | |||
| Derby County (1 Season) | 2 Leagues | 7.5 | 1 | 12 | 4 | 33.3 | 1.61 | 0.54 | 0.08 | 0.25 | 0 | 0 | |||
| Coventry City (1 Season) | 1 League | 0.9 | 1 | 2 | 1 | 50.0 | 2.28 | 1.14 | 0.50 | 1.00 | 0 | 0 | |||
| Charlotte (1 Season) | 1 League | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | ||||
| Championship (12 Seasons) | 244.7 | 56 | 302 | 158 | 37.1 | 1.57 | 0.65 | 0.14 | 0.35 | 0 | 0 | ||||
| EFL Cup (8 Seasons) | 13.4 | 4 | 25 | 8 | 32.0 | 2.46 | 0.79 | 0.16 | 0.50 | 0 | 1 | ||||
| FA Cup (8 Seasons) | 7.0 | 3 | 3 | 0 | 0.0 | 1.00 | 0.00 | 0.00 | 0 | 0 | |||||
| League One (4 Seasons) | 81.1 | 15 | 12 | 95 | 8.3 | 1.30 | 1.17 | 0.00 | 0.16 | 0 | 0 | ||||
| MLS (1 Season) | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | |||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 20th | 3.7 | 0 | 1 | 0.27 | 0.00 | 0 | 0 | |||||
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 19th | 24.1 | 3 | 30 | 1.25 | 0.10 | 0 | 0 | |||||
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 9th | 44.1 | 12 | 63 | 1.43 | 0.19 | 0 | 0 | |||||
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 11th | 22.0 | 8 | 25 | 1.13 | 0.32 | 0 | 0 | |||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 14th | 7.4 | 1 | 6 | 0.81 | 0.17 | 0 | 0 | Matches | ||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 19th | 22.5 | 6 | 15 | 0.67 | 0.40 | 0 | 0 | Matches | ||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 16th | 0.1 | 0 | 0 | 0.00 | 0 | 0 | Matches | |||||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 21st | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 17th | 15.6 | 4 | 0 | 11 | 0.00 | 0.71 | 0.36 | 0 | 0 | Matches | ||
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 11th | 31.8 | 5 | 52 | 17 | 32.7 | 1.64 | 0.54 | 0.10 | 0.29 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 8th | 29.4 | 5 | 65 | 26 | 40.0 | 2.21 | 0.88 | 0.08 | 0.19 | 0 | 0 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 10th | 5.5 | 1 | 4 | 2 | 50.0 | 0.73 | 0.37 | 0.25 | 0.50 | 0 | 0 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 12th | 15.1 | 6 | 25 | 9 | 36.0 | 1.65 | 0.59 | 0.24 | 0.67 | 0 | 0 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 19th | 15.1 | 3 | 20 | 9 | 45.0 | 1.33 | 0.60 | 0.15 | 0.33 | 0 | 0 | Matches |
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 15th | 32.8 | 9 | 45 | 14 | 31.1 | 1.37 | 0.43 | 0.20 | 0.64 | 0 | 0 | Matches |
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 10th | 10.5 | 0 | 21 | 5 | 23.8 | 2.00 | 0.48 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 14th | 35.8 | 7 | 68 | 18 | 26.5 | 1.90 | 0.50 | 0.10 | 0.39 | 0 | 0 | Matches |
| 2024 | 32 | Charlotte | us USA | 1. MLS | 11th | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 5th | 0.9 | 1 | 2 | 1 | 50.0 | 2.28 | 1.14 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 8th | 9.2 | 0 | 12 | 1 | 8.3 | 1.30 | 0.11 | 0.00 | 0.00 | 0 | 0 | Matches |
| 16 Seasons | 9 Clubs | 3 Leagues | 326.4 | 71 | 316 | 253 | 35.8 | 1.56 | 0.78 | 0.13 | 0.28 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Bristol City (5 Seasons) | 1 League | 107.0 | 23 | 162 | 72 | 44.4 | 1.51 | 0.67 | 0.14 | 0.32 | 0 | 0 | |||||
| Nottingham Forest (4 Seasons) | 1 League | 29.8 | 9 | 0 | 31 | 0.00 | 1.04 | 0.29 | 0 | 0 | |||||||
| Swansea City (3 Seasons) | 1 League | 79.1 | 16 | 134 | 37 | 27.6 | 1.69 | 0.47 | 0.12 | 0.43 | 0 | 0 | |||||
| Walsall (3 Seasons) | 1 League | 71.9 | 15 | 94 | 1.31 | 0.16 | 0 | 0 | |||||||||
| Huddersfield Town (1 Season) | 1 League | 22.5 | 6 | 15 | 0.67 | 0.40 | 0 | 0 | |||||||||
| Plymouth Argyle (1 Season) | 1 League | 9.2 | 0 | 12 | 1 | 8.3 | 1.30 | 0.11 | 0.00 | 0.00 | 0 | 0 | |||||
| Derby County (1 Season) | 1 League | 5.5 | 1 | 4 | 2 | 50.0 | 0.73 | 0.37 | 0.25 | 0.50 | 0 | 0 | |||||
| Coventry City (1 Season) | 1 League | 0.9 | 1 | 2 | 1 | 50.0 | 2.28 | 1.14 | 0.50 | 1.00 | 0 | 0 | |||||
| Charlotte (1 Season) | 1 League | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | ||||||
| Championship (12 Seasons) | 244.7 | 56 | 302 | 158 | 37.1 | 1.57 | 0.65 | 0.14 | 0.35 | 0 | 0 | ||||||
| League One (4 Seasons) | 81.1 | 15 | 12 | 95 | 8.3 | 1.30 | 1.17 | 0.00 | 0.16 | 0 | 0 | ||||||
| MLS (1 Season) | 0.5 | 0 | 2 | 0 | 0.0 | 3.67 | 0.00 | 0.00 | 0 | 0 | |||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 33rd | 0.0 | 0 | 0 | 0 | Matches | |||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 17th | 2.5 | 0 | 0 | 0 | Matches | |||||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 33rd | 2.0 | 2 | 0 | 0 | Matches | |||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 57th | 0.8 | 0 | 0 | 0 | Matches | |||||||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 17th | 2.0 | 1 | 2 | 1 | 50.0 | 1.01 | 0.51 | 0.50 | 1.00 | 0 | 0 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 17th | 1.1 | 1 | 0 | 0 | Matches | |||||||
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 3rd | 3.6 | 1 | 6 | 1 | 16.7 | 1.67 | 0.28 | 0.17 | 1.00 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 9th | 1.0 | 0 | 1 | 0 | 0.0 | 0.99 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 33rd | 2.0 | 0 | 8 | 2 | 25.0 | 4.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 33rd | 0.7 | 0 | 1 | 0 | 0.0 | 1.38 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 17th | 1.0 | 1 | 3 | 1 | 33.3 | 3.00 | 1.00 | 0.33 | 1.00 | 0 | 0 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 9th | 0.8 | 0 | 1 | 0 | 0.0 | 1.20 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | Rd2 | 0.6 | 1 | 1 | 1 | 100.0 | 1.73 | 1.73 | 1.00 | 1.00 | 0 | 0 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | Rd2 | 1.0 | 0 | 5 | 2 | 40.0 | 5.00 | 2.00 | 0.00 | 0.00 | 0 | 1 | Matches |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | Matches | ||||||||
| 9 Seasons | 6 Clubs | 2 Leagues | 20.4 | 7 | 28 | 8 | 28.6 | 2.13 | 0.61 | 0.14 | 0.50 | 0 | 1 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Bristol City (5 Seasons) | 2 Leagues | 8.3 | 3 | 12 | 2 | 16.7 | 1.68 | 0.28 | 0.17 | 1.00 | 0 | 0 | |||||
| Nottingham Forest (3 Seasons) | 2 Leagues | 5.3 | 1 | 2 | 1 | 50.0 | 1.01 | 0.51 | 0.50 | 1.00 | 0 | 0 | |||||
| Swansea City (1 Season) | 2 Leagues | 1.0 | 1 | 1 | 1 | 100.0 | 1.00 | 1.00 | 1.00 | 1.00 | 0 | 0 | |||||
| Derby County (1 Season) | 1 League | 2.0 | 0 | 8 | 2 | 25.0 | 4.00 | 1.00 | 0.00 | 0.00 | 0 | 0 | |||||
| Plymouth Argyle (1 Season) | 2 Leagues | 1.8 | 0 | 5 | 2 | 40.0 | 5.00 | 2.00 | 0.00 | 0.00 | 0 | 1 | |||||
| Huddersfield Town (1 Season) | 1 League | 2.0 | 2 | 0 | 0 | ||||||||||||
| EFL Cup (8 Seasons) | 13.4 | 4 | 25 | 8 | 32.0 | 2.46 | 0.79 | 0.16 | 0.50 | 0 | 1 | ||||||
| FA Cup (8 Seasons) | 7.0 | 3 | 3 | 0 | 0.0 | 1.00 | 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 | |||||||
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 14 | 337 | 24 | 8.1 | 3.7 | 2 | 12 | |||||||||||
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 34 | 2,165 | 64 | 52.3 | 24.1 | 24 | 10 | |||||||||||
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 46 | 3,969 | 86 | 95.9 | 44.1 | 46 | 0 | |||||||||||
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 32 | 1,984 | 62 | 47.9 | 22.0 | 22 | 10 | |||||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 21 | 668 | 32 | 16.1 | 7.4 | 4 | 2 | 17 | 20 | 1.23 | 12 | 9 | +3 | +0.40 | +0.43 | Matches | ||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 1 | 2 | 2 | 2.2 | 0.0 | 0 | 0 | 1 | 1 | 0 | 0.00 | 0 | 0 | 0 | 0.00 | +1.02 | Matches | |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 3 | 224 | 75 | 83.0 | 2.5 | 3 | 75 | 1 | 0 | 0 | 2.00 | 3 | 3 | 0 | 0.00 | -1.96 | Matches | |
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 1 | 10 | 10 | 0.2 | 0.1 | 0 | 0 | 1 | 2 | 0.00 | 0 | 0 | 0 | 0.00 | +0.09 | Matches | ||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 34 | 2,027 | 60 | 49.0 | 22.5 | 22 | 10 | 12 | 2 | 1.09 | 30 | 38 | -8 | -0.36 | -0.23 | Matches | ||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 0.50 | 4 | 7 | -3 | -1.50 | Matches | ||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 1 | 70 | 70 | 77.8 | 0.8 | 1 | 70 | 0 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.29 | -1.29 | Matches | |
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 22 | 1,404 | 64 | 33.9 | 15.6 | 16 | 6 | 6 | 13 | 1.41 | 22 | 15 | +7 | +0.45 | +0.88 | Matches | ||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 1 | 17 | 17 | 0.4 | 0.2 | 0 | 0 | 1 | 0 | 0.00 | 0 | 1 | -1 | -5.29 | -5.10 | Matches | ||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 2 | 178 | 89 | 65.9 | 2.0 | 2 | 89 | 1 | 0 | 0 | 3.00 | 4 | 2 | +2 | +1.01 | +4.92 | Matches | |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 2 | 101 | 51 | 37.4 | 1.1 | 1 | 91 | 1 | 1 | 10 | 1 | 2.00 | 1 | 0 | +1 | +0.89 | +1.96 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 41 | 2,858 | 70 | 69.0 | 31.8 | 34 | 14 | 7 | 1 | 1.46 | 47 | 37 | +10 | +0.31 | +0.39 | Matches | ||
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 5 | 323 | 65 | 51.3 | 3.6 | 3 | 84 | 2 | 2 | 35 | 1 | 1.80 | 6 | 5 | +1 | +0.28 | -2.36 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 41 | 2,645 | 65 | 63.9 | 29.4 | 31 | 80 | 13 | 10 | 16 | 3 | 1.46 | 30 | 30 | 0 | 0.00 | -0.36 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 2 | 91 | 46 | 33.7 | 1.0 | 1 | 67 | 0 | 1 | 24 | 1 | 1.50 | 0 | 0 | 0 | 0.00 | -0.50 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 21 | 1,363 | 65 | 32.9 | 15.1 | 15 | 81 | 7 | 6 | 26 | 0 | 1.19 | 19 | 20 | -1 | -0.07 | +0.06 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 10 | 492 | 49 | 11.9 | 5.5 | 5 | 77 | 2 | 5 | 22 | 6 | 1.30 | 8 | 7 | +1 | +0.18 | +0.26 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 1 | 3 | -2 | -1.00 | Matches | ||
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 1 | 65 | 65 | 36.1 | 0.7 | 1 | 65 | 0 | 0 | 1 | 0.00 | 0 | 0 | 0 | 0.00 | +0.78 | Matches | |
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 20 | 1,356 | 68 | 32.8 | 15.1 | 15 | 83 | 8 | 5 | 21 | 0 | 1.35 | 17 | 19 | -2 | -0.13 | +0.51 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 1 | 90 | 90 | 33.3 | 1.0 | 1 | 90 | 1 | 0 | 1 | 3.00 | 2 | 0 | +2 | +2.00 | +1.50 | Matches | |
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 1 | 75 | 75 | 27.8 | 0.8 | 1 | 75 | 0 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.20 | -3.05 | Matches | |
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 38 | 2,952 | 78 | 71.3 | 32.8 | 33 | 85 | 22 | 5 | 29 | 0 | 1.39 | 44 | 51 | -7 | -0.21 | +0.01 | Matches |
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 23 | 946 | 41 | 22.9 | 10.5 | 9 | 64 | 0 | 14 | 27 | 2 | 1.26 | 15 | 13 | +2 | +0.19 | +0.13 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 44 | 3,222 | 73 | 77.8 | 35.8 | 40 | 78 | 13 | 4 | 26 | 2 | 1.27 | 44 | 50 | -6 | -0.17 | -0.17 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | 2 | 52 | 26 | 28.9 | 0.6 | 0 | 0 | 2 | 26 | 0 | 1.50 | 2 | 1 | +1 | +1.73 | +1.03 | Matches | |
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 2 | 38 | 19 | 21.1 | 0.4 | 0 | 0 | 2 | 19 | 0 | 1.50 | 1 | 0 | +1 | +2.37 | +4.90 | Matches | |
| 2024 | 32 | Charlotte | us USA | 1. MLS | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | Matches | |
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 8 | 79 | 10 | 1.9 | 0.9 | 0 | 0 | 8 | 10 | 6 | 2.00 | 2 | 2 | 0 | 0.00 | -0.13 | Matches | |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 3.00 | 3 | 2 | +1 | +1.00 | +1.00 | Matches | |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 1 | 75 | 75 | 83.3 | 0.8 | 1 | 75 | 0 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.20 | +4.80 | Matches | |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 22 | 830 | 38 | 20.0 | 9.2 | 7 | 72 | 2 | 15 | 22 | 10 | 1.36 | 10 | 12 | -2 | -0.22 | -0.60 | Matches |
| 16 Seasons | 9 Clubs | 5 Leagues | 506 | 31,207 | 62 | 36.6 | 346.7 | 345 | 80 | 110 | 161 | 21 | 73 | 1.35 | 329 | 332 | -3 | -0.01 | +0.03 | |||
| Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Bristol City (5 Seasons) | 3 Leagues | 157 | 10,371 | 66 | 45.9 | 115.2 | 119 | 81 | 52 | 38 | 21 | 22 | 1.41 | 144 | 127 | +17 | +0.15 | +0.29 | ||||
| Nottingham Forest (4 Seasons) | 3 Leagues | 62 | 3,153 | 51 | 18.2 | 35.0 | 32 | 79 | 4 | 30 | 1 | 22 | 1.26 | 20 | 17 | +3 | +0.23 | +0.37 | ||||
| Swansea City (3 Seasons) | 3 Leagues | 109 | 7,210 | 66 | 56.4 | 80.1 | 82 | 79 | 35 | 27 | 26 | 4 | 1.32 | 106 | 115 | -9 | -0.11 | -0.05 | ||||
| Walsall (3 Seasons) | 1 League | 94 | 6,471 | 69 | 52.1 | 71.9 | 72 | 22 | ||||||||||||||
| Huddersfield Town (1 Season) | 2 Leagues | 36 | 2,207 | 61 | 51.1 | 24.5 | 24 | 90 | 12 | 12 | 2 | 1.06 | 34 | 45 | -11 | -0.45 | -0.32 | |||||
| Plymouth Argyle (1 Season) | 3 Leagues | 24 | 995 | 41 | 22.6 | 11.1 | 9 | 74 | 3 | 15 | 22 | 10 | 1.37 | 13 | 15 | -2 | -0.18 | -0.52 | ||||
| Derby County (1 Season) | 2 Leagues | 12 | 672 | 56 | 15.6 | 7.5 | 7 | 80 | 4 | 5 | 22 | 6 | 1.33 | 9 | 10 | -1 | -0.13 | -0.06 | ||||
| Coventry City (1 Season) | 1 League | 8 | 79 | 10 | 1.9 | 0.9 | 0 | 0 | 8 | 10 | 6 | 2.00 | 2 | 2 | 0 | 0.00 | -0.13 | |||||
| Charlotte (1 Season) | 1 League | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | |||||
| Championship (12 Seasons) | 357 | 22,023 | 62 | 35.5 | 244.7 | 246 | 80 | 97 | 111 | 22 | 57 | 1.33 | 290 | 292 | -2 | -0.01 | +0.10 | |||||
| EFL Cup (8 Seasons) | 17 | 1,207 | 71 | 58.3 | 13.4 | 13 | 83 | 8 | 4 | 31 | 2 | 1.94 | 22 | 18 | +4 | +0.30 | -0.54 | |||||
| FA Cup (8 Seasons) | 12 | 627 | 52 | 41.0 | 7.0 | 7 | 79 | 3 | 5 | 15 | 3 | 0.92 | 6 | 9 | -3 | -0.43 | -0.03 | |||||
| League One (4 Seasons) | 116 | 7,301 | 63 | 44.1 | 81.1 | 79 | 72 | 2 | 37 | 22 | 10 | 1.36 | 10 | 12 | -2 | -0.22 | -0.60 | |||||
| MLS (1 Season) | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2010-2011 | 18 | Walsall | 1 League | 14 | 337 | 24 | 8.1 | 3.7 | 2 | 12 | |||||||||||
| 2011-2012 | 19 | Walsall | 1 League | 34 | 2,165 | 64 | 52.3 | 24.1 | 24 | 10 | |||||||||||
| 2012-2013 | 20 | Walsall | 1 League | 46 | 3,969 | 86 | 95.9 | 44.1 | 46 | 0 | |||||||||||
| 2013-2014 | 21 | Nottingham Forest | 1 League | 32 | 1,984 | 62 | 47.9 | 22.0 | 22 | 10 | |||||||||||
| 2014-2015 | 22 | Nottingham Forest | 3 Leagues | 25 | 894 | 36 | 19.9 | 9.9 | 7 | 75 | 3 | 18 | 1 | 20 | 1.27 | 15 | 12 | +3 | +0.30 | +0.33 | |
| 2015-2016 | 23 | Huddersfield Town | 2 Leagues | 36 | 2,207 | 61 | 51.1 | 24.5 | 24 | 90 | 12 | 12 | 2 | 1.06 | 34 | 45 | -11 | -0.45 | -0.32 | ||
| 2015-2016 | 23 | Nottingham Forest | 2 Leagues | 2 | 80 | 40 | 1.9 | 0.9 | 1 | 70 | 0 | 1 | 2 | 0.00 | 1 | 2 | -1 | -1.13 | -1.04 | ||
| 2016-2017 | 24 | Nottingham Forest | 2 Leagues | 3 | 195 | 65 | 4.4 | 2.2 | 2 | 89 | 1 | 1 | 0 | 2.00 | 4 | 3 | +1 | +0.46 | +0.74 | ||
| 2016-2017 | 24 | Bristol City | 2 Leagues | 24 | 1,505 | 63 | 34.1 | 16.7 | 17 | 91 | 7 | 7 | 10 | 14 | 1.46 | 23 | 15 | +8 | +0.48 | +0.94 | |
| 2017-2018 | 25 | Bristol City | 2 Leagues | 46 | 3,181 | 69 | 66.7 | 35.3 | 37 | 84 | 16 | 9 | 35 | 2 | 1.50 | 53 | 42 | +11 | +0.31 | -0.14 | |
| 2018-2019 | 26 | Bristol City | 2 Leagues | 43 | 2,736 | 64 | 62.0 | 30.4 | 32 | 80 | 13 | 11 | 17 | 4 | 1.46 | 30 | 30 | 0 | 0.00 | -0.38 | |
| 2019-2020 | 27 | Derby County | 2 Leagues | 12 | 672 | 56 | 15.6 | 7.5 | 7 | 80 | 4 | 5 | 22 | 6 | 1.33 | 9 | 10 | -1 | -0.13 | -0.06 | |
| 2019-2020 | 27 | Bristol City | 2 Leagues | 22 | 1,428 | 65 | 33.1 | 15.9 | 16 | 80 | 7 | 6 | 26 | 1 | 1.14 | 19 | 20 | -1 | -0.06 | +0.09 | |
| 2020-2021 | 28 | Bristol City | 3 Leagues | 22 | 1,521 | 69 | 32.5 | 16.9 | 17 | 83 | 9 | 5 | 21 | 1 | 1.36 | 19 | 20 | -1 | -0.06 | +0.37 | |
| 2021-2022 | 29 | Swansea City | 1 League | 38 | 2,952 | 78 | 71.3 | 32.8 | 33 | 85 | 22 | 5 | 29 | 0 | 1.39 | 44 | 51 | -7 | -0.21 | +0.01 | |
| 2022-2023 | 30 | Swansea City | 1 League | 23 | 946 | 41 | 22.9 | 10.5 | 9 | 64 | 0 | 14 | 27 | 2 | 1.26 | 15 | 13 | +2 | +0.19 | +0.13 | |
| 2023-2024 | 31 | Swansea City | 3 Leagues | 48 | 3,312 | 69 | 73.6 | 36.8 | 40 | 78 | 13 | 8 | 24 | 2 | 1.29 | 47 | 51 | -4 | -0.11 | +0.12 | |
| 2024 | 32 | Charlotte | 1 League | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | ||
| 2024-2025 | 32 | Coventry City | 1 League | 8 | 79 | 10 | 1.9 | 0.9 | 0 | 0 | 8 | 10 | 6 | 2.00 | 2 | 2 | 0 | 0.00 | -0.13 | ||
| 2025-2026 | 33 | Plymouth Argyle | 3 Leagues | 24 | 995 | 41 | 22.6 | 11.1 | 9 | 74 | 3 | 15 | 22 | 10 | 1.37 | 13 | 15 | -2 | -0.18 | -0.52 | |
| 16 Seasons | 9 Clubs | 5 Leagues | 506 | 31,207 | 62 | 36.6 | 346.7 | 345 | 80 | 110 | 161 | 21 | 73 | 1.35 | 329 | 332 | -3 | -0.01 | +0.03 | ||
| Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Bristol City (5 Seasons) | 3 Leagues | 157 | 10,371 | 66 | 45.9 | 115.2 | 119 | 81 | 52 | 38 | 21 | 22 | 1.41 | 144 | 127 | +17 | +0.15 | +0.29 | |||
| Nottingham Forest (4 Seasons) | 3 Leagues | 62 | 3,153 | 51 | 18.2 | 35.0 | 32 | 79 | 4 | 30 | 1 | 22 | 1.26 | 20 | 17 | +3 | +0.23 | +0.37 | |||
| Swansea City (3 Seasons) | 3 Leagues | 109 | 7,210 | 66 | 56.4 | 80.1 | 82 | 79 | 35 | 27 | 26 | 4 | 1.32 | 106 | 115 | -9 | -0.11 | -0.05 | |||
| Walsall (3 Seasons) | 1 League | 94 | 6,471 | 69 | 52.1 | 71.9 | 72 | 22 | |||||||||||||
| Huddersfield Town (1 Season) | 2 Leagues | 36 | 2,207 | 61 | 51.1 | 24.5 | 24 | 90 | 12 | 12 | 2 | 1.06 | 34 | 45 | -11 | -0.45 | -0.32 | ||||
| Plymouth Argyle (1 Season) | 3 Leagues | 24 | 995 | 41 | 22.6 | 11.1 | 9 | 74 | 3 | 15 | 22 | 10 | 1.37 | 13 | 15 | -2 | -0.18 | -0.52 | |||
| Derby County (1 Season) | 2 Leagues | 12 | 672 | 56 | 15.6 | 7.5 | 7 | 80 | 4 | 5 | 22 | 6 | 1.33 | 9 | 10 | -1 | -0.13 | -0.06 | |||
| Coventry City (1 Season) | 1 League | 8 | 79 | 10 | 1.9 | 0.9 | 0 | 0 | 8 | 10 | 6 | 2.00 | 2 | 2 | 0 | 0.00 | -0.13 | ||||
| Charlotte (1 Season) | 1 League | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | ||||
| Championship (12 Seasons) | 357 | 22,023 | 62 | 35.5 | 244.7 | 246 | 80 | 97 | 111 | 22 | 57 | 1.33 | 290 | 292 | -2 | -0.01 | +0.10 | ||||
| EFL Cup (8 Seasons) | 17 | 1,207 | 71 | 58.3 | 13.4 | 13 | 83 | 8 | 4 | 31 | 2 | 1.94 | 22 | 18 | +4 | +0.30 | -0.54 | ||||
| FA Cup (8 Seasons) | 12 | 627 | 52 | 41.0 | 7.0 | 7 | 79 | 3 | 5 | 15 | 3 | 0.92 | 6 | 9 | -3 | -0.43 | -0.03 | ||||
| League One (4 Seasons) | 116 | 7,301 | 63 | 44.1 | 81.1 | 79 | 72 | 2 | 37 | 22 | 10 | 1.36 | 10 | 12 | -2 | -0.22 | -0.60 | ||||
| MLS (1 Season) | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | |||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 20th | 14 | 337 | 24 | 8.1 | 3.7 | 2 | 12 | |||||||||||
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 19th | 34 | 2,165 | 64 | 52.3 | 24.1 | 24 | 10 | |||||||||||
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 9th | 46 | 3,969 | 86 | 95.9 | 44.1 | 46 | 0 | |||||||||||
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 11th | 32 | 1,984 | 62 | 47.9 | 22.0 | 22 | 10 | |||||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 14th | 21 | 668 | 32 | 16.1 | 7.4 | 4 | 2 | 17 | 20 | 1.23 | 12 | 9 | +3 | +0.40 | +0.43 | Matches | ||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 19th | 34 | 2,027 | 60 | 49.0 | 22.5 | 22 | 10 | 12 | 2 | 1.09 | 30 | 38 | -8 | -0.36 | -0.23 | Matches | ||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 16th | 1 | 10 | 10 | 0.2 | 0.1 | 0 | 0 | 1 | 2 | 0.00 | 0 | 0 | 0 | 0.00 | +0.09 | Matches | ||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 21st | 1 | 17 | 17 | 0.4 | 0.2 | 0 | 0 | 1 | 0 | 0.00 | 0 | 1 | -1 | -5.29 | -5.10 | Matches | ||
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 17th | 22 | 1,404 | 64 | 33.9 | 15.6 | 16 | 6 | 6 | 13 | 1.41 | 22 | 15 | +7 | +0.45 | +0.88 | Matches | ||
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 11th | 41 | 2,858 | 70 | 69.0 | 31.8 | 34 | 14 | 7 | 1 | 1.46 | 47 | 37 | +10 | +0.31 | +0.39 | Matches | ||
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 8th | 41 | 2,645 | 65 | 63.9 | 29.4 | 31 | 80 | 13 | 10 | 16 | 3 | 1.46 | 30 | 30 | 0 | 0.00 | -0.36 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 10th | 10 | 492 | 49 | 11.9 | 5.5 | 5 | 77 | 2 | 5 | 22 | 6 | 1.30 | 8 | 7 | +1 | +0.18 | +0.26 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 12th | 21 | 1,363 | 65 | 32.9 | 15.1 | 15 | 81 | 7 | 6 | 26 | 0 | 1.19 | 19 | 20 | -1 | -0.07 | +0.06 | Matches |
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 19th | 20 | 1,356 | 68 | 32.8 | 15.1 | 15 | 83 | 8 | 5 | 21 | 0 | 1.35 | 17 | 19 | -2 | -0.13 | +0.51 | Matches |
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 15th | 38 | 2,952 | 78 | 71.3 | 32.8 | 33 | 85 | 22 | 5 | 29 | 0 | 1.39 | 44 | 51 | -7 | -0.21 | +0.01 | Matches |
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 10th | 23 | 946 | 41 | 22.9 | 10.5 | 9 | 64 | 0 | 14 | 27 | 2 | 1.26 | 15 | 13 | +2 | +0.19 | +0.13 | Matches |
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 14th | 44 | 3,222 | 73 | 77.8 | 35.8 | 40 | 78 | 13 | 4 | 26 | 2 | 1.27 | 44 | 50 | -6 | -0.17 | -0.17 | Matches |
| 2024 | 32 | Charlotte | us USA | 1. MLS | 11th | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | Matches | |
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 5th | 8 | 79 | 10 | 1.9 | 0.9 | 0 | 0 | 8 | 10 | 6 | 2.00 | 2 | 2 | 0 | 0.00 | -0.13 | Matches | |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 8th | 22 | 830 | 38 | 20.0 | 9.2 | 7 | 72 | 2 | 15 | 22 | 10 | 1.36 | 10 | 12 | -2 | -0.22 | -0.60 | Matches |
| 16 Seasons | 9 Clubs | 3 Leagues | 477 | 29,373 | 62 | 35.9 | 326.4 | 325 | 80 | 99 | 152 | 21 | 68 | 1.34 | 301 | 305 | -4 | -0.02 | +0.03 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Bristol City (5 Seasons) | 1 League | 145 | 9,626 | 66 | 46.5 | 107.0 | 111 | 81 | 48 | 34 | 20 | 17 | 1.40 | 135 | 121 | +14 | +0.13 | +0.39 | |||||
| Nottingham Forest (4 Seasons) | 1 League | 55 | 2,679 | 49 | 16.2 | 29.8 | 26 | 2 | 29 | 22 | 1.12 | 12 | 10 | +2 | +0.26 | +0.37 | |||||||
| Swansea City (3 Seasons) | 1 League | 105 | 7,120 | 68 | 57.3 | 79.1 | 82 | 79 | 35 | 23 | 27 | 4 | 1.31 | 103 | 114 | -11 | -0.14 | -0.12 | |||||
| Walsall (3 Seasons) | 1 League | 94 | 6,471 | 69 | 52.1 | 71.9 | 72 | 22 | |||||||||||||||
| Huddersfield Town (1 Season) | 1 League | 34 | 2,027 | 60 | 49.0 | 22.5 | 22 | 10 | 12 | 2 | 1.09 | 30 | 38 | -8 | -0.36 | -0.23 | |||||||
| Plymouth Argyle (1 Season) | 1 League | 22 | 830 | 38 | 20.0 | 9.2 | 7 | 72 | 2 | 15 | 22 | 10 | 1.36 | 10 | 12 | -2 | -0.22 | -0.60 | |||||
| Derby County (1 Season) | 1 League | 10 | 492 | 49 | 11.9 | 5.5 | 5 | 77 | 2 | 5 | 22 | 6 | 1.30 | 8 | 7 | +1 | +0.18 | +0.26 | |||||
| Coventry City (1 Season) | 1 League | 8 | 79 | 10 | 1.9 | 0.9 | 0 | 0 | 8 | 10 | 6 | 2.00 | 2 | 2 | 0 | 0.00 | -0.13 | ||||||
| Charlotte (1 Season) | 1 League | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | ||||||
| Championship (12 Seasons) | 357 | 22,023 | 62 | 35.5 | 244.7 | 246 | 80 | 97 | 111 | 22 | 57 | 1.33 | 290 | 292 | -2 | -0.01 | +0.10 | ||||||
| League One (4 Seasons) | 116 | 7,301 | 63 | 44.1 | 81.1 | 79 | 72 | 2 | 37 | 22 | 10 | 1.36 | 10 | 12 | -2 | -0.22 | -0.60 | ||||||
| MLS (1 Season) | 4 | 49 | 12 | 1.6 | 0.5 | 0 | 0 | 4 | 12 | 1 | 1.75 | 1 | 1 | 0 | 0.00 | -0.27 | |||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 33rd | 1 | 2 | 2 | 2.2 | 0.0 | 0 | 0 | 1 | 1 | 0 | 0.00 | 0 | 0 | 0 | 0.00 | +1.02 | Matches | |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 17th | 3 | 224 | 75 | 83.0 | 2.5 | 3 | 75 | 1 | 0 | 0 | 2.00 | 3 | 3 | 0 | 0.00 | -1.96 | Matches | |
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 33rd | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 0.50 | 4 | 7 | -3 | -1.50 | Matches | ||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 57th | 1 | 70 | 70 | 77.8 | 0.8 | 1 | 70 | 0 | 0 | 0 | 0.00 | 1 | 2 | -1 | -1.29 | -1.29 | Matches | |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 17th | 2 | 178 | 89 | 65.9 | 2.0 | 2 | 89 | 1 | 0 | 0 | 3.00 | 4 | 2 | +2 | +1.01 | +4.92 | Matches | |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 17th | 2 | 101 | 51 | 37.4 | 1.1 | 1 | 91 | 1 | 1 | 10 | 1 | 2.00 | 1 | 0 | +1 | +0.89 | +1.96 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 3rd | 5 | 323 | 65 | 51.3 | 3.6 | 3 | 84 | 2 | 2 | 35 | 1 | 1.80 | 6 | 5 | +1 | +0.28 | -2.36 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 9th | 2 | 91 | 46 | 33.7 | 1.0 | 1 | 67 | 0 | 1 | 24 | 1 | 1.50 | 0 | 0 | 0 | 0.00 | -0.50 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 33rd | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 1 | 3 | -2 | -1.00 | Matches | ||
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 33rd | 1 | 65 | 65 | 36.1 | 0.7 | 1 | 65 | 0 | 0 | 1 | 0.00 | 0 | 0 | 0 | 0.00 | +0.78 | Matches | |
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 17th | 1 | 90 | 90 | 33.3 | 1.0 | 1 | 90 | 1 | 0 | 1 | 3.00 | 2 | 0 | +2 | +2.00 | +1.50 | Matches | |
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 9th | 1 | 75 | 75 | 27.8 | 0.8 | 1 | 75 | 0 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.20 | -3.05 | Matches | |
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | Rd2 | 2 | 52 | 26 | 28.9 | 0.6 | 0 | 0 | 2 | 26 | 0 | 1.50 | 2 | 1 | +1 | +1.73 | +1.03 | Matches | |
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 2 | 38 | 19 | 21.1 | 0.4 | 0 | 0 | 2 | 19 | 0 | 1.50 | 1 | 0 | +1 | +2.37 | +4.90 | Matches | ||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | Rd2 | 1 | 90 | 90 | 50.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 3.00 | 3 | 2 | +1 | +1.00 | +1.00 | Matches | |
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 1 | 75 | 75 | 83.3 | 0.8 | 1 | 75 | 0 | 0 | 0 | 0.00 | 0 | 1 | -1 | -1.20 | +4.80 | Matches | ||
| 9 Seasons | 6 Clubs | 2 Leagues | 29 | 1,834 | 63 | 50.9 | 20.4 | 20 | 82 | 11 | 9 | 22 | 5 | 1.52 | 28 | 27 | +1 | +0.05 | -0.15 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Bristol City (5 Seasons) | 2 Leagues | 12 | 745 | 62 | 39.4 | 8.3 | 8 | 80 | 4 | 4 | 26 | 5 | 1.58 | 9 | 6 | +3 | +0.36 | -0.58 | |||||
| Nottingham Forest (3 Seasons) | 2 Leagues | 7 | 474 | 68 | 65.8 | 5.3 | 6 | 79 | 2 | 1 | 1 | 0 | 1.71 | 8 | 7 | +1 | +0.19 | +1.65 | |||||
| Swansea City (1 Season) | 2 Leagues | 4 | 90 | 23 | 25.0 | 1.0 | 0 | 0 | 4 | 23 | 0 | 1.50 | 3 | 1 | +2 | +2.00 | +3.00 | ||||||
| Derby County (1 Season) | 1 League | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 1 | 3 | -2 | -1.00 | |||||||
| Plymouth Argyle (1 Season) | 2 Leagues | 2 | 165 | 83 | 61.1 | 1.8 | 2 | 83 | 1 | 0 | 0 | 1.50 | 3 | 3 | 0 | 0.00 | +0.86 | ||||||
| Huddersfield Town (1 Season) | 1 League | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 0.50 | 4 | 7 | -3 | -1.50 | |||||||
| EFL Cup (8 Seasons) | 17 | 1,207 | 71 | 58.3 | 13.4 | 13 | 83 | 8 | 4 | 31 | 2 | 1.94 | 22 | 18 | +4 | +0.30 | -0.54 | ||||||
| FA Cup (8 Seasons) | 12 | 627 | 52 | 41.0 | 7.0 | 7 | 79 | 3 | 5 | 15 | 3 | 0.92 | 6 | 9 | -3 | -0.43 | -0.03 | ||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 3.7 | 0 | 0 | 4 | ||||||||||
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 24.1 | 1 | 0 | 12 | ||||||||||
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 44.1 | 0 | 0 | 26 | ||||||||||
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 22.0 | 0 | 0 | 11 | ||||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 7.4 | 1 | 0 | 6 | Matches | |||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 0.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 2.5 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 0.1 | 0 | 0 | 0 | Matches | |||||||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 22.5 | 1 | 0 | 14 | Matches | |||||||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 2.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 0.8 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 15.6 | 2 | 0 | 0 | 15 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 2.0 | 0 | 0 | 0 | 1 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 1.1 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 31.8 | 2 | 0 | 0 | 20 | 41 | 13 | 135 | 23 | 35 | 0 | 0 | 0 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 3.6 | 1 | 0 | 0 | 3 | 2 | 1 | 5 | 4 | 5 | 0 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 29.4 | 1 | 0 | 0 | 26 | 31 | 7 | 101 | 33 | 28 | 0 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 8 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 15.1 | 2 | 0 | 0 | 9 | 21 | 2 | 67 | 17 | 21 | 0 | Matches | ||
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 5.5 | 0 | 0 | 0 | 5 | 12 | 3 | 12 | 5 | 5 | 0 | Matches | ||
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 2.0 | 1 | 0 | 0 | 2 | 1 | 0 | 11 | 2 | 2 | 0 | Matches | ||
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 0.7 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 15.1 | 3 | 0 | 0 | 17 | 22 | 0 | 50 | 19 | 7 | 0 | Matches | ||
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 2 | 0 | 0 | 5 | 4 | 3 | 0 | Matches | ||
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | 0 | 3 | 0 | 3 | 0 | 0 | 0 | Matches | ||
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 32.8 | 3 | 0 | 0 | 22 | 52 | 5 | 95 | 18 | 23 | 0 | Matches | ||
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 10.5 | 2 | 0 | 0 | 5 | 17 | 8 | 66 | 7 | 11 | 0 | Matches | ||
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 35.8 | 8 | 0 | 0 | 26 | 45 | 9 | 175 | 23 | 38 | 0 | Matches | ||
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | 0.6 | 0 | 0 | 0 | 0 | 0 | 1 | 6 | 0 | 0 | 0 | Matches | ||
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2024 | 32 | Charlotte | us USA | 1. MLS | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | Matches | ||
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 0.9 | 1 | 0 | 0 | 1 | 0 | 0 | 4 | 1 | 2 | 0 | Matches | ||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 8 | 1 | 1 | 0 | Matches | ||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 9.2 | 0 | 0 | 0 | 7 | 8 | 1 | 30 | 5 | 10 | 0 | Matches | ||
| 16 Seasons | 9 Clubs | 5 Leagues | 346.7 | 30 | 0 | 0 | 234 | 262 | 51 | 786 | 163 | 192 | 0 | 0 | 0 | |||
| Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Bristol City (5 Seasons) | 3 Leagues | 115.2 | 12 | 0 | 0 | 92 | 122 | 23 | 374 | 100 | 99 | 0 | 0 | 0 | ||||
| Nottingham Forest (4 Seasons) | 3 Leagues | 35.0 | 1 | 0 | 0 | 18 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | ||||
| Swansea City (3 Seasons) | 3 Leagues | 80.1 | 13 | 0 | 0 | 53 | 116 | 23 | 342 | 48 | 72 | 0 | ||||||
| Walsall (3 Seasons) | 1 League | 71.9 | 1 | 0 | 42 | |||||||||||||
| Huddersfield Town (1 Season) | 2 Leagues | 24.5 | 1 | 0 | 0 | 14 | 0 | |||||||||||
| Plymouth Argyle (1 Season) | 3 Leagues | 11.1 | 0 | 0 | 0 | 7 | 9 | 1 | 38 | 6 | 11 | 0 | ||||||
| Derby County (1 Season) | 2 Leagues | 7.5 | 1 | 0 | 0 | 7 | 13 | 3 | 23 | 7 | 7 | 0 | ||||||
| Coventry City (1 Season) | 1 League | 0.9 | 1 | 0 | 0 | 1 | 0 | 0 | 4 | 1 | 2 | 0 | ||||||
| Charlotte (1 Season) | 1 League | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | ||||||
| Championship (12 Seasons) | 244.7 | 26 | 0 | 0 | 177 | 241 | 47 | 705 | 146 | 170 | 0 | 0 | 0 | |||||
| EFL Cup (8 Seasons) | 13.4 | 2 | 0 | 0 | 8 | 6 | 3 | 38 | 11 | 11 | 0 | 0 | 0 | |||||
| FA Cup (8 Seasons) | 7.0 | 1 | 0 | 0 | 0 | 7 | 0 | 11 | 0 | 0 | 0 | 0 | 0 | |||||
| League One (4 Seasons) | 81.1 | 1 | 0 | 0 | 49 | 8 | 1 | 30 | 5 | 10 | 0 | |||||||
| MLS (1 Season) | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | |||||||
| Performance | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2010-2011 | 18 | Walsall | 1 League | 3.7 | 0 | 0 | 4 | ||||||||||
| 2011-2012 | 19 | Walsall | 1 League | 24.1 | 1 | 0 | 12 | ||||||||||
| 2012-2013 | 20 | Walsall | 1 League | 44.1 | 0 | 0 | 26 | ||||||||||
| 2013-2014 | 21 | Nottingham Forest | 1 League | 22.0 | 0 | 0 | 11 | ||||||||||
| 2014-2015 | 22 | Nottingham Forest | 3 Leagues | 9.9 | 1 | 0 | 0 | 6 | 0 | ||||||||
| 2015-2016 | 23 | Huddersfield Town | 2 Leagues | 24.5 | 1 | 0 | 0 | 14 | 0 | ||||||||
| 2015-2016 | 23 | Nottingham Forest | 2 Leagues | 0.9 | 0 | 0 | 0 | 0 | 0 | ||||||||
| 2016-2017 | 24 | Nottingham Forest | 2 Leagues | 2.2 | 0 | 0 | 0 | 1 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | |
| 2016-2017 | 24 | Bristol City | 2 Leagues | 16.7 | 3 | 0 | 0 | 15 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| 2017-2018 | 25 | Bristol City | 2 Leagues | 35.3 | 3 | 0 | 0 | 23 | 43 | 14 | 140 | 27 | 40 | 0 | 0 | 0 | |
| 2018-2019 | 26 | Bristol City | 2 Leagues | 30.4 | 1 | 0 | 0 | 26 | 32 | 7 | 109 | 33 | 28 | 0 | 0 | 0 | |
| 2019-2020 | 27 | Derby County | 2 Leagues | 7.5 | 1 | 0 | 0 | 7 | 13 | 3 | 23 | 7 | 7 | 0 | |||
| 2019-2020 | 27 | Bristol City | 2 Leagues | 15.9 | 2 | 0 | 0 | 9 | 22 | 2 | 67 | 17 | 21 | 0 | |||
| 2020-2021 | 28 | Bristol City | 3 Leagues | 16.9 | 3 | 0 | 0 | 19 | 25 | 0 | 58 | 23 | 10 | 0 | |||
| 2021-2022 | 29 | Swansea City | 1 League | 32.8 | 3 | 0 | 0 | 22 | 52 | 5 | 95 | 18 | 23 | 0 | |||
| 2022-2023 | 30 | Swansea City | 1 League | 10.5 | 2 | 0 | 0 | 5 | 17 | 8 | 66 | 7 | 11 | 0 | |||
| 2023-2024 | 31 | Swansea City | 3 Leagues | 36.8 | 8 | 0 | 0 | 26 | 47 | 10 | 181 | 23 | 38 | 0 | |||
| 2024 | 32 | Charlotte | 1 League | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | |||
| 2024-2025 | 32 | Coventry City | 1 League | 0.9 | 1 | 0 | 0 | 1 | 0 | 0 | 4 | 1 | 2 | 0 | |||
| 2025-2026 | 33 | Plymouth Argyle | 3 Leagues | 11.1 | 0 | 0 | 0 | 7 | 9 | 1 | 38 | 6 | 11 | 0 | |||
| 16 Seasons | 9 Clubs | 5 Leagues | 346.7 | 30 | 0 | 0 | 234 | 262 | 51 | 786 | 163 | 192 | 0 | 0 | 0 | ||
| Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Bristol City (5 Seasons) | 3 Leagues | 115.2 | 12 | 0 | 0 | 92 | 122 | 23 | 374 | 100 | 99 | 0 | 0 | 0 | |||
| Nottingham Forest (4 Seasons) | 3 Leagues | 35.0 | 1 | 0 | 0 | 18 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | |||
| Swansea City (3 Seasons) | 3 Leagues | 80.1 | 13 | 0 | 0 | 53 | 116 | 23 | 342 | 48 | 72 | 0 | |||||
| Walsall (3 Seasons) | 1 League | 71.9 | 1 | 0 | 42 | ||||||||||||
| Huddersfield Town (1 Season) | 2 Leagues | 24.5 | 1 | 0 | 0 | 14 | 0 | ||||||||||
| Plymouth Argyle (1 Season) | 3 Leagues | 11.1 | 0 | 0 | 0 | 7 | 9 | 1 | 38 | 6 | 11 | 0 | |||||
| Derby County (1 Season) | 2 Leagues | 7.5 | 1 | 0 | 0 | 7 | 13 | 3 | 23 | 7 | 7 | 0 | |||||
| Coventry City (1 Season) | 1 League | 0.9 | 1 | 0 | 0 | 1 | 0 | 0 | 4 | 1 | 2 | 0 | |||||
| Charlotte (1 Season) | 1 League | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | |||||
| Championship (12 Seasons) | 244.7 | 26 | 0 | 0 | 177 | 241 | 47 | 705 | 146 | 170 | 0 | 0 | 0 | ||||
| EFL Cup (8 Seasons) | 13.4 | 2 | 0 | 0 | 8 | 6 | 3 | 38 | 11 | 11 | 0 | 0 | 0 | ||||
| FA Cup (8 Seasons) | 7.0 | 1 | 0 | 0 | 0 | 7 | 0 | 11 | 0 | 0 | 0 | 0 | 0 | ||||
| League One (4 Seasons) | 81.1 | 1 | 0 | 0 | 49 | 8 | 1 | 30 | 5 | 10 | 0 | ||||||
| MLS (1 Season) | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | ||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2010-2011 | 18 | Walsall | eng ENG | 3. League One | 20th | 3.7 | 0 | 0 | 4 | ||||||||||
| 2011-2012 | 19 | Walsall | eng ENG | 3. League One | 19th | 24.1 | 1 | 0 | 12 | ||||||||||
| 2012-2013 | 20 | Walsall | eng ENG | 3. League One | 9th | 44.1 | 0 | 0 | 26 | ||||||||||
| 2013-2014 | 21 | Nottingham Forest | eng ENG | 2. Championship | 11th | 22.0 | 0 | 0 | 11 | ||||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | 2. Championship | 14th | 7.4 | 1 | 0 | 6 | Matches | |||||||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | 2. Championship | 19th | 22.5 | 1 | 0 | 14 | Matches | |||||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | 2. Championship | 16th | 0.1 | 0 | 0 | 0 | Matches | |||||||||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | 2. Championship | 21st | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | 2. Championship | 17th | 15.6 | 2 | 0 | 0 | 15 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 25 | Bristol City | eng ENG | 2. Championship | 11th | 31.8 | 2 | 0 | 0 | 20 | 41 | 13 | 135 | 23 | 35 | 0 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | 2. Championship | 8th | 29.4 | 1 | 0 | 0 | 26 | 31 | 7 | 101 | 33 | 28 | 0 | 0 | 0 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | 2. Championship | 10th | 5.5 | 0 | 0 | 0 | 5 | 12 | 3 | 12 | 5 | 5 | 0 | Matches | ||
| 2019-2020 | 27 | Bristol City | eng ENG | 2. Championship | 12th | 15.1 | 2 | 0 | 0 | 9 | 21 | 2 | 67 | 17 | 21 | 0 | Matches | ||
| 2020-2021 | 28 | Bristol City | eng ENG | 2. Championship | 19th | 15.1 | 3 | 0 | 0 | 17 | 22 | 0 | 50 | 19 | 7 | 0 | Matches | ||
| 2021-2022 | 29 | Swansea City | eng ENG | 2. Championship | 15th | 32.8 | 3 | 0 | 0 | 22 | 52 | 5 | 95 | 18 | 23 | 0 | Matches | ||
| 2022-2023 | 30 | Swansea City | eng ENG | 2. Championship | 10th | 10.5 | 2 | 0 | 0 | 5 | 17 | 8 | 66 | 7 | 11 | 0 | Matches | ||
| 2023-2024 | 31 | Swansea City | eng ENG | 2. Championship | 14th | 35.8 | 8 | 0 | 0 | 26 | 45 | 9 | 175 | 23 | 38 | 0 | Matches | ||
| 2024 | 32 | Charlotte | us USA | 1. MLS | 11th | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | Matches | ||
| 2024-2025 | 32 | Coventry City | eng ENG | 2. Championship | 5th | 0.9 | 1 | 0 | 0 | 1 | 0 | 0 | 4 | 1 | 2 | 0 | Matches | ||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | 3. League One | 8th | 9.2 | 0 | 0 | 0 | 7 | 8 | 1 | 30 | 5 | 10 | 0 | Matches | ||
| 16 Seasons | 9 Clubs | 3 Leagues | 326.4 | 27 | 0 | 0 | 226 | 249 | 48 | 737 | 152 | 181 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Bristol City (5 Seasons) | 1 League | 107.0 | 10 | 0 | 0 | 87 | 115 | 22 | 353 | 92 | 91 | 0 | 0 | 0 | |||||
| Nottingham Forest (4 Seasons) | 1 League | 29.8 | 1 | 0 | 0 | 17 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| Swansea City (3 Seasons) | 1 League | 79.1 | 13 | 0 | 0 | 53 | 114 | 22 | 336 | 48 | 72 | 0 | |||||||
| Walsall (3 Seasons) | 1 League | 71.9 | 1 | 0 | 42 | ||||||||||||||
| Huddersfield Town (1 Season) | 1 League | 22.5 | 1 | 0 | 14 | ||||||||||||||
| Plymouth Argyle (1 Season) | 1 League | 9.2 | 0 | 0 | 0 | 7 | 8 | 1 | 30 | 5 | 10 | 0 | |||||||
| Derby County (1 Season) | 1 League | 5.5 | 0 | 0 | 0 | 5 | 12 | 3 | 12 | 5 | 5 | 0 | |||||||
| Coventry City (1 Season) | 1 League | 0.9 | 1 | 0 | 0 | 1 | 0 | 0 | 4 | 1 | 2 | 0 | |||||||
| Charlotte (1 Season) | 1 League | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | |||||||
| Championship (12 Seasons) | 244.7 | 26 | 0 | 0 | 177 | 241 | 47 | 705 | 146 | 170 | 0 | 0 | 0 | ||||||
| League One (4 Seasons) | 81.1 | 1 | 0 | 0 | 49 | 8 | 1 | 30 | 5 | 10 | 0 | ||||||||
| MLS (1 Season) | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 1 | 1 | 0 | ||||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2014-2015 | 22 | Nottingham Forest | eng ENG | FA Cup | 33rd | 0.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2014-2015 | 22 | Nottingham Forest | eng ENG | League Cup | 17th | 2.5 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 23 | Huddersfield Town | eng ENG | FA Cup | 33rd | 2.0 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2015-2016 | 23 | Nottingham Forest | eng ENG | League Cup | 57th | 0.8 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2016-2017 | 24 | Nottingham Forest | eng ENG | EFL Cup | 17th | 2.0 | 0 | 0 | 0 | 1 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2016-2017 | 24 | Bristol City | eng ENG | FA Cup | 17th | 1.1 | 1 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 25 | Bristol City | eng ENG | EFL Cup | 3rd | 3.6 | 1 | 0 | 0 | 3 | 2 | 1 | 5 | 4 | 5 | 0 | 0 | 0 | Matches |
| 2018-2019 | 26 | Bristol City | eng ENG | FA Cup | 9th | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 8 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2019-2020 | 27 | Derby County | eng ENG | EFL Cup | 33rd | 2.0 | 1 | 0 | 0 | 2 | 1 | 0 | 11 | 2 | 2 | 0 | Matches | ||
| 2019-2020 | 27 | Bristol City | eng ENG | FA Cup | 33rd | 0.7 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2020-2021 | 28 | Bristol City | eng ENG | EFL Cup | 17th | 1.0 | 0 | 0 | 0 | 2 | 0 | 0 | 5 | 4 | 3 | 0 | Matches | ||
| 2020-2021 | 28 | Bristol City | eng ENG | FA Cup | 9th | 0.8 | 0 | 0 | 0 | 0 | 3 | 0 | 3 | 0 | 0 | 0 | Matches | ||
| 2023-2024 | 31 | Swansea City | eng ENG | EFL Cup | Rd2 | 0.6 | 0 | 0 | 0 | 0 | 0 | 1 | 6 | 0 | 0 | 0 | Matches | ||
| 2023-2024 | 31 | Swansea City | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | Matches | |||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | EFL Cup | Rd2 | 1.0 | 0 | 0 | 0 | 0 | 1 | 0 | 8 | 1 | 1 | 0 | Matches | ||
| 2025-2026 | 33 | Plymouth Argyle | eng ENG | FA Cup | 0.8 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 9 Seasons | 6 Clubs | 2 Leagues | 20.4 | 3 | 0 | 0 | 8 | 13 | 3 | 49 | 11 | 11 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Bristol City (5 Seasons) | 2 Leagues | 8.3 | 2 | 0 | 0 | 5 | 7 | 1 | 21 | 8 | 8 | 0 | 0 | 0 | |||||
| Nottingham Forest (3 Seasons) | 2 Leagues | 5.3 | 0 | 0 | 0 | 1 | 2 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | |||||
| Swansea City (1 Season) | 2 Leagues | 1.0 | 0 | 0 | 0 | 0 | 2 | 1 | 6 | 0 | 0 | 0 | |||||||
| Derby County (1 Season) | 1 League | 2.0 | 1 | 0 | 0 | 2 | 1 | 0 | 11 | 2 | 2 | 0 | |||||||
| Plymouth Argyle (1 Season) | 2 Leagues | 1.8 | 0 | 0 | 0 | 0 | 1 | 0 | 8 | 1 | 1 | 0 | |||||||
| Huddersfield Town (1 Season) | 1 League | 2.0 | 0 | 0 | 0 | 0 | |||||||||||||
| EFL Cup (8 Seasons) | 13.4 | 2 | 0 | 0 | 8 | 6 | 3 | 38 | 11 | 11 | 0 | 0 | 0 | ||||||
| FA Cup (8 Seasons) | 7.0 | 1 | 0 | 0 | 0 | 7 | 0 | 11 | 0 | 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