Age 24
Height 177 cm
Foot Left
Country England
Value €1.1m
Contract 2029-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
7.22
29 matches
Last 5
7.40
+0.18 vs season
Best
8.9
vs Northampton Town
MOTM
4
of 27 matches
Rating by match (last 27)
≥8.0
7.0–8.0
6.0–7.0
5.5–6.0
<5.5
🧬
Attributes
Chances created
Aerial duels
Defensive actions
Goals
Shot attempts
Touches
Filter:
Apps
29
Goals
3
Assists
12
Rating
7.22
Goals
3
60%
Assists
12
98%
Rating
7.22
96%
Matches
28
57%
Started
25
80%
Minutes
1970
76%
🎯
Stats compared to other attacking midfielders/wingers
League One · percentile vs peers
Chances created
75%
Aerial duels
56%
Defensive actions
27%
Goals
28%
Shot attempts
92%
Touches
77%
🎯
Shot Map
63 shots per season
Goals
3
On target
41
xG
3.59
Conversion
5%
Goal
Saved
Off target
🔥
Heatmap
1377 touches this season
Attack
Touches
1377
Attack
66%
Middle
23%
Ø position
71%
Detailed Stats & Percentiles (League One)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 68%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Goals | 3 | 0.14 |
60
|
46
|
| xG | 3.49 | 0.16 |
69
|
47
|
| xGOT | 4.32 | 0.20 |
76
|
60
|
| xG excl. penalty | 3.49 | 0.16 |
71
|
47
|
| Shots | 63 | 2.88 |
91
|
92
|
| Shots on target | 14 | 0.64 |
76
|
57
|
| Headed shots | 1 | 0.05 |
31
|
33
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 81%
|
Per 90 pctl
avg 77%
|
|---|---|---|---|---|
| Assists | 12 | 0.55 |
98
|
98
|
| xA | 4.21 | 0.19 |
89
|
83
|
| Accurate passes | 486 | 22.20 |
84
|
74
|
| Pass accuracy | 76.1 | 76.06 |
65
|
65
|
| Accurate long balls | 13 | 0.59 |
64
|
41
|
| Long ball accuracy | 54.2 | 54.17 |
89
|
89
|
| Chances created | 38 | 1.74 |
89
|
87
|
| Big chances created | 11 | 0.50 |
96
|
96
|
| Successful crosses | 29 | 1.32 |
95
|
94
|
| Cross accuracy | 18.0 | 18.01 |
44
|
44
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 62%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Dribbles | 30 | 1.37 |
84
|
74
|
| Dribbles success rate | 46.2 | 46.15 |
65
|
65
|
| Duels won | 84 | 3.84 |
64
|
23
|
| Duels won % | 39.4 | 39.44 |
39
|
39
|
| Aerials won | 15 | 0.69 |
60
|
39
|
| Aerials won % | 38.5 | 38.46 |
70
|
70
|
| Touches | 1169 | 53.41 |
84
|
80
|
| Touches in opposition box | 130 | 5.94 |
92
|
91
|
| Dispossessed | 31 | 1.42 |
23
|
56
|
| Fouls won | 11 | 0.50 |
39
|
7
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 54%
|
Per 90 pctl
avg 47%
|
|---|---|---|---|---|
| Defensive actions | 46 | 2.10 |
60
|
19
|
| Tackles | 29 | 1.32 |
72
|
45
|
| Interceptions | 10 | 0.46 |
69
|
52
|
| Fouls committed | 21 | 0.96 |
65
|
26
|
| Recoveries | 73 | 3.34 |
71
|
34
|
| Possession won final 3rd | 22 | 1.01 |
93
|
92
|
| Dribbled past | 19 | 0.87 |
13
|
27
|
| Clearances | 7 | 0.32 |
31
|
7
|
| Clean sheets | 2 | 0.09 |
71
|
73
|
| Goals conceded while on pitch | 24 | 1.10 |
28
|
78
|
| xG against while on pitch | 26.38 | 1.21 |
23
|
64
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 64%
|
Per 90 pctl
avg 76%
|
|---|---|---|---|---|
| Yellow cards | 3 | 0.14 |
28
|
53
|
| Red cards | 0 | 0.00 |
100
|
100
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 68%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Goals | 3 | 0.14 |
60
|
46
|
| xG | 3.49 | 0.16 |
69
|
47
|
| xGOT | 4.32 | 0.20 |
76
|
60
|
| xG excl. penalty | 3.49 | 0.16 |
71
|
47
|
| Shots | 63 | 2.88 |
91
|
92
|
| Shots on target | 14 | 0.64 |
76
|
57
|
| Headed shots | 1 | 0.05 |
31
|
33
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 81%
|
Per 90 pctl
avg 77%
|
|---|---|---|---|---|
| Assists | 12 | 0.55 |
98
|
98
|
| xA | 4.21 | 0.19 |
89
|
83
|
| Accurate passes | 486 | 22.20 |
84
|
74
|
| Pass accuracy | 76.1 | 76.06 |
65
|
65
|
| Accurate long balls | 13 | 0.59 |
64
|
41
|
| Long ball accuracy | 54.2 | 54.17 |
89
|
89
|
| Chances created | 38 | 1.74 |
89
|
87
|
| Big chances created | 11 | 0.50 |
96
|
96
|
| Successful crosses | 29 | 1.32 |
95
|
94
|
| Cross accuracy | 18.0 | 18.01 |
44
|
44
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 62%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Dribbles | 30 | 1.37 |
84
|
74
|
| Dribbles success rate | 46.2 | 46.15 |
65
|
65
|
| Duels won | 84 | 3.84 |
64
|
23
|
| Duels won % | 39.4 | 39.44 |
39
|
39
|
| Aerials won | 15 | 0.69 |
60
|
39
|
| Aerials won % | 38.5 | 38.46 |
70
|
70
|
| Touches | 1169 | 53.41 |
84
|
80
|
| Touches in opposition box | 130 | 5.94 |
92
|
91
|
| Dispossessed | 31 | 1.42 |
23
|
56
|
| Fouls won | 11 | 0.50 |
39
|
7
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 54%
|
Per 90 pctl
avg 47%
|
|---|---|---|---|---|
| Defensive actions | 46 | 2.10 |
60
|
19
|
| Tackles | 29 | 1.32 |
72
|
45
|
| Interceptions | 10 | 0.46 |
69
|
52
|
| Fouls committed | 21 | 0.96 |
65
|
26
|
| Recoveries | 73 | 3.34 |
71
|
34
|
| Possession won final 3rd | 22 | 1.01 |
93
|
92
|
| Dribbled past | 19 | 0.87 |
13
|
27
|
| Clearances | 7 | 0.32 |
31
|
7
|
| Clean sheets | 2 | 0.09 |
71
|
73
|
| Goals conceded while on pitch | 24 | 1.10 |
28
|
78
|
| xG against while on pitch | 26.38 | 1.21 |
23
|
64
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 64%
|
Per 90 pctl
avg 76%
|
|---|---|---|---|---|
| Yellow cards | 3 | 0.14 |
28
|
53
|
| Red cards | 0 | 0.00 |
100
|
100
|
Recent Matches (32)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-05-02 | @ Mansfield Town | League One | 5-4 | 90 | 0 | 1 | 8.1 |
| 2026-04-25 | vs Northampton Town | League One | 5-1 | 65 | 2 | 0 | 8.9 ⭐ |
| 2026-04-22 | vs Port Vale | League One | 1-0 | 0 | 0 | 0 | |
| 2026-04-18 | @ Reading | League One | 1-3 | 89 | 0 | 0 | 6.3 |
| 2026-04-14 | @ Huddersfield Town | League One | 1-1 | 90 | 0 | 0 | 6.9 |
| 2026-04-11 | vs Bolton Wanderers | League One | 2-0 | 90 | 0 | 0 | 6.8 |
| 2026-04-06 | @ Peterborough United | League One | 1-1 | 90 | 0 | 0 | 7.1 |
| 2026-03-21 | vs Blackpool | League One | 0-0 | 61 | 0 | 0 | 6.0 |
| 2026-03-17 | vs Wycombe Wanderers | League One | 0-2 | 63 | 0 | 0 | 6.4 |
| 2026-03-14 | @ Exeter City | League One | 0-4 | 71 | 0 | 1 | 7.4 |
| 2026-03-10 | @ Barnsley | League One | 1-1 | 90 | 0 | 1 | 8.0 |
| 2026-03-07 | vs Lincoln City | League One | 0-2 | 76 | 0 | 0 | 5.9 |
| 2026-02-28 | @ Doncaster Rovers | League One | 0-4 | 80 | 0 | 0 | 6.9 |
| 2026-02-21 | @ Plymouth Argyle | League One | 5-2 | 90 | 0 | 0 | 7.2 |
| 2026-02-17 | vs AFC Wimbledon | League One | 4-1 | 74 | 1 | 1 | 8.7 ⭐ |
| 2026-02-14 | vs Luton Town | League One | 3-1 | 90 | 0 | 1 | 8.4 |
| 2026-02-07 | @ Rotherham United | League One | 0-3 | 77 | 0 | 2 | 8.7 ⭐ |
| 2026-01-31 | @ Burton Albion | League One | 2-2 | 90 | 0 | 0 | 6.2 |
| 2026-01-27 | vs Barnsley | League One | 4-0 | 71 | 0 | 1 | 7.4 |
| 2026-01-24 | vs Stockport County | League One | 1-1 | 68 | 0 | 1 | 7.2 |
| 2026-01-17 | @ Bradford City | League One | 1-2 | 64 | 0 | 2 | 8.2 |
| 2026-01-10 | @ Leyton Orient | League One | 1-1 | 60 | 0 | 0 | 6.8 |
| 2026-01-04 | vs Wigan Athletic | League One | 1-0 | 17 | 0 | 0 | 6.0 |
| 2026-01-01 | @ Wycombe Wanderers | League One | 1-1 | 23 | 0 | 0 | 6.2 |
| 2025-12-29 | vs Stevenage | League One | 2-1 | 7 | 0 | 0 | |
| 2025-12-26 | vs Exeter City | League One | 1-0 | 0 | 0 | 0 | |
| 2025-12-20 | @ Lincoln City | League One | 2-1 | 0 | 0 | 0 | |
| 2025-08-19 | @ AFC Wimbledon | League One | 0-1 | 44 | 0 | 0 | 6.9 |
| 2025-08-16 | vs Rotherham United | League One | 3-0 | 90 | 0 | 0 | 7.1 |
| 2025-08-12 | vs Swindon Town | EFL Cup | 2-1 | 3 | 0 | 0 | |
| 2025-08-07 | @ Port Vale | League One | 0-0 | 61 | 0 | 0 | 6.6 |
| 2025-08-02 | vs Peterborough United | League One | 2-1 | 89 | 0 | 1 | 8.5 ⭐ |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Cardiff City | senior | 29 | 3 | 12 | 7.22 |
| 2024/2025 | Cardiff City | senior | 31 | 2 | 3 | 6.73 |
| 2023/2024 | Cardiff City | senior | 40 | 2 | 1 | 6.54 |
| 2022/2023 | York City | senior | 7 | 0 | 0 | - |
| 2022/2023 | Cardiff City | senior | 2 | 0 | 0 | 6.00 |
| 2019/2020 | Bromley | senior | 3 | 0 | 0 | - |
| 2022/2023 | Cardiff City FC Under 21 | youth | 1 | 0 | 0 | - |
Transfer Value History
Teammates
Kion Etete
Luey Giles
Michael Reindorf
Morgan Wigley
T-Jay Parfitt
Tanatswa Nyakuhwa
Will Spiers
William Fish
Joel Bagan
Gabriel Osho
Ryan Wintle
Rubin Colwill
Calum Chambers
Nathan Trott
David Turnbull
Chris Willock
Alex Robertson
Yousef Salech
Eli King
Joel Colwill
Harry Tyrer
Axel Donczew
Perry Ng
Isaak Davies
Matthew Turner
Ronan Kpakio
Cian Ashford
Callum Robinson
Dylan Lawlor
Daniel Higgs
Rob Tankiewicz
Trey George
Noah Williams
Cardiff City