Age 32
Height 180 cm
Foot Right
Country Wales
Value €176.3k
Contract 2026-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
6.78
44 matches
Last 5
7.86
+1.08 vs season
Best
9.6
vs Cheltenham Town
MOTM
3
of 40 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
44
Goals
14
Assists
2
Rating
6.78
Goals
11
87%
Assists
2
66%
Rating
6.74
81%
Matches
38
80%
Started
23
74%
Minutes
1959
71%
🎯
Stats compared to other forwards
League Two · percentile vs peers
Chances created
46%
Aerial duels
99%
Defensive actions
98%
Goals
85%
Shot attempts
78%
Touches
80%
🎯
Shot Map
62 shots per season
Goals
11
On target
30
xG
11.31
Conversion
18%
Goal
Saved
Off target
🔥
Heatmap
1329 touches this season
Attack
Touches
1329
Attack
53%
Middle
36%
Ø position
64%
Detailed Stats & Percentiles (League Two)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 87%
|
Per 90 pctl
avg 86%
|
|---|---|---|---|---|
| Goals | 11 | 0.51 |
87
|
91
|
| xG | 11.33 | 0.52 |
89
|
93
|
| xGOT | 9.36 | 0.43 |
85
|
82
|
| Penalty goals | 1 | 0.05 |
76
|
81
|
| xG excl. penalty | 10.54 | 0.48 |
91
|
94
|
| Shots | 62 | 2.85 |
86
|
82
|
| Shots on target | 23 | 1.06 |
82
|
72
|
| Headed shots | 28 | 1.29 |
98
|
96
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 61%
|
Per 90 pctl
avg 51%
|
|---|---|---|---|---|
| Assists | 2 | 0.09 |
66
|
58
|
| xA | 1.08 | 0.05 |
55
|
36
|
| Accurate passes | 220 | 10.11 |
72
|
43
|
| Pass accuracy | 52.3 | 52.26 |
16
|
16
|
| Accurate long balls | 11 | 0.51 |
81
|
67
|
| Long ball accuracy | 45.8 | 45.83 |
62
|
62
|
| Chances created | 20 | 0.92 |
79
|
58
|
| Big chances created | 3 | 0.14 |
64
|
51
|
| Successful crosses | 1 | 0.05 |
44
|
50
|
| Cross accuracy | 16.7 | 16.67 |
66
|
66
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 74%
|
Per 90 pctl
avg 70%
|
|---|---|---|---|---|
| Dribbles | 12 | 0.55 |
72
|
51
|
| Dribbles success rate | 36.4 | 36.36 |
43
|
43
|
| Duels won | 245 | 11.26 |
91
|
89
|
| Duels won % | 46.1 | 46.05 |
84
|
84
|
| Aerials won | 165 | 7.58 |
90
|
84
|
| Aerials won % | 49.4 | 49.40 |
83
|
83
|
| Touches | 881 | 40.47 |
83
|
72
|
| Touches in opposition box | 109 | 5.01 |
79
|
66
|
| Dispossessed | 33 | 1.52 |
20
|
39
|
| Fouls won | 52 | 2.39 |
95
|
91
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 64%
|
Per 90 pctl
avg 65%
|
|---|---|---|---|---|
| Defensive actions | 76 | 3.49 |
88
|
83
|
| Tackles | 17 | 0.78 |
75
|
60
|
| Interceptions | 6 | 0.28 |
88
|
79
|
| Blocked scoring attempt | 6 | 0.28 |
91
|
83
|
| Fouls committed | 57 | 2.62 |
86
|
83
|
| Recoveries | 43 | 1.98 |
66
|
28
|
| Possession won final 3rd | 13 | 0.60 |
72
|
65
|
| Dribbled past | 11 | 0.51 |
12
|
31
|
| Clearances | 47 | 2.16 |
89
|
85
|
| Clean sheets | 1 | 0.05 |
49
|
56
|
| Goals conceded while on pitch | 25 | 1.15 |
30
|
63
|
| xG against while on pitch | 28.11 | 1.29 |
26
|
58
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 52%
|
Per 90 pctl
avg 58%
|
|---|---|---|---|---|
| Yellow cards | 7 | 0.32 |
5
|
16
|
| Red cards | 0 | 0.00 |
100
|
100
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 87%
|
Per 90 pctl
avg 86%
|
|---|---|---|---|---|
| Goals | 11 | 0.51 |
87
|
91
|
| xG | 11.33 | 0.52 |
89
|
93
|
| xGOT | 9.36 | 0.43 |
85
|
82
|
| Penalty goals | 1 | 0.05 |
76
|
81
|
| xG excl. penalty | 10.54 | 0.48 |
91
|
94
|
| Shots | 62 | 2.85 |
86
|
82
|
| Shots on target | 23 | 1.06 |
82
|
72
|
| Headed shots | 28 | 1.29 |
98
|
96
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 61%
|
Per 90 pctl
avg 51%
|
|---|---|---|---|---|
| Assists | 2 | 0.09 |
66
|
58
|
| xA | 1.08 | 0.05 |
55
|
36
|
| Accurate passes | 220 | 10.11 |
72
|
43
|
| Pass accuracy | 52.3 | 52.26 |
16
|
16
|
| Accurate long balls | 11 | 0.51 |
81
|
67
|
| Long ball accuracy | 45.8 | 45.83 |
62
|
62
|
| Chances created | 20 | 0.92 |
79
|
58
|
| Big chances created | 3 | 0.14 |
64
|
51
|
| Successful crosses | 1 | 0.05 |
44
|
50
|
| Cross accuracy | 16.7 | 16.67 |
66
|
66
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 74%
|
Per 90 pctl
avg 70%
|
|---|---|---|---|---|
| Dribbles | 12 | 0.55 |
72
|
51
|
| Dribbles success rate | 36.4 | 36.36 |
43
|
43
|
| Duels won | 245 | 11.26 |
91
|
89
|
| Duels won % | 46.1 | 46.05 |
84
|
84
|
| Aerials won | 165 | 7.58 |
90
|
84
|
| Aerials won % | 49.4 | 49.40 |
83
|
83
|
| Touches | 881 | 40.47 |
83
|
72
|
| Touches in opposition box | 109 | 5.01 |
79
|
66
|
| Dispossessed | 33 | 1.52 |
20
|
39
|
| Fouls won | 52 | 2.39 |
95
|
91
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 64%
|
Per 90 pctl
avg 65%
|
|---|---|---|---|---|
| Defensive actions | 76 | 3.49 |
88
|
83
|
| Tackles | 17 | 0.78 |
75
|
60
|
| Interceptions | 6 | 0.28 |
88
|
79
|
| Blocked scoring attempt | 6 | 0.28 |
91
|
83
|
| Fouls committed | 57 | 2.62 |
86
|
83
|
| Recoveries | 43 | 1.98 |
66
|
28
|
| Possession won final 3rd | 13 | 0.60 |
72
|
65
|
| Dribbled past | 11 | 0.51 |
12
|
31
|
| Clearances | 47 | 2.16 |
89
|
85
|
| Clean sheets | 1 | 0.05 |
49
|
56
|
| Goals conceded while on pitch | 25 | 1.15 |
30
|
63
|
| xG against while on pitch | 28.11 | 1.29 |
26
|
58
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 52%
|
Per 90 pctl
avg 58%
|
|---|---|---|---|---|
| Yellow cards | 7 | 0.32 |
5
|
16
|
| Red cards | 0 | 0.00 |
100
|
100
|
Recent Matches (45)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-05-02 | @ Notts County | League Two | 1-1 | 79 | 1 | 0 | 7.3 |
| 2026-04-25 | vs Cheltenham Town | League Two | 4-0 | 74 | 3 | 0 | 9.6 ⭐ |
| 2026-04-18 | @ Tranmere Rovers | League Two | 1-2 | 11 | 0 | 0 | 5.8 |
| 2026-04-11 | vs Crawley Town | League Two | 3-1 | 77 | 1 | 0 | 7.8 |
| 2026-04-06 | @ Harrogate Town | League Two | 2-3 | 45 | 2 | 0 | 8.8 ⭐ |
| 2026-04-03 | vs Fleetwood Town | League Two | 1-0 | 53 | 0 | 0 | 6.5 |
| 2026-03-28 | vs Accrington Stanley | League Two | 2-0 | 1 | 0 | 0 | |
| 2026-03-21 | @ Gillingham | League Two | 1-2 | 82 | 1 | 0 | 8.2 |
| 2026-03-17 | vs Shrewsbury Town | League Two | 1-0 | 27 | 0 | 0 | 6.1 |
| 2026-03-14 | @ Bromley | League Two | 1-0 | 45 | 0 | 0 | 6.2 |
| 2026-03-10 | @ Barrow | League Two | 0-2 | 0 | 0 | 0 | |
| 2026-03-07 | vs Crewe Alexandra | League Two | 2-1 | 45 | 0 | 0 | 6.0 |
| 2026-02-28 | @ Swindon Town | League Two | 1-1 | 67 | 0 | 1 | 6.6 |
| 2026-02-21 | vs Grimsby Town | League Two | 3-1 | 83 | 0 | 0 | 7.1 |
| 2026-02-17 | @ Oldham Athletic | League Two | 2-0 | 18 | 0 | 0 | 5.9 |
| 2026-02-14 | @ Cambridge United | League Two | 3-1 | 45 | 0 | 0 | 6.0 |
| 2026-02-07 | vs Chesterfield | League Two | 2-3 | 55 | 0 | 0 | 6.7 |
| 2026-02-03 | vs Walsall | League Two | 2-0 | 89 | 0 | 0 | 7.3 |
| 2026-01-31 | vs Newport County | League Two | 3-0 | 79 | 0 | 0 | 6.0 |
| 2026-01-27 | @ Milton Keynes Dons | League Two | 1-0 | 63 | 0 | 0 | 6.3 |
| 2026-01-24 | @ Salford City | League Two | 1-0 | 45 | 0 | 0 | 6.4 |
| 2026-01-17 | vs Colchester United | League Two | 0-1 | 31 | 0 | 0 | 6.3 |
| 2026-01-13 | vs Plymouth Argyle | EFL Trophy | 3-4 | 7 | 0 | 0 | |
| 2026-01-01 | @ Shrewsbury Town | League Two | 0-3 | 1 | 0 | 0 | |
| 2025-12-06 | @ Port Vale | FA Cup | 1-0 | 78 | 0 | 0 | |
| 2025-12-02 | vs Cambridge United | EFL Trophy | 2-2 | 45 | 2 | 0 | 8.5 ⭐ |
| 2025-11-29 | vs Notts County | League Two | 0-1 | 86 | 0 | 0 | 6.6 |
| 2025-11-22 | @ Cheltenham Town | League Two | 1-0 | 66 | 0 | 0 | 6.1 |
| 2025-11-15 | @ Accrington Stanley | League Two | 3-1 | 67 | 0 | 0 | 6.0 |
| 2025-10-18 | vs Tranmere Rovers | League Two | 1-4 | 25 | 0 | 0 | 6.0 |
| 2025-10-11 | vs Milton Keynes Dons | League Two | 0-4 | 90 | 0 | 0 | 6.7 |
| 2025-10-07 | @ Cheltenham Town | EFL Trophy Southern Grp. B | 0-1 | 45 | 0 | 0 | 6.3 |
| 2025-10-04 | @ Walsall | League Two | 2-1 | 87 | 0 | 1 | 7.4 |
| 2025-09-27 | vs Salford City | League Two | 2-1 | 90 | 1 | 0 | 7.5 |
| 2025-09-20 | @ Colchester United | League Two | 1-1 | 47 | 0 | 0 | 6.9 |
| 2025-09-13 | vs Barrow | League Two | 2-1 | 23 | 0 | 0 | 6.1 |
| 2025-09-06 | @ Newport County | League Two | 2-3 | 23 | 1 | 0 | 7.6 |
| 2025-08-30 | @ Grimsby Town | League Two | 0-1 | 63 | 0 | 0 | 7.2 |
| 2025-08-26 | vs Tottenham Hotspur U21 | EFL Trophy Southern Grp. B | 4-4 | 45 | 1 | 0 | 7.4 |
| 2025-08-23 | vs Cambridge United | League Two | 1-0 | 60 | 1 | 0 | 7.3 |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Bristol Rovers | senior | 44 | 14 | 2 | 6.78 |
| 2024/2025 | Walsall | senior | 12 | 3 | 1 | 6.43 |
| 2024/2025 | Milton Keynes Dons | senior | 24 | 5 | 2 | 6.42 |
| 2023/2024 | Milton Keynes Dons | senior | 35 | 8 | 0 | 6.57 |
| 2023/2024 | Port Vale | senior | 2 | 0 | 0 | 6.98 |
| 2022/2023 | Port Vale | senior | 34 | 11 | 2 | 6.63 |
| 2022/2023 | Fleetwood Town | senior | 2 | 0 | 0 | 6.63 |
| 2021/2022 | Fleetwood Town | senior | 18 | 6 | 2 | 6.72 |
| 2021/2022 | Portsmouth | senior | 14 | 4 | 1 | 6.76 |
| 2020/2021 | Portsmouth | senior | 31 | 6 | 1 | 6.52 |
| 2019/2020 | Portsmouth | senior | 39 | 10 | 3 | 6.52 |
| 2018/2019 | Ipswich Town | senior | 17 | 1 | 1 | 5.95 |
| 2017/2018 | Bristol Rovers | senior | 49 | 14 | 4 | - |
| 2016/2017 | Bristol Rovers | senior | 42 | 9 | 4 | - |
| 2015/2016 | Hartlepool United | senior | 2 | 0 | 0 | - |
| 2015/2016 | Bristol Rovers | senior | 32 | 8 | 0 | - |
| 2014/2015 | Bristol Rovers | senior | 39 | 17 | 0 | - |
| 2013/2014 | Bristol Rovers | senior | 29 | 1 | 0 | - |
| 2012/2013 | Bristol Rovers | senior | 13 | 3 | 0 | - |
| 2010/2011 | Bristol Rovers | senior | 1 | 0 | 0 | - |
| 2017 | Wales U21 | national team | 10 | 2 | 0 | - |
| 2015 | Wales U21 | national team | 4 | 1 | 0 | - |
Transfer Value History
Teammates
Jed Ward
Ryan Howley
Luke Southwood
Joel Senior
Jack Sparkes
Taylor Moore
Alfie Kilgour
Clinton Mola
Shaqai Forde
Promise Omochere
Yusuf Akhamrich
Luke Thomas
Tom Lockyer
Brad Young
Ryan De Havilland
Joshua McEachran
Macauley Southam-Hales
Tommy Leigh
Riley Harbottle
Joe Quigley
Fabrizio Cavegn
Mees Rijks
Kian Hill
Tom English
Bristol Rovers