Age 30
Height 182 cm
Foot Right
Country England
Value €149.1k
Contract 2026-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
6.97
48 matches
Last 5
7.18
+0.21 vs season
Best
8.5
vs Cambridge United
MOTM
2
of 47 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
48
Goals
3
Assists
3
Rating
6.97
Goals
3
76%
Assists
2
65%
Rating
6.99
78%
Matches
42
89%
Started
40
93%
Minutes
3552
94%
🎯
Stats compared to other midfielders
League Two · percentile vs peers
Chances created
41%
Aerial duels
93%
Defensive actions
71%
Goals
48%
Shot attempts
69%
Touches
90%
🎯
Shot Map
53 shots per season
Goals
3
On target
30
xG
2.73
Conversion
6%
Goal
Saved
Off target
🔥
Heatmap
3381 touches this season
Attack
Touches
3381
Attack
14%
Middle
58%
Ø position
45%
Detailed Stats & Percentiles (League Two)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 84%
|
Per 90 pctl
avg 63%
|
|---|---|---|---|---|
| Goals | 3 | 0.08 |
76
|
61
|
| xG | 2.75 | 0.07 |
83
|
56
|
| xGOT | 2.41 | 0.06 |
80
|
53
|
| Penalty goals | 1 | 0.03 |
93
|
94
|
| xG excl. penalty | 1.96 | 0.05 |
74
|
37
|
| Shots | 53 | 1.34 |
94
|
73
|
| Shots on target | 14 | 0.35 |
93
|
70
|
| Headed shots | 3 | 0.08 |
80
|
64
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 74%
|
Per 90 pctl
avg 59%
|
|---|---|---|---|---|
| Assists | 2 | 0.05 |
65
|
46
|
| xA | 1.91 | 0.05 |
69
|
33
|
| Accurate passes | 1624 | 41.15 |
96
|
90
|
| Pass accuracy | 73.6 | 73.55 |
55
|
55
|
| Accurate long balls | 189 | 4.79 |
100
|
97
|
| Long ball accuracy | 43.6 | 43.65 |
75
|
75
|
| Chances created | 34 | 0.86 |
85
|
51
|
| Big chances created | 3 | 0.08 |
67
|
45
|
| Successful crosses | 8 | 0.20 |
71
|
47
|
| Cross accuracy | 22.2 | 22.22 |
54
|
54
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 61%
|
Per 90 pctl
avg 48%
|
|---|---|---|---|---|
| Dribbles | 24 | 0.61 |
86
|
60
|
| Dribbles success rate | 52.2 | 52.17 |
64
|
64
|
| Duels won | 178 | 4.51 |
84
|
25
|
| Duels won % | 47.1 | 47.09 |
37
|
37
|
| Aerials won | 84 | 2.13 |
92
|
69
|
| Aerials won % | 51.2 | 51.22 |
64
|
64
|
| Touches | 2883 | 73.05 |
98
|
95
|
| Touches in opposition box | 22 | 0.56 |
58
|
19
|
| Dispossessed | 37 | 0.94 |
3
|
38
|
| Fouls won | 8 | 0.20 |
29
|
5
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 69%
|
Per 90 pctl
avg 61%
|
|---|---|---|---|---|
| Defensive actions | 239 | 6.06 |
96
|
74
|
| Tackles | 64 | 1.62 |
81
|
32
|
| Interceptions | 41 | 1.04 |
92
|
68
|
| Blocked scoring attempt | 20 | 0.51 |
96
|
84
|
| Fouls committed | 38 | 0.96 |
83
|
32
|
| Recoveries | 272 | 6.89 |
98
|
96
|
| Possession won final 3rd | 9 | 0.23 |
74
|
41
|
| Dribbled past | 24 | 0.61 |
17
|
69
|
| Clearances | 114 | 2.89 |
96
|
83
|
| Clean sheets | 8 | 0.20 |
86
|
73
|
| Goals conceded while on pitch | 51 | 1.29 |
3
|
56
|
| xG against while on pitch | 59.93 | 1.52 |
0
|
24
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 55%
|
Per 90 pctl
avg 79%
|
|---|---|---|---|---|
| Yellow cards | 8 | 0.20 |
10
|
58
|
| Red cards | 0 | 0.00 |
100
|
100
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 84%
|
Per 90 pctl
avg 63%
|
|---|---|---|---|---|
| Goals | 3 | 0.08 |
76
|
61
|
| xG | 2.75 | 0.07 |
83
|
56
|
| xGOT | 2.41 | 0.06 |
80
|
53
|
| Penalty goals | 1 | 0.03 |
93
|
94
|
| xG excl. penalty | 1.96 | 0.05 |
74
|
37
|
| Shots | 53 | 1.34 |
94
|
73
|
| Shots on target | 14 | 0.35 |
93
|
70
|
| Headed shots | 3 | 0.08 |
80
|
64
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 74%
|
Per 90 pctl
avg 59%
|
|---|---|---|---|---|
| Assists | 2 | 0.05 |
65
|
46
|
| xA | 1.91 | 0.05 |
69
|
33
|
| Accurate passes | 1624 | 41.15 |
96
|
90
|
| Pass accuracy | 73.6 | 73.55 |
55
|
55
|
| Accurate long balls | 189 | 4.79 |
100
|
97
|
| Long ball accuracy | 43.6 | 43.65 |
75
|
75
|
| Chances created | 34 | 0.86 |
85
|
51
|
| Big chances created | 3 | 0.08 |
67
|
45
|
| Successful crosses | 8 | 0.20 |
71
|
47
|
| Cross accuracy | 22.2 | 22.22 |
54
|
54
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 61%
|
Per 90 pctl
avg 48%
|
|---|---|---|---|---|
| Dribbles | 24 | 0.61 |
86
|
60
|
| Dribbles success rate | 52.2 | 52.17 |
64
|
64
|
| Duels won | 178 | 4.51 |
84
|
25
|
| Duels won % | 47.1 | 47.09 |
37
|
37
|
| Aerials won | 84 | 2.13 |
92
|
69
|
| Aerials won % | 51.2 | 51.22 |
64
|
64
|
| Touches | 2883 | 73.05 |
98
|
95
|
| Touches in opposition box | 22 | 0.56 |
58
|
19
|
| Dispossessed | 37 | 0.94 |
3
|
38
|
| Fouls won | 8 | 0.20 |
29
|
5
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 69%
|
Per 90 pctl
avg 61%
|
|---|---|---|---|---|
| Defensive actions | 239 | 6.06 |
96
|
74
|
| Tackles | 64 | 1.62 |
81
|
32
|
| Interceptions | 41 | 1.04 |
92
|
68
|
| Blocked scoring attempt | 20 | 0.51 |
96
|
84
|
| Fouls committed | 38 | 0.96 |
83
|
32
|
| Recoveries | 272 | 6.89 |
98
|
96
|
| Possession won final 3rd | 9 | 0.23 |
74
|
41
|
| Dribbled past | 24 | 0.61 |
17
|
69
|
| Clearances | 114 | 2.89 |
96
|
83
|
| Clean sheets | 8 | 0.20 |
86
|
73
|
| Goals conceded while on pitch | 51 | 1.29 |
3
|
56
|
| xG against while on pitch | 59.93 | 1.52 |
0
|
24
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 55%
|
Per 90 pctl
avg 79%
|
|---|---|---|---|---|
| Yellow cards | 8 | 0.20 |
10
|
58
|
| Red cards | 0 | 0.00 |
100
|
100
|
Recent Matches (49)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-05-02 | vs Barnet | League Two | 1-2 | 90 | 1 | 0 | 7.8 |
| 2026-04-25 | @ Walsall | League Two | 0-2 | 90 | 0 | 0 | 7.3 |
| 2026-04-18 | vs Colchester United | League Two | 1-0 | 90 | 0 | 0 | 8.2 |
| 2026-04-11 | @ Newport County | League Two | 2-1 | 90 | 0 | 0 | 6.4 |
| 2026-04-06 | vs Bristol Rovers | League Two | 2-3 | 90 | 0 | 0 | 6.2 |
| 2026-04-03 | @ Grimsby Town | League Two | 1-3 | 90 | 1 | 0 | 7.5 |
| 2026-03-28 | vs Notts County | League Two | 0-2 | 90 | 0 | 0 | 7.1 |
| 2026-03-21 | @ Oldham Athletic | League Two | 1-0 | 90 | 0 | 0 | 7.4 |
| 2026-03-17 | @ Tranmere Rovers | League Two | 0-3 | 90 | 0 | 0 | 7.6 |
| 2026-03-14 | vs Salford City | League Two | 0-1 | 90 | 0 | 0 | 7.3 |
| 2026-03-07 | @ Milton Keynes Dons | League Two | 4-1 | 90 | 0 | 0 | 5.9 |
| 2026-02-27 | vs Cheltenham Town | League Two | 1-1 | 90 | 0 | 0 | 8.1 |
| 2026-02-21 | vs Bromley | League Two | 0-0 | 90 | 0 | 0 | 7.5 |
| 2026-02-17 | @ Barrow | League Two | 0-1 | 45 | 0 | 0 | 6.5 |
| 2026-02-14 | @ Chesterfield | League Two | 1-1 | 90 | 0 | 0 | 7.3 |
| 2026-02-07 | vs Cambridge United | League Two | 2-1 | 90 | 1 | 0 | 8.5 ⭐ |
| 2026-02-03 | vs Swindon Town | League Two | 0-1 | 90 | 0 | 0 | 7.0 |
| 2026-01-31 | @ Crawley Town | League Two | 2-0 | 90 | 0 | 0 | 6.6 |
| 2026-01-27 | vs Fleetwood Town | League Two | 1-2 | 90 | 0 | 0 | 6.8 |
| 2026-01-24 | vs Gillingham | League Two | 0-3 | 90 | 0 | 0 | 6.2 |
| 2026-01-17 | @ Shrewsbury Town | League Two | 1-0 | 90 | 0 | 0 | 7.6 |
| 2026-01-13 | @ Stockport County | EFL Trophy | 2-1 | 90 | 0 | 0 | 6.9 |
| 2026-01-10 | @ Crewe Alexandra | League Two | 1-1 | 90 | 0 | 0 | 7.1 |
| 2026-01-01 | vs Tranmere Rovers | League Two | 0-2 | 90 | 0 | 0 | 5.2 |
| 2025-12-29 | @ Accrington Stanley | League Two | 1-0 | 90 | 0 | 0 | 6.3 |
| 2025-12-02 | vs Blackpool | EFL Trophy | 4-2 | 90 | 0 | 1 | 8.0 |
| 2025-11-29 | @ Barnet | League Two | 1-1 | 90 | 0 | 0 | 7.3 |
| 2025-11-22 | vs Walsall | League Two | 0-2 | 56 | 0 | 0 | 6.3 |
| 2025-11-15 | @ Notts County | League Two | 1-1 | 90 | 0 | 0 | 6.8 |
| 2025-11-11 | vs Newcastle United U21 | EFL Trophy Northern Grp. F | 3-1 | 0 | 0 | 0 | |
| 2025-11-08 | vs Oldham Athletic | League Two | 0-1 | 90 | 0 | 0 | 6.9 |
| 2025-11-01 | @ Mansfield Town | FA Cup | 3-2 | 90 | 0 | 0 | |
| 2025-10-25 | vs Newport County | League Two | 0-3 | 29 | 0 | 0 | 6.5 |
| 2025-10-18 | @ Colchester United | League Two | 3-1 | 31 | 0 | 0 | 6.2 |
| 2025-10-11 | @ Fleetwood Town | League Two | 3-2 | 90 | 0 | 0 | 6.3 |
| 2025-10-06 | vs Crewe Alexandra | League Two | 1-2 | 90 | 0 | 0 | 6.4 |
| 2025-09-30 | vs Huddersfield Town | EFL Trophy Northern Grp. F | 1-0 | 14 | 0 | 0 | 6.2 |
| 2025-09-27 | @ Gillingham | League Two | 0-1 | 90 | 0 | 0 | 7.9 |
| 2025-09-20 | vs Shrewsbury Town | League Two | 2-0 | 90 | 0 | 1 | 8.4 ⭐ |
| 2025-09-13 | @ Swindon Town | League Two | 3-1 | 70 | 0 | 0 | 6.3 |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Harrogate Town | senior | 48 | 3 | 3 | 6.97 |
| 2024/2025 | Harrogate Town | senior | 23 | 0 | 1 | 7.15 |
| 2024/2025 | Newport County | senior | 21 | 3 | 2 | 7.15 |
| 2023/2024 | Newport County | senior | 57 | 8 | 4 | 7.28 |
| 2022/2023 | Grimsby Town | senior | 42 | 2 | 1 | 6.93 |
| 2021/2022 | Hartlepool United | senior | 11 | 1 | 1 | 7.24 |
| 2021/2022 | Burton Albion | senior | 10 | 0 | 0 | 6.58 |
| 2020/2021 | Northampton Town | senior | 22 | 0 | 0 | 6.72 |
| 2020/2021 | Portsmouth | senior | 18 | 0 | 2 | 6.64 |
| 2019/2020 | Portsmouth | senior | 2 | 0 | 0 | 6.44 |
| 2018/2019 | Portsmouth | senior | 8 | 1 | 0 | - |
| 2018/2019 | Wycombe Wanderers | senior | 21 | 3 | 2 | - |
| 2017/2018 | Shrewsbury Town | senior | 30 | 0 | 0 | - |
| 2016/2017 | Shrewsbury Town | senior | 13 | 0 | 0 | - |
| 2015/2016 | Walsall | senior | 1 | 0 | 0 | - |
| 2015/2016 | York City | senior | 4 | 0 | 0 | - |
| 2015/2016 | Coventry City | senior | 7 | 0 | 0 | - |
| 2014/2015 | Burton Albion | senior | 5 | 0 | 1 | - |
| 2013/2014 | Middlesbrough | senior | 1 | 0 | 0 | - |
| 2012/2013 | Middlesbrough | senior | 2 | 0 | 0 | - |
| 2016/2017 | Middlesbrough U23 | youth | 14 | 0 | 1 | - |
| 2015 | England U19 | national team | 3 | 0 | 0 | - |
| 2013 | England U17 | national team | 6 | 3 | 0 | - |
Transfer Value History
Teammates
Conor McAleny
Mark Oxley
Zico Asare
Jack Evans
Tom Bradbury
Warren Burrell
George Thomson
Shawn McCoulsky
Mason Bennett
Stephen Duke-McKenna
Emile Acquah
Anthony O'Connor
Chanse Headman
Jack Levi Sutton
Jack Muldoon
Thomas Hill
Ellis Taylor
Reece Smith
Lewis Cass
Grant Horton
Ben Fox
Marcus Etherington
Lucas Barnes
Liam Gibson
Cathal Heffernan
Aiden Marsh
Josh Falkingham
Trophies
Portsmouth
🏆
EFL Trophy
x1
Harrogate Town