| 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 | |||||
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 22 | 22 | 1,980 | 22.0 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | Matches |
| 2017-2018 | 20 | Reading | eng ENG | 2. Championship | 0 | 0 | Matches | |||||||||||||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 2 | 2 | 210 | 2.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 5 | 5 | 360 | 4.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 26 | 24 | 2,115 | 23.5 | 1 | 1 | 2 | 1 | 0 | 0 | 5 | 0 | 0.04 | 0.04 | 0.09 | 0.04 | 0.09 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 1 | 0 | 18 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 3 | 3 | 261 | 2.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 37 | 28 | 2,582 | 28.7 | 1 | 1 | 2 | 1 | 0 | 0 | 4 | 0 | 0.03 | 0.03 | 0.07 | 0.03 | 0.07 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 3 | 3 | 330 | 3.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 5 | 4 | 431 | 4.8 | 1 | 0 | 1 | 1 | 0 | 0 | 2 | 0 | 0.21 | 0.00 | 0.21 | 0.21 | 0.21 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 42 | 41 | 3,637 | 40.4 | 1 | 2 | 3 | 1 | 0 | 0 | 4 | 0 | 0.02 | 0.05 | 0.07 | 0.02 | 0.07 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 1 | 0 | 45 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 20 | 19 | 1,604 | 17.8 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 1 | 0 | 33 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 39 | 26 | 2,404 | 26.7 | 0 | 3 | 3 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.11 | 0.11 | 0.00 | 0.11 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 2 | 2 | 153 | 1.7 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.59 | 0.59 | 0.00 | 0.59 | Matches |
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 16 | 12 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 3 | 1 | 123 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | 3 | 3 | 270 | 3.0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.33 | 0.33 | 0.00 | 0.33 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 30 | 24 | 2,106 | 23.4 | 0 | 1 | 1 | 0 | 0 | 0 | 6 | 0 | 0.00 | 0.04 | 0.04 | 0.00 | 0.04 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL 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 |
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 2 | 1 | 135 | 1.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 3 | 1 | 118 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 2 | 2 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 9 Seasons | 3 Clubs | 4 Leagues | 240 | 195 | 17,799 | 197.8 | 4 | 10 | 14 | 4 | 0 | 0 | 34 | 0 | 0.02 | 0.05 | 0.07 | 0.02 | 0.07 | |||
| Country | Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Reading (6 Seasons) | 4 Leagues | 142 | 123 | 11,213 | 124.6 | 4 | 4 | 8 | 4 | 0 | 0 | 20 | 0 | 0.03 | 0.03 | 0.06 | 0.03 | 0.06 | ||||
| Cardiff City (3 Seasons) | 3 Leagues | 82 | 60 | 5,461 | 60.7 | 0 | 6 | 6 | 0 | 0 | 0 | 11 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | ||||
| Reading (3 Seasons) | 2 Leagues | 30 | 30 | 2,601 | 28.9 | 2 | 0 | 2 | 2 | 0 | 0 | 6 | 0 | 0.07 | 0.00 | 0.07 | 0.07 | 0.07 | ||||
| Rotherham United (1 Season) | 1 League | 16 | 12 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Reading FC (1 Season) | 1 League | 2 | 2 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Championship (8 Seasons) | 213 | 175 | 15,696 | 174.4 | 3 | 8 | 11 | 3 | 0 | 0 | 29 | 0 | 0.02 | 0.05 | 0.06 | 0.02 | 0.06 | |||||
| FA Cup (6 Seasons) | 12 | 9 | 932 | 10.4 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.10 | 0.10 | 0.19 | 0.10 | 0.19 | |||||
| EFL Cup (6 Seasons) | 12 | 10 | 1,053 | 11.7 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.09 | 0.09 | 0.00 | 0.09 | |||||
| PL2 — Div. 1 (2 Seasons) | 24 | 24 | 2,106 | 23.4 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | |||||
| PL2 — Div. 2 (2 Seasons) | 8 | 8 | 621 | 6.9 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| League One (1 Season) | 3 | 1 | 118 | 1.3 | 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 | |||||
| 2016-2017 | 19 | Reading | 1 League | 22 | 22 | 1,980 | 22.0 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | |
| 2017-2018 | 20 | Reading | 1 League | 5 | 5 | 360 | 4.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2017-2018 | 20 | Reading | 2 Leagues | 2 | 2 | 210 | 2.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2018-2019 | 21 | Reading | 1 League | 3 | 3 | 261 | 2.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2018-2019 | 21 | Reading | 3 Leagues | 28 | 25 | 2,223 | 24.7 | 1 | 1 | 2 | 1 | 0 | 0 | 6 | 0 | 0.04 | 0.04 | 0.08 | 0.04 | 0.08 | |
| 2019-2020 | 22 | Reading | 3 Leagues | 45 | 35 | 3,343 | 37.1 | 2 | 1 | 3 | 2 | 0 | 0 | 6 | 0 | 0.05 | 0.03 | 0.08 | 0.05 | 0.08 | |
| 2020-2021 | 23 | Reading | 2 Leagues | 43 | 41 | 3,682 | 40.9 | 1 | 2 | 3 | 1 | 0 | 0 | 4 | 0 | 0.02 | 0.05 | 0.07 | 0.02 | 0.07 | |
| 2021-2022 | 24 | Reading | 2 Leagues | 21 | 19 | 1,637 | 18.2 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2022-2023 | 25 | Cardiff City | 2 Leagues | 41 | 28 | 2,557 | 28.4 | 0 | 4 | 4 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.14 | 0.14 | 0.00 | 0.14 | |
| 2023-2024 | 26 | Rotherham United | 1 League | 16 | 12 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2023-2024 | 26 | Cardiff City | 3 Leagues | 7 | 5 | 483 | 5.4 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.19 | 0.19 | 0.00 | 0.19 | |
| 2024-2025 | 27 | Cardiff City | 3 Leagues | 34 | 27 | 2,421 | 26.9 | 0 | 1 | 1 | 0 | 0 | 0 | 6 | 0 | 0.00 | 0.04 | 0.04 | 0.00 | 0.04 | |
| 2025-2026 | 28 | Reading FC | 1 League | 2 | 2 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2025-2026 | 28 | Reading | 1 League | 3 | 1 | 118 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 9 Seasons | 3 Clubs | 4 Leagues | 240 | 195 | 17,799 | 197.8 | 4 | 10 | 14 | 4 | 0 | 0 | 34 | 0 | 0.02 | 0.05 | 0.07 | 0.02 | 0.07 | ||
| Comp | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Reading (6 Seasons) | 4 Leagues | 142 | 123 | 11,213 | 124.6 | 4 | 4 | 8 | 4 | 0 | 0 | 20 | 0 | 0.03 | 0.03 | 0.06 | 0.03 | 0.06 | |||
| Cardiff City (3 Seasons) | 3 Leagues | 82 | 60 | 5,461 | 60.7 | 0 | 6 | 6 | 0 | 0 | 0 | 11 | 0 | 0.00 | 0.10 | 0.10 | 0.00 | 0.10 | |||
| Reading (3 Seasons) | 2 Leagues | 30 | 30 | 2,601 | 28.9 | 2 | 0 | 2 | 2 | 0 | 0 | 6 | 0 | 0.07 | 0.00 | 0.07 | 0.07 | 0.07 | |||
| Rotherham United (1 Season) | 1 League | 16 | 12 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Reading FC (1 Season) | 1 League | 2 | 2 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Championship (8 Seasons) | 213 | 175 | 15,696 | 174.4 | 3 | 8 | 11 | 3 | 0 | 0 | 29 | 0 | 0.02 | 0.05 | 0.06 | 0.02 | 0.06 | ||||
| FA Cup (6 Seasons) | 12 | 9 | 932 | 10.4 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.10 | 0.10 | 0.19 | 0.10 | 0.19 | ||||
| EFL Cup (6 Seasons) | 12 | 10 | 1,053 | 11.7 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.09 | 0.09 | 0.00 | 0.09 | ||||
| PL2 — Div. 1 (2 Seasons) | 24 | 24 | 2,106 | 23.4 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | ||||
| PL2 — Div. 2 (2 Seasons) | 8 | 8 | 621 | 6.9 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| League One (1 Season) | 3 | 1 | 118 | 1.3 | 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 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 11th | 22 | 22 | 1,980 | 22.0 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | Matches |
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 5th | 5 | 5 | 360 | 4.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017-2018 | 20 | Reading | eng ENG | 2. Championship | 20th | 0 | 0 | Matches | |||||||||||||||
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 3rd | 3 | 3 | 261 | 2.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 20th | 26 | 24 | 2,115 | 23.5 | 1 | 1 | 2 | 1 | 0 | 0 | 5 | 0 | 0.04 | 0.04 | 0.09 | 0.04 | 0.09 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 14th | 37 | 28 | 2,582 | 28.7 | 1 | 1 | 2 | 1 | 0 | 0 | 4 | 0 | 0.03 | 0.03 | 0.07 | 0.03 | 0.07 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 7th | 42 | 41 | 3,637 | 40.4 | 1 | 2 | 3 | 1 | 0 | 0 | 4 | 0 | 0.02 | 0.05 | 0.07 | 0.02 | 0.07 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 21st | 20 | 19 | 1,604 | 17.8 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 21st | 39 | 26 | 2,404 | 26.7 | 0 | 3 | 3 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.11 | 0.11 | 0.00 | 0.11 | Matches |
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 24th | 16 | 12 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 12th | 3 | 1 | 123 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 24th | 30 | 24 | 2,106 | 23.4 | 0 | 1 | 1 | 0 | 0 | 0 | 6 | 0 | 0.00 | 0.04 | 0.04 | 0.00 | 0.04 | Matches |
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 19th | 2 | 2 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 12th | 3 | 1 | 118 | 1.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 9 Seasons | 3 Clubs | 2 Leagues | 216 | 176 | 15,814 | 175.7 | 3 | 8 | 11 | 3 | 0 | 0 | 29 | 0 | 0.02 | 0.05 | 0.06 | 0.02 | 0.06 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Reading (6 Seasons) | 2 Leagues | 128 | 113 | 10,056 | 111.7 | 3 | 4 | 7 | 3 | 0 | 0 | 16 | 0 | 0.03 | 0.04 | 0.06 | 0.03 | 0.06 | |||||
| Cardiff City (3 Seasons) | 1 League | 72 | 51 | 4,633 | 51.5 | 0 | 4 | 4 | 0 | 0 | 0 | 10 | 0 | 0.00 | 0.08 | 0.08 | 0.00 | 0.08 | |||||
| Reading (3 Seasons) | 2 Leagues | 30 | 30 | 2,601 | 28.9 | 2 | 0 | 2 | 2 | 0 | 0 | 6 | 0 | 0.07 | 0.00 | 0.07 | 0.07 | 0.07 | |||||
| Rotherham United (1 Season) | 1 League | 16 | 12 | 1,125 | 12.5 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Reading FC (1 Season) | 1 League | 2 | 2 | 126 | 1.4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Championship (8 Seasons) | 213 | 175 | 15,696 | 174.4 | 3 | 8 | 11 | 3 | 0 | 0 | 29 | 0 | 0.02 | 0.05 | 0.06 | 0.02 | 0.06 | ||||||
| PL2 — Div. 1 (2 Seasons) | 24 | 24 | 2,106 | 23.4 | 2 | 0 | 2 | 2 | 0 | 0 | 4 | 0 | 0.09 | 0.00 | 0.09 | 0.09 | 0.09 | ||||||
| PL2 — Div. 2 (2 Seasons) | 8 | 8 | 621 | 6.9 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||||
| League One (1 Season) | 3 | 1 | 118 | 1.3 | 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 | |||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 17th | 2 | 2 | 210 | 2.3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 33rd | 1 | 0 | 18 | 0.2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 33rd | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 17th | 3 | 3 | 330 | 3.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 9th | 5 | 4 | 431 | 4.8 | 1 | 0 | 1 | 1 | 0 | 0 | 2 | 0 | 0.21 | 0.00 | 0.21 | 0.21 | 0.21 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 33rd | 1 | 0 | 45 | 0.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 1 | 0 | 33 | 0.4 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 2 | 2 | 153 | 1.7 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.59 | 0.59 | 0.00 | 0.59 | Matches | |
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | Rd3 | 3 | 3 | 270 | 3.0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.33 | 0.33 | 0.00 | 0.33 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1 | 1 | 90 | 1.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | Rd2 | 2 | 2 | 180 | 2.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 2 | 1 | 135 | 1.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 8 Seasons | 2 Clubs | 2 Leagues | 24 | 19 | 1,985 | 22.1 | 1 | 2 | 3 | 1 | 0 | 0 | 5 | 0 | 0.05 | 0.09 | 0.14 | 0.05 | 0.14 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Reading (5 Seasons) | 2 Leagues | 14 | 10 | 1,157 | 12.9 | 1 | 0 | 1 | 1 | 0 | 0 | 4 | 0 | 0.08 | 0.00 | 0.08 | 0.08 | 0.08 | |||||
| Cardiff City (3 Seasons) | 2 Leagues | 10 | 9 | 828 | 9.2 | 0 | 2 | 2 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.22 | 0.22 | 0.00 | 0.22 | |||||
| FA Cup (6 Seasons) | 12 | 9 | 932 | 10.4 | 1 | 1 | 2 | 1 | 0 | 0 | 3 | 0 | 0.10 | 0.10 | 0.19 | 0.10 | 0.19 | ||||||
| EFL Cup (6 Seasons) | 12 | 10 | 1,053 | 11.7 | 0 | 1 | 1 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.09 | 0.09 | 0.00 | 0.09 | ||||||
| Playing Time | Performance | Per 90 Minutes | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2025 | 27 | zw Zimbabwe | Africa Cup of Nations qualification | 6 | 6 | 522 | 5.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2026 | 28 | zw Zimbabwe | WCQ | 5 | 5 | 434 | 4.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches | |
| 2 Seasons | 1 Club | 2 Leagues | 11 | 11 | 956 | 10.6 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||
| Africa Cup of Nations qualification (1 Season) | 6 | 6 | 522 | 5.8 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| WCQ (1 Season) | 5 | 5 | 434 | 4.8 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Standard | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 22.0 | 2 | 0 | 0 | Matches | |||||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 2.3 | 0 | 2 | 0 | 0.0 | 0.86 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 4.0 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 23.5 | 1 | 7 | 2 | 28.6 | 0.30 | 0.09 | 0.14 | 0.50 | 0 | 0 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 2.9 | 0 | 0 | 0 | Matches | |||||||
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 28.7 | 1 | 7 | 1 | 14.3 | 0.24 | 0.03 | 0.14 | 1.00 | 0 | 0 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 3.7 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 4.8 | 1 | 5 | 3 | 60.0 | 1.04 | 0.63 | 0.20 | 0.33 | 0 | 0 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 40.4 | 1 | 17 | 3 | 17.6 | 0.42 | 0.07 | 0.06 | 0.33 | 0 | 0 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 0.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 17.8 | 0 | 3 | 2 | 66.7 | 0.17 | 0.11 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 26.7 | 0 | 10 | 1 | 10.0 | 0.37 | 0.04 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 1.7 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 12.5 | 0 | 12 | 1 | 8.3 | 0.96 | 0.08 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 1.4 | 0 | 1 | 1 | 100.0 | 0.73 | 0.73 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | 3.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 23.4 | 0 | 6 | 1 | 16.7 | 0.26 | 0.04 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | 2.0 | 0 | 1 | 1 | 100.0 | 0.50 | 0.50 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 1.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 1.4 | 0 | 0 | 0 | Matches | |||||||
| 9 Seasons | 3 Clubs | 4 Leagues | 197.8 | 4 | 71 | 16 | 22.5 | 0.36 | 0.08 | 0.06 | 0.25 | 0 | 0 | |||
| Country | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Reading (6 Seasons) | 4 Leagues | 124.6 | 4 | 41 | 11 | 26.8 | 0.33 | 0.09 | 0.10 | 0.36 | 0 | 0 | ||||
| Cardiff City (3 Seasons) | 3 Leagues | 60.7 | 0 | 18 | 4 | 22.2 | 0.30 | 0.07 | 0.00 | 0.00 | 0 | 0 | ||||
| Reading (3 Seasons) | 2 Leagues | 28.9 | 2 | 0 | 0 | |||||||||||
| Rotherham United (1 Season) | 1 League | 12.5 | 0 | 12 | 1 | 8.3 | 0.96 | 0.08 | 0.00 | 0.00 | 0 | 0 | ||||
| Reading FC (1 Season) | 1 League | 1.4 | 0 | 0 | 0 | |||||||||||
| Championship (8 Seasons) | 174.4 | 3 | 63 | 12 | 19.0 | 0.36 | 0.07 | 0.05 | 0.25 | 0 | 0 | |||||
| FA Cup (6 Seasons) | 10.4 | 1 | 5 | 3 | 60.0 | 0.48 | 0.29 | 0.20 | 0.33 | 0 | 0 | |||||
| EFL Cup (6 Seasons) | 11.7 | 0 | 3 | 1 | 33.3 | 0.26 | 0.09 | 0.00 | 0.00 | 0 | 0 | |||||
| PL2 — Div. 1 (2 Seasons) | 23.4 | 2 | 0 | 0 | ||||||||||||
| PL2 — Div. 2 (2 Seasons) | 6.9 | 0 | 0 | 0 | ||||||||||||
| League One (1 Season) | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||||||
| Standard | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2016-2017 | 19 | Reading | 1 League | 22.0 | 2 | 0 | 0 | ||||||||
| 2017-2018 | 20 | Reading | 1 League | 4.0 | 0 | 0 | 0 | ||||||||
| 2017-2018 | 20 | Reading | 2 Leagues | 2.3 | 0 | 2 | 0 | 0.0 | 0.86 | 0.00 | 0.00 | 0 | 0 | ||
| 2018-2019 | 21 | Reading | 1 League | 2.9 | 0 | 0 | 0 | ||||||||
| 2018-2019 | 21 | Reading | 3 Leagues | 24.7 | 1 | 7 | 2 | 28.6 | 0.28 | 0.08 | 0.14 | 0.50 | 0 | 0 | |
| 2019-2020 | 22 | Reading | 3 Leagues | 37.1 | 2 | 12 | 4 | 33.3 | 0.32 | 0.11 | 0.17 | 0.50 | 0 | 0 | |
| 2020-2021 | 23 | Reading | 2 Leagues | 40.9 | 1 | 17 | 3 | 17.6 | 0.42 | 0.07 | 0.06 | 0.33 | 0 | 0 | |
| 2021-2022 | 24 | Reading | 2 Leagues | 18.2 | 0 | 3 | 2 | 66.7 | 0.16 | 0.11 | 0.00 | 0.00 | 0 | 0 | |
| 2022-2023 | 25 | Cardiff City | 2 Leagues | 28.4 | 0 | 10 | 1 | 10.0 | 0.35 | 0.04 | 0.00 | 0.00 | 0 | 0 | |
| 2023-2024 | 26 | Rotherham United | 1 League | 12.5 | 0 | 12 | 1 | 8.3 | 0.96 | 0.08 | 0.00 | 0.00 | 0 | 0 | |
| 2023-2024 | 26 | Cardiff City | 3 Leagues | 5.4 | 0 | 1 | 1 | 100.0 | 0.19 | 0.19 | 0.00 | 0.00 | 0 | 0 | |
| 2024-2025 | 27 | Cardiff City | 3 Leagues | 26.9 | 0 | 7 | 2 | 28.6 | 0.26 | 0.07 | 0.00 | 0.00 | 0 | 0 | |
| 2025-2026 | 28 | Reading FC | 1 League | 1.4 | 0 | 0 | 0 | ||||||||
| 2025-2026 | 28 | Reading | 1 League | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | ||||
| 9 Seasons | 3 Clubs | 4 Leagues | 197.8 | 4 | 71 | 16 | 22.5 | 0.36 | 0.08 | 0.06 | 0.25 | 0 | 0 | ||
| Comp | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Reading (6 Seasons) | 4 Leagues | 124.6 | 4 | 41 | 11 | 26.8 | 0.33 | 0.09 | 0.10 | 0.36 | 0 | 0 | |||
| Cardiff City (3 Seasons) | 3 Leagues | 60.7 | 0 | 18 | 4 | 22.2 | 0.30 | 0.07 | 0.00 | 0.00 | 0 | 0 | |||
| Reading (3 Seasons) | 2 Leagues | 28.9 | 2 | 0 | 0 | ||||||||||
| Rotherham United (1 Season) | 1 League | 12.5 | 0 | 12 | 1 | 8.3 | 0.96 | 0.08 | 0.00 | 0.00 | 0 | 0 | |||
| Reading FC (1 Season) | 1 League | 1.4 | 0 | 0 | 0 | ||||||||||
| Championship (8 Seasons) | 174.4 | 3 | 63 | 12 | 19.0 | 0.36 | 0.07 | 0.05 | 0.25 | 0 | 0 | ||||
| FA Cup (6 Seasons) | 10.4 | 1 | 5 | 3 | 60.0 | 0.48 | 0.29 | 0.20 | 0.33 | 0 | 0 | ||||
| EFL Cup (6 Seasons) | 11.7 | 0 | 3 | 1 | 33.3 | 0.26 | 0.09 | 0.00 | 0.00 | 0 | 0 | ||||
| PL2 — Div. 1 (2 Seasons) | 23.4 | 2 | 0 | 0 | |||||||||||
| PL2 — Div. 2 (2 Seasons) | 6.9 | 0 | 0 | 0 | |||||||||||
| League One (1 Season) | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 11th | 22.0 | 2 | 0 | 0 | Matches | |||||||
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 5th | 4.0 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 3rd | 2.9 | 0 | 0 | 0 | Matches | |||||||
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 20th | 23.5 | 1 | 7 | 2 | 28.6 | 0.30 | 0.09 | 0.14 | 0.50 | 0 | 0 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 14th | 28.7 | 1 | 7 | 1 | 14.3 | 0.24 | 0.03 | 0.14 | 1.00 | 0 | 0 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 7th | 40.4 | 1 | 17 | 3 | 17.6 | 0.42 | 0.07 | 0.06 | 0.33 | 0 | 0 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 21st | 17.8 | 0 | 3 | 2 | 66.7 | 0.17 | 0.11 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 21st | 26.7 | 0 | 10 | 1 | 10.0 | 0.37 | 0.04 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 24th | 12.5 | 0 | 12 | 1 | 8.3 | 0.96 | 0.08 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 12th | 1.4 | 0 | 1 | 1 | 100.0 | 0.73 | 0.73 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 24th | 23.4 | 0 | 6 | 1 | 16.7 | 0.26 | 0.04 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 19th | 1.4 | 0 | 0 | 0 | Matches | |||||||
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 12th | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 9 Seasons | 3 Clubs | 2 Leagues | 175.7 | 3 | 63 | 12 | 19.0 | 0.36 | 0.07 | 0.05 | 0.25 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Reading (6 Seasons) | 2 Leagues | 111.7 | 3 | 34 | 8 | 23.5 | 0.30 | 0.07 | 0.09 | 0.38 | 0 | 0 | |||||
| Cardiff City (3 Seasons) | 1 League | 51.5 | 0 | 17 | 3 | 17.6 | 0.33 | 0.06 | 0.00 | 0.00 | 0 | 0 | |||||
| Reading (3 Seasons) | 2 Leagues | 28.9 | 2 | 0 | 0 | ||||||||||||
| Rotherham United (1 Season) | 1 League | 12.5 | 0 | 12 | 1 | 8.3 | 0.96 | 0.08 | 0.00 | 0.00 | 0 | 0 | |||||
| Reading FC (1 Season) | 1 League | 1.4 | 0 | 0 | 0 | ||||||||||||
| Championship (8 Seasons) | 174.4 | 3 | 63 | 12 | 19.0 | 0.36 | 0.07 | 0.05 | 0.25 | 0 | 0 | ||||||
| PL2 — Div. 1 (2 Seasons) | 23.4 | 2 | 0 | 0 | |||||||||||||
| PL2 — Div. 2 (2 Seasons) | 6.9 | 0 | 0 | 0 | |||||||||||||
| League One (1 Season) | 1.3 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | |||||||||
| Standard | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | |||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 17th | 2.3 | 0 | 2 | 0 | 0.0 | 0.86 | 0.00 | 0.00 | 0 | 0 | Matches | |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 33rd | 0.2 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 33rd | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 17th | 3.7 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 9th | 4.8 | 1 | 5 | 3 | 60.0 | 1.04 | 0.63 | 0.20 | 0.33 | 0 | 0 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 33rd | 0.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 0.4 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 1.7 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | Rd3 | 3.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | |||
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | Rd2 | 2.0 | 0 | 1 | 1 | 100.0 | 0.50 | 0.50 | 0.00 | 0.00 | 0 | 0 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 1.5 | 0 | 0 | 0 | 0.00 | 0.00 | 0 | 0 | Matches | ||||
| 8 Seasons | 2 Clubs | 2 Leagues | 22.1 | 1 | 8 | 4 | 50.0 | 0.36 | 0.18 | 0.13 | 0.25 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | Gls | Sh | SoT | PK | PKatt | Matches | ||||||||
| Reading (5 Seasons) | 2 Leagues | 12.9 | 1 | 7 | 3 | 42.9 | 0.54 | 0.23 | 0.14 | 0.33 | 0 | 0 | |||||
| Cardiff City (3 Seasons) | 2 Leagues | 9.2 | 0 | 1 | 1 | 100.0 | 0.11 | 0.11 | 0.00 | 0.00 | 0 | 0 | |||||
| FA Cup (6 Seasons) | 10.4 | 1 | 5 | 3 | 60.0 | 0.48 | 0.29 | 0.20 | 0.33 | 0 | 0 | ||||||
| EFL Cup (6 Seasons) | 11.7 | 0 | 3 | 1 | 33.3 | 0.26 | 0.09 | 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 | |||||||
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 22 | 1,980 | 90 | 100.0 | 22.0 | 22 | 90 | 22 | 0 | 0 | 1.00 | 36 | 56 | -20 | -0.91 | Matches | ||
| 2017-2018 | 20 | Reading | eng ENG | 2. Championship | 0 | 0 | 0 | 0 | 6 | Matches | ||||||||||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 2 | 210 | 105 | 70.0 | 2.3 | 2 | 105 | 2 | 0 | 1 | 3.00 | 5 | 1 | +4 | +1.71 | +3.71 | Matches | |
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 5 | 360 | 72 | 21.1 | 4.0 | 5 | 72 | 3 | 0 | 0 | 1.17 | 6 | 7 | -1 | -0.25 | +0.08 | Matches | |
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 26 | 2,115 | 81 | 51.1 | 23.5 | 24 | 88 | 22 | 2 | 6 | 5 | 1.15 | 22 | 29 | -7 | -0.30 | +0.15 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 1 | 18 | 18 | 10.0 | 0.2 | 0 | 0 | 1 | 17 | 1 | 3.00 | 0 | 0 | 0 | 0.00 | 0.00 | Matches | |
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 2 | -2 | -2.00 | Matches | ||
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 3 | 261 | 87 | 13.2 | 2.9 | 3 | 87 | 2 | 0 | 0 | 2.33 | 10 | 5 | +5 | +1.72 | +1.36 | Matches | |
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 37 | 2,582 | 70 | 62.4 | 28.7 | 28 | 86 | 23 | 9 | 19 | 8 | 1.35 | 39 | 42 | -3 | -0.10 | -0.34 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 3 | 330 | 110 | 100.0 | 3.7 | 3 | 110 | 3 | 0 | 0 | 2.00 | 6 | 4 | +2 | +0.55 | Matches | ||
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 5 | 431 | 86 | 84.5 | 4.8 | 4 | 93 | 2 | 1 | 58 | 0 | 1.60 | 9 | 6 | +3 | +0.63 | +2.90 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 42 | 3,637 | 87 | 87.9 | 40.4 | 41 | 88 | 35 | 1 | 14 | 0 | 1.50 | 54 | 46 | +8 | +0.20 | +0.20 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 1 | 45 | 45 | 25.0 | 0.5 | 0 | 0 | 1 | 45 | 0 | 3.00 | 2 | 0 | +2 | +4.00 | +4.67 | Matches | |
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 20 | 1,604 | 80 | 38.7 | 17.8 | 19 | 82 | 14 | 1 | 39 | 0 | 0.70 | 20 | 45 | -25 | -1.40 | -1.12 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 1 | 33 | 33 | 36.7 | 0.4 | 0 | 0 | 1 | 33 | 0 | 0.00 | 0 | 2 | -2 | -5.45 | -7.03 | Matches | |
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 39 | 2,404 | 62 | 58.1 | 26.7 | 26 | 78 | 12 | 13 | 29 | 7 | 1.03 | 24 | 40 | -16 | -0.60 | -0.55 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 2 | 153 | 77 | 85.0 | 1.7 | 2 | 77 | 1 | 0 | 0 | 0.50 | 2 | 5 | -3 | -1.76 | -1.76 | Matches | |
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 16 | 1,125 | 70 | 27.2 | 12.5 | 12 | 85 | 7 | 4 | 28 | 1 | 0.31 | 5 | 20 | -15 | -1.20 | -0.10 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 3 | 123 | 41 | 3.0 | 1.4 | 1 | 65 | 0 | 2 | 29 | 11 | 0.33 | 1 | 4 | -3 | -2.20 | -1.88 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | 3 | 270 | 90 | 100.0 | 3.0 | 3 | 90 | 3 | 0 | 0 | 1.33 | 7 | 8 | -1 | -0.33 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 4 | -4 | -4.00 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 30 | 2,106 | 70 | 50.9 | 23.4 | 24 | 83 | 17 | 6 | 21 | 11 | 1.33 | 25 | 36 | -11 | -0.47 | +0.15 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 5 | 5 | 0 | 0.00 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 2 | 135 | 68 | 45.0 | 1.5 | 1 | 120 | 1 | 1 | 15 | 0 | 2.00 | 3 | 3 | 0 | 0.00 | +0.55 | Matches |
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 3 | 118 | 39 | 2.9 | 1.3 | 1 | 87 | 0 | 2 | 16 | 3 | 1.00 | 1 | 3 | -2 | -1.53 | -1.66 | Matches |
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 2 | 126 | 63 | 7.0 | 1.4 | 2 | 63 | 0 | 0 | 0 | 1.50 | 2 | 4 | -2 | -1.43 | -1.16 | Matches | |
| 9 Seasons | 3 Clubs | 4 Leagues | 240 | 17,799 | 74 | 40.4 | 197.8 | 195 | 86 | 146 | 45 | 24 | 54 | 1.18 | 230 | 305 | -75 | -0.38 | -0.06 | |||
| Country | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Reading (6 Seasons) | 4 Leagues | 142 | 11,213 | 79 | 42.3 | 124.6 | 123 | 88 | 102 | 19 | 22 | 24 | 1.31 | 158 | 180 | -22 | -0.18 | -0.08 | ||||
| Cardiff City (3 Seasons) | 3 Leagues | 82 | 5,461 | 67 | 40.6 | 60.7 | 60 | 81 | 37 | 22 | 26 | 29 | 1.13 | 67 | 105 | -38 | -0.63 | -0.29 | ||||
| Reading (3 Seasons) | 2 Leagues | 30 | 2,601 | 87 | 45.9 | 28.9 | 30 | 87 | 27 | 0 | 0 | 1.16 | 52 | 68 | -16 | -0.55 | -0.61 | |||||
| Rotherham United (1 Season) | 1 League | 16 | 1,125 | 70 | 27.2 | 12.5 | 12 | 85 | 7 | 4 | 28 | 1 | 0.31 | 5 | 20 | -15 | -1.20 | -0.10 | ||||
| Reading FC (1 Season) | 1 League | 2 | 126 | 63 | 7.0 | 1.4 | 2 | 63 | 0 | 0 | 0 | 1.50 | 2 | 4 | -2 | -1.43 | -1.16 | |||||
| Championship (8 Seasons) | 213 | 15,696 | 74 | 42.1 | 174.4 | 175 | 85 | 130 | 38 | 24 | 49 | 1.14 | 190 | 262 | -72 | -0.41 | 0.00 | |||||
| FA Cup (6 Seasons) | 12 | 932 | 78 | 74.0 | 10.4 | 9 | 92 | 6 | 3 | 35 | 0 | 1.08 | 14 | 22 | -8 | -0.77 | -0.22 | |||||
| EFL Cup (6 Seasons) | 12 | 1,053 | 88 | 73.1 | 11.7 | 10 | 99 | 10 | 2 | 31 | 2 | 2.08 | 25 | 18 | +7 | +0.60 | +1.30 | |||||
| PL2 — Div. 1 (2 Seasons) | 24 | 2,106 | 88 | 55.7 | 23.4 | 24 | 88 | 22 | 0 | 0 | 1.04 | 38 | 60 | -22 | -0.94 | -0.67 | ||||||
| PL2 — Div. 2 (2 Seasons) | 8 | 621 | 78 | 16.8 | 6.9 | 8 | 78 | 5 | 0 | 0 | 1.61 | 16 | 12 | +4 | +0.58 | +0.52 | ||||||
| League One (1 Season) | 3 | 118 | 39 | 2.9 | 1.3 | 1 | 87 | 0 | 2 | 16 | 3 | 1.00 | 1 | 3 | -2 | -1.53 | -1.66 | |||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2016-2017 | 19 | Reading | 1 League | 22 | 1,980 | 90 | 100.0 | 22.0 | 22 | 90 | 22 | 0 | 0 | 1.00 | 36 | 56 | -20 | -0.91 | |||
| 2017-2018 | 20 | Reading | 1 League | 5 | 360 | 72 | 21.1 | 4.0 | 5 | 72 | 3 | 0 | 0 | 1.17 | 6 | 7 | -1 | -0.25 | +0.08 | ||
| 2017-2018 | 20 | Reading | 2 Leagues | 2 | 210 | 105 | 4.7 | 2.3 | 2 | 105 | 2 | 0 | 7 | 3.00 | 5 | 1 | +4 | +1.71 | +3.71 | ||
| 2018-2019 | 21 | Reading | 1 League | 3 | 261 | 87 | 13.2 | 2.9 | 3 | 87 | 2 | 0 | 0 | 2.33 | 10 | 5 | +5 | +1.72 | +1.36 | ||
| 2018-2019 | 21 | Reading | 3 Leagues | 28 | 2,223 | 79 | 50.4 | 24.7 | 25 | 88 | 23 | 3 | 9 | 6 | 1.18 | 22 | 31 | -9 | -0.36 | +0.05 | |
| 2019-2020 | 22 | Reading | 3 Leagues | 45 | 3,343 | 74 | 67.1 | 37.1 | 35 | 89 | 28 | 10 | 23 | 8 | 1.42 | 54 | 52 | +2 | +0.05 | -0.06 | |
| 2020-2021 | 23 | Reading | 2 Leagues | 43 | 3,682 | 86 | 85.2 | 40.9 | 41 | 88 | 35 | 2 | 30 | 0 | 1.53 | 56 | 46 | +10 | +0.24 | +0.39 | |
| 2021-2022 | 24 | Reading | 2 Leagues | 21 | 1,637 | 78 | 38.7 | 18.2 | 19 | 82 | 14 | 2 | 36 | 0 | 0.67 | 20 | 47 | -27 | -1.48 | -1.24 | |
| 2022-2023 | 25 | Cardiff City | 2 Leagues | 41 | 2,557 | 62 | 59.2 | 28.4 | 28 | 78 | 13 | 13 | 29 | 7 | 1.00 | 26 | 45 | -19 | -0.67 | -0.62 | |
| 2023-2024 | 26 | Rotherham United | 1 League | 16 | 1,125 | 70 | 27.2 | 12.5 | 12 | 85 | 7 | 4 | 28 | 1 | 0.31 | 5 | 20 | -15 | -1.20 | -0.10 | |
| 2023-2024 | 26 | Cardiff City | 3 Leagues | 7 | 483 | 69 | 10.7 | 5.4 | 5 | 85 | 4 | 2 | 29 | 11 | 0.71 | 8 | 16 | -8 | -1.49 | -1.18 | |
| 2024-2025 | 27 | Cardiff City | 3 Leagues | 34 | 2,421 | 71 | 52.4 | 26.9 | 27 | 84 | 20 | 7 | 20 | 11 | 1.38 | 33 | 44 | -11 | -0.41 | +0.20 | |
| 2025-2026 | 28 | Reading FC | 1 League | 2 | 126 | 63 | 7.0 | 1.4 | 2 | 63 | 0 | 0 | 0 | 1.50 | 2 | 4 | -2 | -1.43 | -1.16 | ||
| 2025-2026 | 28 | Reading | 1 League | 3 | 118 | 39 | 2.9 | 1.3 | 1 | 87 | 0 | 2 | 16 | 3 | 1.00 | 1 | 3 | -2 | -1.53 | -1.66 | |
| 9 Seasons | 3 Clubs | 4 Leagues | 240 | 17,799 | 74 | 40.4 | 197.8 | 195 | 86 | 146 | 45 | 24 | 54 | 1.18 | 230 | 305 | -75 | -0.38 | -0.06 | ||
| Comp | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Reading (6 Seasons) | 4 Leagues | 142 | 11,213 | 79 | 42.3 | 124.6 | 123 | 88 | 102 | 19 | 22 | 24 | 1.31 | 158 | 180 | -22 | -0.18 | -0.08 | |||
| Cardiff City (3 Seasons) | 3 Leagues | 82 | 5,461 | 67 | 40.6 | 60.7 | 60 | 81 | 37 | 22 | 26 | 29 | 1.13 | 67 | 105 | -38 | -0.63 | -0.29 | |||
| Reading (3 Seasons) | 2 Leagues | 30 | 2,601 | 87 | 45.9 | 28.9 | 30 | 87 | 27 | 0 | 0 | 1.16 | 52 | 68 | -16 | -0.55 | -0.61 | ||||
| Rotherham United (1 Season) | 1 League | 16 | 1,125 | 70 | 27.2 | 12.5 | 12 | 85 | 7 | 4 | 28 | 1 | 0.31 | 5 | 20 | -15 | -1.20 | -0.10 | |||
| Reading FC (1 Season) | 1 League | 2 | 126 | 63 | 7.0 | 1.4 | 2 | 63 | 0 | 0 | 0 | 1.50 | 2 | 4 | -2 | -1.43 | -1.16 | ||||
| Championship (8 Seasons) | 213 | 15,696 | 74 | 42.1 | 174.4 | 175 | 85 | 130 | 38 | 24 | 49 | 1.14 | 190 | 262 | -72 | -0.41 | 0.00 | ||||
| FA Cup (6 Seasons) | 12 | 932 | 78 | 74.0 | 10.4 | 9 | 92 | 6 | 3 | 35 | 0 | 1.08 | 14 | 22 | -8 | -0.77 | -0.22 | ||||
| EFL Cup (6 Seasons) | 12 | 1,053 | 88 | 73.1 | 11.7 | 10 | 99 | 10 | 2 | 31 | 2 | 2.08 | 25 | 18 | +7 | +0.60 | +1.30 | ||||
| PL2 — Div. 1 (2 Seasons) | 24 | 2,106 | 88 | 55.7 | 23.4 | 24 | 88 | 22 | 0 | 0 | 1.04 | 38 | 60 | -22 | -0.94 | -0.67 | |||||
| PL2 — Div. 2 (2 Seasons) | 8 | 621 | 78 | 16.8 | 6.9 | 8 | 78 | 5 | 0 | 0 | 1.61 | 16 | 12 | +4 | +0.58 | +0.52 | |||||
| League One (1 Season) | 3 | 118 | 39 | 2.9 | 1.3 | 1 | 87 | 0 | 2 | 16 | 3 | 1.00 | 1 | 3 | -2 | -1.53 | -1.66 | ||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 11th | 22 | 1,980 | 90 | 100.0 | 22.0 | 22 | 90 | 22 | 0 | 0 | 1.00 | 36 | 56 | -20 | -0.91 | Matches | ||
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 5th | 5 | 360 | 72 | 21.1 | 4.0 | 5 | 72 | 3 | 0 | 0 | 1.17 | 6 | 7 | -1 | -0.25 | +0.08 | Matches | |
| 2017-2018 | 20 | Reading | eng ENG | 2. Championship | 20th | 0 | 0 | 0 | 0 | 6 | Matches | ||||||||||||
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 3rd | 3 | 261 | 87 | 13.2 | 2.9 | 3 | 87 | 2 | 0 | 0 | 2.33 | 10 | 5 | +5 | +1.72 | +1.36 | Matches | |
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 20th | 26 | 2,115 | 81 | 51.1 | 23.5 | 24 | 88 | 22 | 2 | 6 | 5 | 1.15 | 22 | 29 | -7 | -0.30 | +0.15 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 14th | 37 | 2,582 | 70 | 62.4 | 28.7 | 28 | 86 | 23 | 9 | 19 | 8 | 1.35 | 39 | 42 | -3 | -0.10 | -0.34 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 7th | 42 | 3,637 | 87 | 87.9 | 40.4 | 41 | 88 | 35 | 1 | 14 | 0 | 1.50 | 54 | 46 | +8 | +0.20 | +0.20 | Matches |
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 21st | 20 | 1,604 | 80 | 38.7 | 17.8 | 19 | 82 | 14 | 1 | 39 | 0 | 0.70 | 20 | 45 | -25 | -1.40 | -1.12 | Matches |
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 21st | 39 | 2,404 | 62 | 58.1 | 26.7 | 26 | 78 | 12 | 13 | 29 | 7 | 1.03 | 24 | 40 | -16 | -0.60 | -0.55 | Matches |
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 24th | 16 | 1,125 | 70 | 27.2 | 12.5 | 12 | 85 | 7 | 4 | 28 | 1 | 0.31 | 5 | 20 | -15 | -1.20 | -0.10 | Matches |
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 12th | 3 | 123 | 41 | 3.0 | 1.4 | 1 | 65 | 0 | 2 | 29 | 11 | 0.33 | 1 | 4 | -3 | -2.20 | -1.88 | Matches |
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 24th | 30 | 2,106 | 70 | 50.9 | 23.4 | 24 | 83 | 17 | 6 | 21 | 11 | 1.33 | 25 | 36 | -11 | -0.47 | +0.15 | Matches |
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 19th | 2 | 126 | 63 | 7.0 | 1.4 | 2 | 63 | 0 | 0 | 0 | 1.50 | 2 | 4 | -2 | -1.43 | -1.16 | Matches | |
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 12th | 3 | 118 | 39 | 2.9 | 1.3 | 1 | 87 | 0 | 2 | 16 | 3 | 1.00 | 1 | 3 | -2 | -1.53 | -1.66 | Matches |
| 9 Seasons | 3 Clubs | 2 Leagues | 216 | 15,814 | 73 | 38.2 | 175.7 | 176 | 85 | 130 | 40 | 23 | 52 | 1.14 | 191 | 265 | -74 | -0.42 | -0.11 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Reading (6 Seasons) | 2 Leagues | 128 | 10,056 | 79 | 40.5 | 111.7 | 113 | 87 | 94 | 15 | 18 | 22 | 1.25 | 136 | 165 | -29 | -0.26 | -0.19 | |||||
| Cardiff City (3 Seasons) | 1 League | 72 | 4,633 | 64 | 37.3 | 51.5 | 51 | 80 | 29 | 21 | 27 | 29 | 1.13 | 50 | 80 | -30 | -0.58 | -0.25 | |||||
| Reading (3 Seasons) | 2 Leagues | 30 | 2,601 | 87 | 45.9 | 28.9 | 30 | 87 | 27 | 0 | 0 | 1.16 | 52 | 68 | -16 | -0.55 | -0.61 | ||||||
| Rotherham United (1 Season) | 1 League | 16 | 1,125 | 70 | 27.2 | 12.5 | 12 | 85 | 7 | 4 | 28 | 1 | 0.31 | 5 | 20 | -15 | -1.20 | -0.10 | |||||
| Reading FC (1 Season) | 1 League | 2 | 126 | 63 | 7.0 | 1.4 | 2 | 63 | 0 | 0 | 0 | 1.50 | 2 | 4 | -2 | -1.43 | -1.16 | ||||||
| Championship (8 Seasons) | 213 | 15,696 | 74 | 42.1 | 174.4 | 175 | 85 | 130 | 38 | 24 | 49 | 1.14 | 190 | 262 | -72 | -0.41 | 0.00 | ||||||
| PL2 — Div. 1 (2 Seasons) | 24 | 2,106 | 88 | 55.7 | 23.4 | 24 | 88 | 22 | 0 | 0 | 1.04 | 38 | 60 | -22 | -0.94 | -0.67 | |||||||
| PL2 — Div. 2 (2 Seasons) | 8 | 621 | 78 | 16.8 | 6.9 | 8 | 78 | 5 | 0 | 0 | 1.61 | 16 | 12 | +4 | +0.58 | +0.52 | |||||||
| League One (1 Season) | 3 | 118 | 39 | 2.9 | 1.3 | 1 | 87 | 0 | 2 | 16 | 3 | 1.00 | 1 | 3 | -2 | -1.53 | -1.66 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 17th | 2 | 210 | 105 | 70.0 | 2.3 | 2 | 105 | 2 | 0 | 1 | 3.00 | 5 | 1 | +4 | +1.71 | +3.71 | Matches | |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 33rd | 1 | 18 | 18 | 10.0 | 0.2 | 0 | 0 | 1 | 17 | 1 | 3.00 | 0 | 0 | 0 | 0.00 | 0.00 | Matches | |
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 33rd | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 2 | -2 | -2.00 | Matches | ||
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 17th | 3 | 330 | 110 | 100.0 | 3.7 | 3 | 110 | 3 | 0 | 0 | 2.00 | 6 | 4 | +2 | +0.55 | Matches | ||
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 9th | 5 | 431 | 86 | 84.5 | 4.8 | 4 | 93 | 2 | 1 | 58 | 0 | 1.60 | 9 | 6 | +3 | +0.63 | +2.90 | Matches |
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 33rd | 1 | 45 | 45 | 25.0 | 0.5 | 0 | 0 | 1 | 45 | 0 | 3.00 | 2 | 0 | +2 | +4.00 | +4.67 | Matches | |
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 1 | 33 | 33 | 36.7 | 0.4 | 0 | 0 | 1 | 33 | 0 | 0.00 | 0 | 2 | -2 | -5.45 | -7.03 | Matches | ||
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 2 | 153 | 77 | 85.0 | 1.7 | 2 | 77 | 1 | 0 | 0 | 0.50 | 2 | 5 | -3 | -1.76 | -1.76 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | Rd3 | 3 | 270 | 90 | 100.0 | 3.0 | 3 | 90 | 3 | 0 | 0 | 1.33 | 7 | 8 | -1 | -0.33 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1 | 90 | 90 | 100.0 | 1.0 | 1 | 90 | 1 | 0 | 0 | 0.00 | 0 | 4 | -4 | -4.00 | Matches | |||
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | Rd2 | 2 | 180 | 90 | 100.0 | 2.0 | 2 | 90 | 2 | 0 | 0 | 1.50 | 5 | 5 | 0 | 0.00 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 2 | 135 | 68 | 45.0 | 1.5 | 1 | 120 | 1 | 1 | 15 | 0 | 2.00 | 3 | 3 | 0 | 0.00 | +0.55 | Matches | |
| 8 Seasons | 2 Clubs | 2 Leagues | 24 | 1,985 | 83 | 73.5 | 22.1 | 19 | 96 | 16 | 5 | 34 | 2 | 1.58 | 39 | 40 | -1 | -0.05 | +0.58 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Reading (5 Seasons) | 2 Leagues | 14 | 1,157 | 83 | 68.9 | 12.9 | 10 | 100 | 8 | 4 | 38 | 2 | 1.86 | 22 | 15 | +7 | +0.54 | +1.23 | |||||
| Cardiff City (3 Seasons) | 2 Leagues | 10 | 828 | 83 | 81.2 | 9.2 | 9 | 90 | 8 | 1 | 15 | 0 | 1.20 | 17 | 25 | -8 | -0.87 | -0.40 | |||||
| FA Cup (6 Seasons) | 12 | 932 | 78 | 74.0 | 10.4 | 9 | 92 | 6 | 3 | 35 | 0 | 1.08 | 14 | 22 | -8 | -0.77 | -0.22 | ||||||
| EFL Cup (6 Seasons) | 12 | 1,053 | 88 | 73.1 | 11.7 | 10 | 99 | 10 | 2 | 31 | 2 | 2.08 | 25 | 18 | +7 | +0.60 | +1.30 | ||||||
| Playing Time | Starts | Subs | Team Success | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2025 | 27 | zw Zimbabwe | Africa Cup of Nations qualification | 6 | 522 | 87 | 96.7 | 5.8 | 6 | 87 | 5 | 0 | 0 | 1.50 | 6 | 4 | +2 | +0.34 | +0.34 | Matches | ||
| 2026 | 28 | zw Zimbabwe | WCQ | 5 | 434 | 87 | 48.2 | 4.8 | 5 | 87 | 1 | 0 | 1 | 0.60 | 4 | 9 | -5 | -1.04 | -0.65 | Matches | ||
| 2 Seasons | 1 Club | 2 Leagues | 11 | 956 | 87 | 66.4 | 10.6 | 11 | 87 | 6 | 0 | 1 | 1.09 | 10 | 13 | -3 | -0.28 | +0.09 | ||||
| Africa Cup of Nations qualification (1 Season) | 6 | 522 | 87 | 96.7 | 5.8 | 6 | 87 | 5 | 0 | 0 | 1.50 | 6 | 4 | +2 | +0.34 | +0.34 | ||||||
| WCQ (1 Season) | 5 | 434 | 87 | 48.2 | 4.8 | 5 | 87 | 1 | 0 | 1 | 0.60 | 4 | 9 | -5 | -1.04 | -0.65 | ||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 22.0 | 4 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 2.3 | 0 | 0 | 0 | 4 | 5 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 4.0 | 2 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 23.5 | 5 | 0 | 0 | 37 | 59 | 1 | 10 | 26 | 41 | 0 | 0 | 0 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 0.2 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 1 | 0 | 6 | 0 | 0 | 0 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 2.9 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 28.7 | 4 | 0 | 0 | 40 | 71 | 0 | 12 | 29 | 48 | 0 | Matches | ||
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 3.7 | 0 | 0 | 0 | 5 | 3 | 0 | 3 | 5 | 5 | 0 | Matches | ||
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 4.8 | 2 | 0 | 0 | 4 | 9 | 0 | 0 | 1 | 0 | 0 | Matches | ||
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 40.4 | 4 | 0 | 0 | 52 | 85 | 2 | 16 | 46 | 45 | 0 | Matches | ||
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 0.5 | 0 | 0 | 0 | 0 | 2 | 0 | 1 | 3 | 1 | 0 | Matches | ||
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 17.8 | 3 | 0 | 0 | 19 | 33 | 1 | 4 | 20 | 23 | 0 | Matches | ||
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 0.4 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 26.7 | 4 | 0 | 0 | 32 | 50 | 0 | 21 | 21 | 37 | 0 | Matches | ||
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 1.7 | 0 | 0 | 0 | 2 | 2 | 2 | 1 | 1 | 1 | 0 | Matches | ||
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 12.5 | 3 | 0 | 0 | 23 | 22 | 0 | 8 | 9 | 16 | 1 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 1.4 | 0 | 0 | 0 | 3 | 2 | 0 | 0 | 1 | 1 | 0 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | 3.0 | 1 | 0 | 0 | 2 | 5 | 0 | 2 | 6 | 6 | 0 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 2 | 3 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 23.4 | 6 | 0 | 0 | 36 | 44 | 1 | 19 | 20 | 41 | 0 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | 2.0 | 0 | 0 | 0 | 4 | 0 | 1 | 0 | 1 | 2 | 0 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 1.5 | 0 | 0 | 0 | 1 | 3 | 0 | 1 | 1 | 5 | 0 | Matches | ||
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 1.3 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | Matches | ||
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 1.4 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 9 Seasons | 3 Clubs | 4 Leagues | 197.8 | 34 | 0 | 0 | 269 | 402 | 8 | 100 | 192 | 280 | 0 | 0 | 1 | |||
| Country | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Reading (6 Seasons) | 4 Leagues | 124.6 | 20 | 0 | 0 | 164 | 271 | 4 | 48 | 132 | 171 | 0 | 0 | 0 | ||||
| Cardiff City (3 Seasons) | 3 Leagues | 60.7 | 11 | 0 | 0 | 82 | 109 | 4 | 44 | 51 | 93 | 0 | ||||||
| Reading (3 Seasons) | 2 Leagues | 28.9 | 6 | 0 | 0 | 0 | ||||||||||||
| Rotherham United (1 Season) | 1 League | 12.5 | 3 | 0 | 0 | 23 | 22 | 0 | 8 | 9 | 16 | 1 | ||||||
| Reading FC (1 Season) | 1 League | 1.4 | 0 | 0 | 0 | 0 | ||||||||||||
| Championship (8 Seasons) | 174.4 | 29 | 0 | 0 | 242 | 366 | 5 | 90 | 172 | 252 | 0 | 0 | 1 | |||||
| FA Cup (6 Seasons) | 10.4 | 3 | 0 | 0 | 10 | 19 | 2 | 3 | 3 | 12 | 0 | 0 | 0 | |||||
| EFL Cup (6 Seasons) | 11.7 | 2 | 0 | 0 | 16 | 16 | 1 | 7 | 15 | 14 | 0 | 0 | 0 | |||||
| PL2 — Div. 1 (2 Seasons) | 23.4 | 4 | 0 | 0 | 0 | |||||||||||||
| PL2 — Div. 2 (2 Seasons) | 6.9 | 2 | 0 | 0 | 0 | |||||||||||||
| League One (1 Season) | 1.3 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | |||||||
| Performance | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2016-2017 | 19 | Reading | 1 League | 22.0 | 4 | 0 | 0 | 0 | |||||||||
| 2017-2018 | 20 | Reading | 1 League | 4.0 | 2 | 0 | 0 | 0 | |||||||||
| 2017-2018 | 20 | Reading | 2 Leagues | 2.3 | 0 | 0 | 0 | 4 | 5 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |
| 2018-2019 | 21 | Reading | 1 League | 2.9 | 0 | 0 | 0 | 0 | |||||||||
| 2018-2019 | 21 | Reading | 3 Leagues | 24.7 | 6 | 0 | 0 | 38 | 62 | 1 | 11 | 26 | 47 | 0 | 0 | 0 | |
| 2019-2020 | 22 | Reading | 3 Leagues | 37.1 | 6 | 0 | 0 | 49 | 83 | 0 | 15 | 35 | 53 | 0 | |||
| 2020-2021 | 23 | Reading | 2 Leagues | 40.9 | 4 | 0 | 0 | 52 | 87 | 2 | 17 | 49 | 46 | 0 | |||
| 2021-2022 | 24 | Reading | 2 Leagues | 18.2 | 4 | 0 | 0 | 20 | 33 | 1 | 4 | 20 | 23 | 0 | |||
| 2022-2023 | 25 | Cardiff City | 2 Leagues | 28.4 | 4 | 0 | 0 | 34 | 52 | 2 | 22 | 22 | 38 | 0 | |||
| 2023-2024 | 26 | Rotherham United | 1 League | 12.5 | 3 | 0 | 0 | 23 | 22 | 0 | 8 | 9 | 16 | 1 | |||
| 2023-2024 | 26 | Cardiff City | 3 Leagues | 5.4 | 1 | 0 | 0 | 7 | 10 | 0 | 2 | 7 | 7 | 0 | |||
| 2024-2025 | 27 | Cardiff City | 3 Leagues | 26.9 | 6 | 0 | 0 | 41 | 47 | 2 | 20 | 22 | 48 | 0 | |||
| 2025-2026 | 28 | Reading FC | 1 League | 1.4 | 0 | 0 | 0 | 0 | |||||||||
| 2025-2026 | 28 | Reading | 1 League | 1.3 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | |||
| 9 Seasons | 3 Clubs | 4 Leagues | 197.8 | 34 | 0 | 0 | 269 | 402 | 8 | 100 | 192 | 280 | 0 | 0 | 1 | ||
| Comp | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Reading (6 Seasons) | 4 Leagues | 124.6 | 20 | 0 | 0 | 164 | 271 | 4 | 48 | 132 | 171 | 0 | 0 | 0 | |||
| Cardiff City (3 Seasons) | 3 Leagues | 60.7 | 11 | 0 | 0 | 82 | 109 | 4 | 44 | 51 | 93 | 0 | |||||
| Reading (3 Seasons) | 2 Leagues | 28.9 | 6 | 0 | 0 | 0 | |||||||||||
| Rotherham United (1 Season) | 1 League | 12.5 | 3 | 0 | 0 | 23 | 22 | 0 | 8 | 9 | 16 | 1 | |||||
| Reading FC (1 Season) | 1 League | 1.4 | 0 | 0 | 0 | 0 | |||||||||||
| Championship (8 Seasons) | 174.4 | 29 | 0 | 0 | 242 | 366 | 5 | 90 | 172 | 252 | 0 | 0 | 1 | ||||
| FA Cup (6 Seasons) | 10.4 | 3 | 0 | 0 | 10 | 19 | 2 | 3 | 3 | 12 | 0 | 0 | 0 | ||||
| EFL Cup (6 Seasons) | 11.7 | 2 | 0 | 0 | 16 | 16 | 1 | 7 | 15 | 14 | 0 | 0 | 0 | ||||
| PL2 — Div. 1 (2 Seasons) | 23.4 | 4 | 0 | 0 | 0 | ||||||||||||
| PL2 — Div. 2 (2 Seasons) | 6.9 | 2 | 0 | 0 | 0 | ||||||||||||
| League One (1 Season) | 1.3 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | ||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2016-2017 | 19 | Reading | eng ENG | Jr. PL2 — Div. 1 | 11th | 22.0 | 4 | 0 | 0 | 0 | Matches | ||||||||
| 2017-2018 | 20 | Reading | eng ENG | Jr. PL2 — Div. 2 | 5th | 4.0 | 2 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 21 | Reading | eng ENG | Jr. PL2 — Div. 2 | 3rd | 2.9 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2018-2019 | 21 | Reading | eng ENG | 2. Championship | 20th | 23.5 | 5 | 0 | 0 | 37 | 59 | 1 | 10 | 26 | 41 | 0 | 0 | 0 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | 2. Championship | 14th | 28.7 | 4 | 0 | 0 | 40 | 71 | 0 | 12 | 29 | 48 | 0 | Matches | ||
| 2020-2021 | 23 | Reading | eng ENG | 2. Championship | 7th | 40.4 | 4 | 0 | 0 | 52 | 85 | 2 | 16 | 46 | 45 | 0 | Matches | ||
| 2021-2022 | 24 | Reading | eng ENG | 2. Championship | 21st | 17.8 | 3 | 0 | 0 | 19 | 33 | 1 | 4 | 20 | 23 | 0 | Matches | ||
| 2022-2023 | 25 | Cardiff City | eng ENG | 2. Championship | 21st | 26.7 | 4 | 0 | 0 | 32 | 50 | 0 | 21 | 21 | 37 | 0 | Matches | ||
| 2023-2024 | 26 | Rotherham United | eng ENG | 2. Championship | 24th | 12.5 | 3 | 0 | 0 | 23 | 22 | 0 | 8 | 9 | 16 | 1 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | 2. Championship | 12th | 1.4 | 0 | 0 | 0 | 3 | 2 | 0 | 0 | 1 | 1 | 0 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | 2. Championship | 24th | 23.4 | 6 | 0 | 0 | 36 | 44 | 1 | 19 | 20 | 41 | 0 | Matches | ||
| 2025-2026 | 28 | Reading FC | eng ENG | Jr. PL2 | 19th | 1.4 | 0 | 0 | 0 | 0 | Matches | ||||||||
| 2025-2026 | 28 | Reading | eng ENG | 3. League One | 12th | 1.3 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | Matches | ||
| 9 Seasons | 3 Clubs | 2 Leagues | 175.7 | 29 | 0 | 0 | 243 | 367 | 5 | 90 | 174 | 254 | 0 | 0 | 1 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Reading (6 Seasons) | 2 Leagues | 111.7 | 16 | 0 | 0 | 149 | 249 | 4 | 42 | 123 | 159 | 0 | 0 | 0 | |||||
| Cardiff City (3 Seasons) | 1 League | 51.5 | 10 | 0 | 0 | 71 | 96 | 1 | 40 | 42 | 79 | 0 | |||||||
| Reading (3 Seasons) | 2 Leagues | 28.9 | 6 | 0 | 0 | 0 | |||||||||||||
| Rotherham United (1 Season) | 1 League | 12.5 | 3 | 0 | 0 | 23 | 22 | 0 | 8 | 9 | 16 | 1 | |||||||
| Reading FC (1 Season) | 1 League | 1.4 | 0 | 0 | 0 | 0 | |||||||||||||
| Championship (8 Seasons) | 174.4 | 29 | 0 | 0 | 242 | 366 | 5 | 90 | 172 | 252 | 0 | 0 | 1 | ||||||
| PL2 — Div. 1 (2 Seasons) | 23.4 | 4 | 0 | 0 | 0 | ||||||||||||||
| PL2 — Div. 2 (2 Seasons) | 6.9 | 2 | 0 | 0 | 0 | ||||||||||||||
| League One (1 Season) | 1.3 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 2 | 2 | 0 | ||||||||
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2017-2018 | 20 | Reading | eng ENG | EFL Cup | 17th | 2.3 | 0 | 0 | 0 | 4 | 5 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | EFL Cup | 33rd | 0.2 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018-2019 | 21 | Reading | eng ENG | FA Cup | 33rd | 1.0 | 0 | 0 | 0 | 0 | 2 | 0 | 1 | 0 | 6 | 0 | 0 | 0 | Matches |
| 2019-2020 | 22 | Reading | eng ENG | EFL Cup | 17th | 3.7 | 0 | 0 | 0 | 5 | 3 | 0 | 3 | 5 | 5 | 0 | Matches | ||
| 2019-2020 | 22 | Reading | eng ENG | FA Cup | 9th | 4.8 | 2 | 0 | 0 | 4 | 9 | 0 | 0 | 1 | 0 | 0 | Matches | ||
| 2020-2021 | 23 | Reading | eng ENG | EFL Cup | 33rd | 0.5 | 0 | 0 | 0 | 0 | 2 | 0 | 1 | 3 | 1 | 0 | Matches | ||
| 2021-2022 | 24 | Reading | eng ENG | FA Cup | 0.4 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | |||
| 2022-2023 | 25 | Cardiff City | eng ENG | FA Cup | 1.7 | 0 | 0 | 0 | 2 | 2 | 2 | 1 | 1 | 1 | 0 | Matches | |||
| 2023-2024 | 26 | Cardiff City | eng ENG | EFL Cup | Rd3 | 3.0 | 1 | 0 | 0 | 2 | 5 | 0 | 2 | 6 | 6 | 0 | Matches | ||
| 2023-2024 | 26 | Cardiff City | eng ENG | FA Cup | 1.0 | 0 | 0 | 0 | 2 | 3 | 0 | 0 | 0 | 0 | 0 | Matches | |||
| 2024-2025 | 27 | Cardiff City | eng ENG | EFL Cup | Rd2 | 2.0 | 0 | 0 | 0 | 4 | 0 | 1 | 0 | 1 | 2 | 0 | Matches | ||
| 2024-2025 | 27 | Cardiff City | eng ENG | FA Cup | 1.5 | 0 | 0 | 0 | 1 | 3 | 0 | 1 | 1 | 5 | 0 | Matches | |||
| 8 Seasons | 2 Clubs | 2 Leagues | 22.1 | 5 | 0 | 0 | 26 | 35 | 3 | 10 | 18 | 26 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Reading (5 Seasons) | 2 Leagues | 12.9 | 4 | 0 | 0 | 15 | 22 | 0 | 6 | 9 | 12 | 0 | 0 | 0 | |||||
| Cardiff City (3 Seasons) | 2 Leagues | 9.2 | 1 | 0 | 0 | 11 | 13 | 3 | 4 | 9 | 14 | 0 | |||||||
| FA Cup (6 Seasons) | 10.4 | 3 | 0 | 0 | 10 | 19 | 2 | 3 | 3 | 12 | 0 | 0 | 0 | ||||||
| EFL Cup (6 Seasons) | 11.7 | 2 | 0 | 0 | 16 | 16 | 1 | 7 | 15 | 14 | 0 | 0 | 0 | ||||||
| Performance | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2025 | 27 | zw Zimbabwe | Africa Cup of Nations qualification | 5.8 | 0 | 0 | 0 | 0 | Matches | |||||||||
| 2026 | 28 | zw Zimbabwe | WCQ | 4.8 | 1 | 0 | 0 | 0 | Matches | |||||||||
| 2 Seasons | 1 Club | 2 Leagues | 10.6 | 1 | 0 | 0 | 0 | |||||||||||
| Africa Cup of Nations qualification (1 Season) | 5.8 | 0 | 0 | 0 | 0 | |||||||||||||
| WCQ (1 Season) | 4.8 | 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