Age 33
Height 195 cm
Foot Right
Country Wales
Value €1.4m
Contract 2028-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
6.93
43 matches
Last 5
6.04
-0.89 vs season
Best
9.6
vs Coventry City
MOTM
4
of 46 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
13
Assists
4
Rating
6.93
Goals
11
86%
Assists
4
90%
Rating
6.95
91%
Matches
39
72%
Started
30
79%
Minutes
2694
82%
🎯
Stats compared to other forwards
Championship · percentile vs peers
Chances created
56%
Aerial duels
98%
Defensive actions
83%
Goals
66%
Shot attempts
77%
Touches
86%
🎯
Shot Map
78 shots per season
Goals
11
On target
45
xG
10.99
Conversion
14%
Goal
Saved
Off target
🔥
Heatmap
1765 touches this season
Attack
Touches
1765
Attack
43%
Middle
48%
Ø position
62%
Detailed Stats & Percentiles (Championship)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 87%
|
Per 90 pctl
avg 67%
|
|---|---|---|---|---|
| Goals | 11 | 0.37 |
86
|
66
|
| xG | 10.95 | 0.37 |
84
|
58
|
| xGOT | 10.54 | 0.35 |
82
|
59
|
| xG excl. penalty | 10.16 | 0.34 |
85
|
60
|
| Shots | 78 | 2.61 |
89
|
70
|
| Shots on target | 29 | 0.97 |
83
|
64
|
| Headed shots | 30 | 1.00 |
97
|
90
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 71%
|
Per 90 pctl
avg 61%
|
|---|---|---|---|---|
| Assists | 4 | 0.13 |
90
|
76
|
| xA | 2.25 | 0.08 |
82
|
63
|
| Accurate passes | 391 | 13.06 |
85
|
67
|
| Pass accuracy | 55.9 | 55.86 |
9
|
9
|
| Accurate long balls | 19 | 0.63 |
95
|
88
|
| Long ball accuracy | 50.0 | 50.00 |
50
|
50
|
| Chances created | 29 | 0.97 |
86
|
64
|
| Big chances created | 7 | 0.23 |
91
|
80
|
| Successful crosses | 2 | 0.07 |
71
|
57
|
| Cross accuracy | 13.3 | 13.33 |
53
|
53
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 82%
|
Per 90 pctl
avg 79%
|
|---|---|---|---|---|
| Dribbles | 15 | 0.50 |
78
|
47
|
| Dribbles success rate | 44.1 | 44.12 |
65
|
65
|
| Duels won | 285 | 9.52 |
100
|
97
|
| Duels won % | 51.6 | 51.63 |
97
|
97
|
| Aerials won | 211 | 7.05 |
97
|
97
|
| Aerials won % | 59.6 | 59.60 |
100
|
100
|
| Touches | 1225 | 40.92 |
92
|
91
|
| Touches in opposition box | 153 | 5.11 |
92
|
75
|
| Dispossessed | 42 | 1.40 |
14
|
33
|
| Fouls won | 43 | 1.44 |
90
|
76
|
| Penalties awarded | 1 | 0.03 |
82
|
86
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 62%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Defensive actions | 84 | 2.81 |
92
|
80
|
| Tackles | 16 | 0.53 |
73
|
38
|
| Interceptions | 5 | 0.17 |
67
|
42
|
| Blocked scoring attempt | 2 | 0.07 |
48
|
41
|
| Fouls committed | 52 | 1.74 |
90
|
70
|
| Recoveries | 75 | 2.51 |
88
|
61
|
| Possession won final 3rd | 18 | 0.60 |
88
|
64
|
| Dribbled past | 13 | 0.43 |
9
|
30
|
| Clearances | 61 | 2.04 |
97
|
91
|
| Clean sheets | 2 | 0.07 |
71
|
67
|
| Goals conceded while on pitch | 45 | 1.50 |
5
|
22
|
| xG against while on pitch | 41.36 | 1.38 |
10
|
39
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 54%
|
Per 90 pctl
avg 70%
|
|---|---|---|---|---|
| Yellow cards | 5 | 0.17 |
9
|
41
|
| Red cards | 0 | 0.00 |
100
|
100
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 87%
|
Per 90 pctl
avg 67%
|
|---|---|---|---|---|
| Goals | 11 | 0.37 |
86
|
66
|
| xG | 10.95 | 0.37 |
84
|
58
|
| xGOT | 10.54 | 0.35 |
82
|
59
|
| xG excl. penalty | 10.16 | 0.34 |
85
|
60
|
| Shots | 78 | 2.61 |
89
|
70
|
| Shots on target | 29 | 0.97 |
83
|
64
|
| Headed shots | 30 | 1.00 |
97
|
90
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 71%
|
Per 90 pctl
avg 61%
|
|---|---|---|---|---|
| Assists | 4 | 0.13 |
90
|
76
|
| xA | 2.25 | 0.08 |
82
|
63
|
| Accurate passes | 391 | 13.06 |
85
|
67
|
| Pass accuracy | 55.9 | 55.86 |
9
|
9
|
| Accurate long balls | 19 | 0.63 |
95
|
88
|
| Long ball accuracy | 50.0 | 50.00 |
50
|
50
|
| Chances created | 29 | 0.97 |
86
|
64
|
| Big chances created | 7 | 0.23 |
91
|
80
|
| Successful crosses | 2 | 0.07 |
71
|
57
|
| Cross accuracy | 13.3 | 13.33 |
53
|
53
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 82%
|
Per 90 pctl
avg 79%
|
|---|---|---|---|---|
| Dribbles | 15 | 0.50 |
78
|
47
|
| Dribbles success rate | 44.1 | 44.12 |
65
|
65
|
| Duels won | 285 | 9.52 |
100
|
97
|
| Duels won % | 51.6 | 51.63 |
97
|
97
|
| Aerials won | 211 | 7.05 |
97
|
97
|
| Aerials won % | 59.6 | 59.60 |
100
|
100
|
| Touches | 1225 | 40.92 |
92
|
91
|
| Touches in opposition box | 153 | 5.11 |
92
|
75
|
| Dispossessed | 42 | 1.40 |
14
|
33
|
| Fouls won | 43 | 1.44 |
90
|
76
|
| Penalties awarded | 1 | 0.03 |
82
|
86
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 62%
|
Per 90 pctl
avg 54%
|
|---|---|---|---|---|
| Defensive actions | 84 | 2.81 |
92
|
80
|
| Tackles | 16 | 0.53 |
73
|
38
|
| Interceptions | 5 | 0.17 |
67
|
42
|
| Blocked scoring attempt | 2 | 0.07 |
48
|
41
|
| Fouls committed | 52 | 1.74 |
90
|
70
|
| Recoveries | 75 | 2.51 |
88
|
61
|
| Possession won final 3rd | 18 | 0.60 |
88
|
64
|
| Dribbled past | 13 | 0.43 |
9
|
30
|
| Clearances | 61 | 2.04 |
97
|
91
|
| Clean sheets | 2 | 0.07 |
71
|
67
|
| Goals conceded while on pitch | 45 | 1.50 |
5
|
22
|
| xG against while on pitch | 41.36 | 1.38 |
10
|
39
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 54%
|
Per 90 pctl
avg 70%
|
|---|---|---|---|---|
| Yellow cards | 5 | 0.17 |
9
|
41
|
| Red cards | 0 | 0.00 |
100
|
100
|
Recent Matches (50)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-05-02 | vs Middlesbrough | Championship | 2-2 | 17 | 0 | 0 | 6.1 |
| 2026-04-26 | @ Coventry City | Championship | 3-1 | 18 | 0 | 0 | 6.1 |
| 2026-04-21 | @ Oxford United | Championship | 0-1 | 19 | 0 | 0 | 6.5 |
| 2026-04-18 | vs Stoke City | Championship | 2-0 | 11 | 0 | 0 | 6.0 |
| 2026-04-12 | @ Birmingham City | Championship | 2-0 | 74 | 0 | 0 | 5.5 |
| 2026-04-07 | vs Southampton | Championship | 1-5 | 84 | 0 | 1 | 7.8 |
| 2026-04-03 | @ West Bromwich Albion | Championship | 2-2 | 21 | 0 | 0 | 6.3 |
| 2026-03-07 | vs Chelsea | FA Cup | 2-4 | 54 | 0 | 0 | 6.0 |
| 2026-02-28 | @ Charlton Athletic | Championship | 0-1 | 89 | 0 | 0 | 6.0 |
| 2026-02-24 | vs Portsmouth | Championship | 2-1 | 23 | 0 | 0 | 6.0 |
| 2026-02-21 | vs Ipswich Town | Championship | 5-3 | 90 | 1 | 1 | 8.3 |
| 2026-02-17 | @ Bristol City | Championship | 2-2 | 19 | 0 | 0 | 6.2 |
| 2026-02-13 | vs Ipswich Town | FA Cup | 1-0 | 15 | 0 | 0 | 5.7 |
| 2026-02-07 | vs Millwall | Championship | 0-2 | 90 | 0 | 0 | 6.3 |
| 2026-01-31 | @ Sheffield Wednesday | Championship | 0-1 | 12 | 0 | 0 | 6.0 |
| 2026-01-24 | @ Queens Park Rangers | Championship | 2-3 | 90 | 0 | 0 | 7.2 |
| 2026-01-20 | vs Leicester City | Championship | 1-1 | 90 | 0 | 0 | 6.5 |
| 2026-01-17 | vs Norwich City | Championship | 1-2 | 21 | 0 | 0 | 6.3 |
| 2025-12-29 | vs Preston North End | Championship | 2-1 | 45 | 0 | 1 | 7.3 |
| 2025-12-26 | vs Sheffield United | Championship | 5-3 | 82 | 2 | 0 | 8.5 |
| 2025-12-19 | @ Swansea City | Championship | 2-1 | 90 | 0 | 0 | 6.6 |
| 2025-12-13 | vs Watford | Championship | 2-2 | 90 | 0 | 0 | 7.1 |
| 2025-12-10 | @ Hull City | Championship | 2-0 | 78 | 0 | 0 | 5.8 |
| 2025-12-06 | @ Preston North End | Championship | 1-1 | 90 | 1 | 0 | 7.6 |
| 2025-11-29 | vs Blackburn Rovers | Championship | 1-1 | 90 | 0 | 0 | 7.0 |
| 2025-11-26 | vs Bristol City | Championship | 2-0 | 81 | 0 | 0 | 7.2 |
| 2025-11-08 | vs Charlton Athletic | Championship | 1-0 | 89 | 0 | 0 | 7.4 |
| 2025-11-05 | @ Portsmouth | Championship | 0-0 | 86 | 0 | 0 | 6.7 |
| 2025-10-31 | vs Coventry City | Championship | 3-2 | 90 | 3 | 0 | 9.6 ⭐ |
| 2025-10-28 | vs Cardiff City | EFL Cup | 1-2 | 45 | 1 | 0 | 8.1 |
| 2025-10-25 | @ Middlesbrough | Championship | 1-1 | 84 | 0 | 0 | 6.5 |
| 2025-10-22 | vs Oxford United | Championship | 1-0 | 88 | 0 | 1 | 7.8 ⭐ |
| 2025-10-18 | @ Stoke City | Championship | 1-0 | 90 | 0 | 0 | 5.9 |
| 2025-10-13 | vs Belgium | World Cup Qualification UEFA 1st Round Grp. J | 2-4 | 4 | 0 | 1 | |
| 2025-10-09 | @ England | Friendlies | 3-0 | 76 | 0 | 0 | 6.4 |
| 2025-10-03 | vs Birmingham City | Championship | 1-1 | 90 | 0 | 0 | 6.8 |
| 2025-09-30 | @ Leicester City | Championship | 1-1 | 83 | 0 | 0 | 7.3 |
| 2025-09-27 | vs Derby County | Championship | 1-1 | 89 | 0 | 0 | 6.5 |
| 2025-09-23 | vs Reading | EFL Cup | 2-0 | 0 | 0 | 0 | |
| 2025-09-20 | @ Norwich City | Championship | 2-3 | 90 | 0 | 0 | 7.1 |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Wrexham | senior | 43 | 13 | 4 | 6.93 |
| 2024/2025 | Sheffield United | senior | 30 | 6 | 0 | 6.85 |
| 2023/2024 | Ipswich Town | senior | 18 | 7 | 1 | 7.22 |
| 2023/2024 | AFC Bournemouth | senior | 13 | 2 | 0 | 6.40 |
| 2022/2023 | AFC Bournemouth | senior | 29 | 4 | 0 | 6.32 |
| 2021/2022 | AFC Bournemouth | senior | 4 | 4 | 0 | 6.89 |
| 2021/2022 | Cardiff City | senior | 24 | 5 | 3 | 6.92 |
| 2020/2021 | Cardiff City | senior | 42 | 20 | 1 | 7.17 |
| 2019/2020 | Wigan Athletic | senior | 36 | 10 | 4 | 6.91 |
| 2018/2019 | Barnsley | senior | 35 | 19 | 3 | - |
| 2017/2018 | Barnsley | senior | 20 | 4 | 4 | 6.89 |
| 2017/2018 | Rotherham United | senior | 25 | 13 | 2 | - |
| 2016/2017 | Ipswich Town | senior | 11 | 0 | 0 | 5.82 |
| 2016/2017 | Torquay United | senior | 4 | 5 | 0 | - |
| 2016/2017 | Forest Green Rovers | senior | 18 | 5 | 0 | - |
| 2015/2016 | Forest Green Rovers | senior | 17 | 2 | 0 | - |
| 2015 | Viking | senior | 11 | 0 | 0 | - |
| 2014/2015 | Yeovil Town | senior | 34 | 4 | 1 | - |
| 2013/2014 | Yeovil Town | senior | 24 | 5 | 0 | - |
| 2012/2013 | Dorchester Town | senior | 13 | 7 | 0 | - |
| 2012/2013 | Truro City | senior | 22 | 13 | 0 | - |
| 2026 | Wales | national team | 4 | 2 | 1 | 7.29 |
| 2025 | Wales | national team | 1 | 0 | 0 | 6.38 |
| 2024 | Wales | national team | 14 | 2 | 1 | 6.06 |
| 2023 | Wales | national team | 2 | 2 | 0 | 7.88 |
| 2022 | Wales | national team | 12 | 3 | 0 | 7.11 |
| 2021 | Wales | national team | 3 | 1 | 0 | 6.56 |
| 2020 | Wales | national team | 15 | 5 | 1 | 6.56 |
| 2019 | Wales | national team | 1 | 0 | 0 | - |
Transfer Value History
Teammates
Callum Edwards
Jake Bickerstaff
Max Purvis
Reuben Egan
Thomas O'Connor
Tom Kelly
Arthur Okonkwo
Callum Doyle
Lewis Brunt
Max Cleworth
Dominic Hyam
Davis Keillor-Dunn
Josh Windass
Bailey Cadamarteri
Issa Kaboré
Liberato Cacace
George Thomason
George Dobson
Jay Rodriguez
Ben Sheaf
Oliver Rathbone
Danny Ward
Dan Scarr
Callum Burton
Zak Vyner
Lewis O'Brien
Sam Smith
Ryan Barnett
Nathan Broadhead
Aaron James
Matthew James
James Rainbird
Ryan Longman
Wrexham