Age 28
Height 170 cm
Foot Left
Country Wales
Value €5.6m
Contract 2027-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
7.14
43 matches
Last 5
7.04
-0.10 vs season
Best
8.3
vs Bristol City
MOTM
2
of 49 matches
Rating by match (last 30)
≥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
43
Goals
0
Assists
3
Rating
7.14
Goals
0
0%
Assists
3
73%
Rating
7.17
88%
Matches
42
89%
Started
41
93%
Minutes
3552
93%
🎯
Stats compared to other fullbacks
Championship · percentile vs peers
Chances created
74%
Aerial duels
30%
Defensive actions
22%
Goals
0%
Shot attempts
15%
Touches
93%
🎯
Shot Map
15 shots per season
Goals
0
On target
5
xG
0.64
Conversion
0%
Goal
Saved
Off target
🔥
Heatmap
3186 touches this season
Attack
Touches
3186
Attack
27%
Middle
47%
Ø position
50%
Detailed Stats & Percentiles (Championship)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 36%
|
Per 90 pctl
avg 20%
|
|---|---|---|---|---|
| Goals | 0 | 0.00 |
0
|
0
|
| xG | 0.64 | 0.02 |
49
|
22
|
| xGOT | 0.03 | 0.00 |
28
|
24
|
| xG excl. penalty | 0.64 | 0.02 |
49
|
22
|
| Shots | 15 | 0.38 |
66
|
27
|
| Shots on target | 1 | 0.03 |
24
|
25
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 79%
|
Per 90 pctl
avg 63%
|
|---|---|---|---|---|
| Assists | 3 | 0.08 |
73
|
57
|
| xA | 5.09 | 0.13 |
88
|
68
|
| Accurate passes | 1676 | 42.47 |
96
|
88
|
| Pass accuracy | 86.7 | 86.66 |
94
|
94
|
| Accurate long balls | 44 | 1.11 |
72
|
29
|
| Long ball accuracy | 34.9 | 34.92 |
61
|
61
|
| Chances created | 48 | 1.22 |
92
|
69
|
| Big chances created | 5 | 0.13 |
74
|
48
|
| Successful crosses | 25 | 0.63 |
80
|
52
|
| Cross accuracy | 24.3 | 24.27 |
64
|
64
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 56%
|
Per 90 pctl
avg 37%
|
|---|---|---|---|---|
| Dribbles | 27 | 0.68 |
94
|
67
|
| Dribbles success rate | 47.4 | 47.37 |
55
|
55
|
| Duels won | 138 | 3.50 |
76
|
12
|
| Duels won % | 49.8 | 49.82 |
24
|
24
|
| Aerials won | 27 | 0.68 |
63
|
12
|
| Aerials won % | 39.7 | 39.71 |
19
|
19
|
| Touches | 2837 | 71.88 |
94
|
76
|
| Touches in opposition box | 43 | 1.09 |
78
|
37
|
| Dispossessed | 18 | 0.46 |
14
|
57
|
| Fouls won | 13 | 0.33 |
47
|
11
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 66%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Defensive actions | 202 | 5.12 |
82
|
22
|
| Tackles | 71 | 1.80 |
88
|
45
|
| Interceptions | 43 | 1.09 |
87
|
57
|
| Blocked scoring attempt | 9 | 0.23 |
75
|
39
|
| Fouls committed | 26 | 0.66 |
74
|
29
|
| Recoveries | 172 | 4.36 |
94
|
71
|
| Possession won final 3rd | 7 | 0.18 |
81
|
52
|
| Dribbled past | 24 | 0.61 |
8
|
47
|
| Clearances | 79 | 2.00 |
68
|
23
|
| Clean sheets | 12 | 0.30 |
94
|
91
|
| Goals conceded while on pitch | 36 | 0.91 |
26
|
86
|
| xG against while on pitch | 40.01 | 1.01 |
17
|
82
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 9%
|
Per 90 pctl
avg 30%
|
|---|---|---|---|---|
| Yellow cards | 6 | 0.15 |
19
|
52
|
| Red cards | 1 | 0.03 |
0
|
8
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 36%
|
Per 90 pctl
avg 20%
|
|---|---|---|---|---|
| Goals | 0 | 0.00 |
0
|
0
|
| xG | 0.64 | 0.02 |
49
|
22
|
| xGOT | 0.03 | 0.00 |
28
|
24
|
| xG excl. penalty | 0.64 | 0.02 |
49
|
22
|
| Shots | 15 | 0.38 |
66
|
27
|
| Shots on target | 1 | 0.03 |
24
|
25
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 79%
|
Per 90 pctl
avg 63%
|
|---|---|---|---|---|
| Assists | 3 | 0.08 |
73
|
57
|
| xA | 5.09 | 0.13 |
88
|
68
|
| Accurate passes | 1676 | 42.47 |
96
|
88
|
| Pass accuracy | 86.7 | 86.66 |
94
|
94
|
| Accurate long balls | 44 | 1.11 |
72
|
29
|
| Long ball accuracy | 34.9 | 34.92 |
61
|
61
|
| Chances created | 48 | 1.22 |
92
|
69
|
| Big chances created | 5 | 0.13 |
74
|
48
|
| Successful crosses | 25 | 0.63 |
80
|
52
|
| Cross accuracy | 24.3 | 24.27 |
64
|
64
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 56%
|
Per 90 pctl
avg 37%
|
|---|---|---|---|---|
| Dribbles | 27 | 0.68 |
94
|
67
|
| Dribbles success rate | 47.4 | 47.37 |
55
|
55
|
| Duels won | 138 | 3.50 |
76
|
12
|
| Duels won % | 49.8 | 49.82 |
24
|
24
|
| Aerials won | 27 | 0.68 |
63
|
12
|
| Aerials won % | 39.7 | 39.71 |
19
|
19
|
| Touches | 2837 | 71.88 |
94
|
76
|
| Touches in opposition box | 43 | 1.09 |
78
|
37
|
| Dispossessed | 18 | 0.46 |
14
|
57
|
| Fouls won | 13 | 0.33 |
47
|
11
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 66%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Defensive actions | 202 | 5.12 |
82
|
22
|
| Tackles | 71 | 1.80 |
88
|
45
|
| Interceptions | 43 | 1.09 |
87
|
57
|
| Blocked scoring attempt | 9 | 0.23 |
75
|
39
|
| Fouls committed | 26 | 0.66 |
74
|
29
|
| Recoveries | 172 | 4.36 |
94
|
71
|
| Possession won final 3rd | 7 | 0.18 |
81
|
52
|
| Dribbled past | 24 | 0.61 |
8
|
47
|
| Clearances | 79 | 2.00 |
68
|
23
|
| Clean sheets | 12 | 0.30 |
94
|
91
|
| Goals conceded while on pitch | 36 | 0.91 |
26
|
86
|
| xG against while on pitch | 40.01 | 1.01 |
17
|
82
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 9%
|
Per 90 pctl
avg 30%
|
|---|---|---|---|---|
| Yellow cards | 6 | 0.15 |
19
|
52
|
| Red cards | 1 | 0.03 |
0
|
8
|
Recent Matches (53)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-04-26 | vs Wrexham | Championship | 3-1 | 90 | 0 | 0 | 7.7 |
| 2026-04-21 | vs Portsmouth | Championship | 5-1 | 64 | 0 | 0 | 7.0 |
| 2026-04-17 | @ Blackburn Rovers | Championship | 1-1 | 90 | 0 | 0 | 6.5 |
| 2026-04-11 | vs Sheffield Wednesday | Championship | 0-0 | 90 | 0 | 0 | 7.4 |
| 2026-04-06 | @ Hull City | Championship | 0-0 | 90 | 0 | 0 | 6.6 |
| 2026-04-03 | vs Derby County | Championship | 3-2 | 90 | 0 | 0 | 6.9 |
| 2026-03-31 | vs Northern Ireland | Friendlies | 1-1 | 88 | 0 | 0 | 7.8 |
| 2026-03-26 | vs Bosnia and Herzegovina | World Cup Qualification UEFA 2nd Round | 1-1 | 120 | 0 | 0 | 7.3 |
| 2026-03-21 | @ Swansea City | Championship | 0-3 | 82 | 0 | 0 | 7.3 |
| 2026-03-14 | vs Southampton | Championship | 1-2 | 90 | 0 | 0 | 7.4 |
| 2026-03-11 | vs Preston North End | Championship | 3-0 | 90 | 0 | 0 | 8.1 |
| 2026-03-07 | @ Bristol City | Championship | 0-2 | 90 | 0 | 1 | 8.3 |
| 2026-02-28 | vs Stoke City | Championship | 2-1 | 90 | 0 | 1 | 8.3 ⭐ |
| 2026-02-25 | @ Sheffield United | Championship | 1-2 | 90 | 0 | 0 | 7.0 |
| 2026-02-21 | @ West Bromwich Albion | Championship | 0-2 | 90 | 0 | 0 | 7.5 |
| 2026-02-16 | vs Middlesbrough | Championship | 3-1 | 90 | 0 | 0 | 7.5 |
| 2026-02-07 | vs Oxford United | Championship | 0-0 | 90 | 0 | 0 | 6.6 |
| 2026-01-31 | @ Queens Park Rangers | Championship | 2-1 | 90 | 0 | 0 | 6.5 |
| 2026-01-26 | @ Norwich City | Championship | 2-1 | 90 | 0 | 0 | 6.8 |
| 2026-01-20 | vs Millwall | Championship | 2-1 | 90 | 0 | 0 | 7.9 ⭐ |
| 2026-01-17 | vs Leicester City | Championship | 2-1 | 90 | 0 | 0 | 7.6 |
| 2026-01-10 | @ Stoke City | FA Cup | 1-0 | 0 | 0 | 0 | |
| 2026-01-04 | @ Birmingham City | Championship | 3-2 | 90 | 0 | 0 | 6.3 |
| 2025-12-20 | @ Southampton | Championship | 1-1 | 47 | 0 | 0 | 5.6 |
| 2025-12-13 | vs Bristol City | Championship | 1-0 | 90 | 0 | 0 | 7.9 |
| 2025-12-09 | @ Preston North End | Championship | 1-1 | 90 | 0 | 0 | 6.8 |
| 2025-12-06 | @ Ipswich Town | Championship | 3-0 | 90 | 0 | 0 | 6.3 |
| 2025-11-29 | vs Charlton Athletic | Championship | 3-1 | 88 | 0 | 0 | 7.6 |
| 2025-11-25 | @ Middlesbrough | Championship | 2-4 | 90 | 0 | 1 | 8.1 |
| 2025-11-22 | vs West Bromwich Albion | Championship | 3-2 | 90 | 0 | 0 | 6.4 |
| 2025-11-18 | vs North Macedonia | World Cup Qualification UEFA 1st Round Grp. J | 7-1 | 90 | 0 | 1 | 8.0 |
| 2025-11-15 | @ Liechtenstein | World Cup Qualification UEFA 1st Round Grp. J | 0-1 | 90 | 0 | 0 | 7.7 |
| 2025-11-08 | @ Stoke City | Championship | 0-1 | 90 | 0 | 0 | 7.9 |
| 2025-11-04 | vs Sheffield United | Championship | 3-1 | 90 | 0 | 0 | 7.2 |
| 2025-10-31 | @ Wrexham | Championship | 3-2 | 16 | 0 | 0 | 6.0 |
| 2025-10-25 | vs Watford | Championship | 3-1 | 90 | 0 | 0 | 7.3 |
| 2025-10-21 | @ Portsmouth | Championship | 1-2 | 88 | 0 | 0 | 7.3 |
| 2025-10-18 | vs Blackburn Rovers | Championship | 2-0 | 90 | 0 | 0 | 7.4 |
| 2025-10-13 | vs Belgium | World Cup Qualification UEFA 1st Round Grp. J | 2-4 | 4 | 0 | 0 | |
| 2025-10-09 | @ England | Friendlies | 3-0 | 90 | 0 | 0 | 6.2 |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Coventry City | senior | 43 | 0 | 3 | 7.14 |
| 2024/2025 | Coventry City | senior | 37 | 0 | 1 | 6.77 |
| 2023/2024 | Coventry City | senior | 42 | 0 | 5 | 6.86 |
| 2022/2023 | Bristol City | senior | 38 | 0 | 1 | 6.84 |
| 2021/2022 | Bristol City | senior | 37 | 1 | 4 | 6.73 |
| 2020/2021 | Bristol City | senior | 12 | 1 | 1 | 6.70 |
| 2019/2020 | Bristol City | senior | 25 | 0 | 2 | 6.71 |
| 2018/2019 | Bristol City | senior | 32 | 0 | 3 | 6.64 |
| 2017/2018 | Charlton Athletic | senior | 44 | 0 | 3 | - |
| 2016/2017 | Charlton Athletic | senior | 10 | 0 | 1 | - |
| 2016/2017 | Chelsea U23 | youth | 13 | 2 | 3 | - |
| 2015/2016 | Chelsea U19 | youth | 7 | 1 | 0 | - |
| 2014/2015 | Chelsea U19 | youth | 9 | 0 | 0 | - |
| 2013/2014 | Chelsea U19 | youth | 1 | 0 | 0 | - |
| 2026 | Wales | national team | 6 | 0 | 2 | 7.79 |
| 2025 | Wales | national team | 1 | 0 | 0 | 6.22 |
| 2024 | Wales | national team | 2 | 0 | 0 | 6.50 |
| 2019 | England U21 | national team | 5 | 0 | 0 | - |
| 2018 | England U21 | national team | 5 | 0 | 1 | - |
| 2017 | England U19 | national team | 11 | 0 | 0 | - |
| 2015 | England U17 | national team | 12 | 1 | 0 | - |
Transfer Value History
Teammates
Harri Laidler
Raphael Borges Rodrigues
Oliver Nnonyelu Dovin
Bobby Thomas
Jack Rudoni
Matt Grimes
Tatsuhiro Sakamoto
Jamie Allen
Ellis Simms
Ephron Mason-Clark
Haji Wright
Ben Wilson
Liam Kitching
Min-Hyeok Yang
Kaine Kesler-Hayden
Jake Bidwell
Joel Latibeaudiere
Brandon Thomas-Asante
Jahnoah Markelo
Luke Woolfenden
Milan van Ewijk
Josh Eccles
Victor Torp
Miguel Ángel Brau
Bradley Collins
Oscar Varney
Trophies
Coventry City
🏆
Championship
x1
England U21
🏆
Tournoi Maurice Revello
x1
England U19
🏆
UEFA U19 Championship
x1
Chelsea
🏆
Premier League
x1
🏆
EFL Cup
x1
Chelsea U19
🏆
UEFA Youth League
x2