Age 32
Height 173 cm
Foot Right
Country England
Value €218k
Contract 2027-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
6.97
48 matches
Last 5
6.88
-0.09 vs season
Best
8.8
vs Walsall
MOTM
2
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
48
Goals
0
Assists
5
Rating
6.97
Goals
0
0%
Assists
5
93%
Rating
7.06
86%
Matches
43
91%
Started
42
96%
Minutes
3700
96%
🎯
Stats compared to other midfielders
League Two · percentile vs peers
Chances created
87%
Aerial duels
84%
Defensive actions
24%
Goals
0%
Shot attempts
7%
Touches
46%
🎯
Shot Map
17 shots per season
Goals
0
On target
14
xG
0.65
Conversion
0%
Goal
Saved
Off target
🔥
Heatmap
2774 touches this season
Attack
Touches
2774
Attack
24%
Middle
52%
Ø position
51%
Detailed Stats & Percentiles (League Two)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 42%
|
Per 90 pctl
avg 15%
|
|---|---|---|---|---|
| Goals | 0 | 0.00 |
0
|
0
|
| xG | 0.66 | 0.02 |
41
|
8
|
| xGOT | 0.93 | 0.02 |
54
|
29
|
| xG excl. penalty | 0.66 | 0.02 |
41
|
8
|
| Shots | 17 | 0.41 |
54
|
12
|
| Shots on target | 6 | 0.15 |
62
|
35
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 89%
|
Per 90 pctl
avg 82%
|
|---|---|---|---|---|
| Assists | 5 | 0.12 |
93
|
77
|
| xA | 7.76 | 0.19 |
98
|
93
|
| Accurate passes | 1215 | 29.55 |
91
|
68
|
| Pass accuracy | 73.4 | 73.37 |
53
|
53
|
| Accurate long balls | 137 | 3.33 |
95
|
90
|
| Long ball accuracy | 45.4 | 45.36 |
82
|
82
|
| Chances created | 73 | 1.78 |
98
|
92
|
| Big chances created | 9 | 0.22 |
90
|
80
|
| Successful crosses | 71 | 1.73 |
98
|
96
|
| Cross accuracy | 34.0 | 33.97 |
88
|
88
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 62%
|
Per 90 pctl
avg 45%
|
|---|---|---|---|---|
| Dribbles | 8 | 0.19 |
54
|
19
|
| Dribbles success rate | 36.4 | 36.36 |
19
|
19
|
| Duels won | 189 | 4.60 |
88
|
29
|
| Duels won % | 51.1 | 51.08 |
52
|
52
|
| Aerials won | 72 | 1.75 |
87
|
52
|
| Aerials won % | 50.7 | 50.70 |
58
|
58
|
| Touches | 2326 | 56.58 |
92
|
62
|
| Touches in opposition box | 12 | 0.29 |
38
|
7
|
| Dispossessed | 15 | 0.36 |
38
|
84
|
| Fouls won | 56 | 1.36 |
93
|
66
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 59%
|
Per 90 pctl
avg 45%
|
|---|---|---|---|---|
| Defensive actions | 146 | 3.55 |
76
|
16
|
| Tackles | 55 | 1.34 |
74
|
17
|
| Interceptions | 21 | 0.51 |
70
|
25
|
| Blocked scoring attempt | 7 | 0.17 |
65
|
30
|
| Fouls committed | 52 | 1.26 |
94
|
51
|
| Penalties conceded | 1 | 0.02 |
2
|
13
|
| Recoveries | 205 | 4.99 |
96
|
71
|
| Possession won final 3rd | 12 | 0.29 |
86
|
53
|
| Dribbled past | 32 | 0.78 |
8
|
45
|
| Clearances | 63 | 1.53 |
81
|
32
|
| Clean sheets | 13 | 0.32 |
96
|
92
|
| Goals conceded while on pitch | 40 | 0.97 |
14
|
80
|
| xG against while on pitch | 52.15 | 1.27 |
4
|
60
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 8%
|
Per 90 pctl
avg 37%
|
|---|---|---|---|---|
| Yellow cards | 7 | 0.17 |
16
|
64
|
| Red cards | 1 | 0.02 |
1
|
9
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 42%
|
Per 90 pctl
avg 15%
|
|---|---|---|---|---|
| Goals | 0 | 0.00 |
0
|
0
|
| xG | 0.66 | 0.02 |
41
|
8
|
| xGOT | 0.93 | 0.02 |
54
|
29
|
| xG excl. penalty | 0.66 | 0.02 |
41
|
8
|
| Shots | 17 | 0.41 |
54
|
12
|
| Shots on target | 6 | 0.15 |
62
|
35
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 89%
|
Per 90 pctl
avg 82%
|
|---|---|---|---|---|
| Assists | 5 | 0.12 |
93
|
77
|
| xA | 7.76 | 0.19 |
98
|
93
|
| Accurate passes | 1215 | 29.55 |
91
|
68
|
| Pass accuracy | 73.4 | 73.37 |
53
|
53
|
| Accurate long balls | 137 | 3.33 |
95
|
90
|
| Long ball accuracy | 45.4 | 45.36 |
82
|
82
|
| Chances created | 73 | 1.78 |
98
|
92
|
| Big chances created | 9 | 0.22 |
90
|
80
|
| Successful crosses | 71 | 1.73 |
98
|
96
|
| Cross accuracy | 34.0 | 33.97 |
88
|
88
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 62%
|
Per 90 pctl
avg 45%
|
|---|---|---|---|---|
| Dribbles | 8 | 0.19 |
54
|
19
|
| Dribbles success rate | 36.4 | 36.36 |
19
|
19
|
| Duels won | 189 | 4.60 |
88
|
29
|
| Duels won % | 51.1 | 51.08 |
52
|
52
|
| Aerials won | 72 | 1.75 |
87
|
52
|
| Aerials won % | 50.7 | 50.70 |
58
|
58
|
| Touches | 2326 | 56.58 |
92
|
62
|
| Touches in opposition box | 12 | 0.29 |
38
|
7
|
| Dispossessed | 15 | 0.36 |
38
|
84
|
| Fouls won | 56 | 1.36 |
93
|
66
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 59%
|
Per 90 pctl
avg 45%
|
|---|---|---|---|---|
| Defensive actions | 146 | 3.55 |
76
|
16
|
| Tackles | 55 | 1.34 |
74
|
17
|
| Interceptions | 21 | 0.51 |
70
|
25
|
| Blocked scoring attempt | 7 | 0.17 |
65
|
30
|
| Fouls committed | 52 | 1.26 |
94
|
51
|
| Penalties conceded | 1 | 0.02 |
2
|
13
|
| Recoveries | 205 | 4.99 |
96
|
71
|
| Possession won final 3rd | 12 | 0.29 |
86
|
53
|
| Dribbled past | 32 | 0.78 |
8
|
45
|
| Clearances | 63 | 1.53 |
81
|
32
|
| Clean sheets | 13 | 0.32 |
96
|
92
|
| Goals conceded while on pitch | 40 | 0.97 |
14
|
80
|
| xG against while on pitch | 52.15 | 1.27 |
4
|
60
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 8%
|
Per 90 pctl
avg 37%
|
|---|---|---|---|---|
| Yellow cards | 7 | 0.17 |
16
|
64
|
| Red cards | 1 | 0.02 |
1
|
9
|
Recent Matches (50)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-05-02 | vs Accrington Stanley | League Two | 3-0 | 90 | 0 | 0 | 7.3 |
| 2026-04-25 | @ Newport County | League Two | 3-2 | 90 | 0 | 1 | 7.4 |
| 2026-04-18 | vs Salford City | League Two | 1-2 | 90 | 0 | 0 | 6.5 |
| 2026-04-14 | @ Barrow | League Two | 3-2 | 90 | 0 | 0 | 6.8 |
| 2026-04-11 | @ Shrewsbury Town | League Two | 1-0 | 90 | 0 | 0 | 6.4 |
| 2026-04-06 | vs Milton Keynes Dons | League Two | 1-1 | 90 | 0 | 0 | 7.9 |
| 2026-04-03 | @ Colchester United | League Two | 1-3 | 90 | 0 | 0 | 6.7 |
| 2026-03-28 | @ Crewe Alexandra | League Two | 2-1 | 90 | 0 | 0 | 6.5 |
| 2026-03-24 | vs Notts County | League Two | 3-0 | 75 | 0 | 0 | 7.6 |
| 2026-03-21 | vs Harrogate Town | League Two | 1-0 | 89 | 0 | 0 | 7.0 |
| 2026-03-17 | @ Chesterfield | League Two | 0-3 | 90 | 0 | 0 | 7.1 |
| 2026-03-14 | vs Grimsby Town | League Two | 1-0 | 90 | 0 | 0 | 7.3 |
| 2026-03-07 | @ Tranmere Rovers | League Two | 1-3 | 90 | 0 | 0 | 7.0 |
| 2026-03-03 | @ Bromley | League Two | 0-0 | 90 | 0 | 0 | 6.9 |
| 2026-02-28 | vs Crawley Town | League Two | 2-0 | 80 | 0 | 0 | 7.7 |
| 2026-02-21 | @ Gillingham | League Two | 0-3 | 90 | 0 | 0 | 6.9 |
| 2026-02-17 | vs Bristol Rovers | League Two | 2-0 | 30 | 0 | 0 | 6.9 |
| 2026-02-14 | vs Fleetwood Town | League Two | 1-1 | 0 | 0 | 0 | |
| 2026-02-07 | @ Swindon Town | League Two | 3-0 | 0 | 0 | 0 | |
| 2026-01-31 | vs Cambridge United | League Two | 0-3 | 90 | 0 | 0 | 6.3 |
| 2026-01-24 | @ Barnet | League Two | 3-2 | 90 | 0 | 0 | 6.5 |
| 2026-01-17 | vs Cheltenham Town | League Two | 2-1 | 90 | 0 | 1 | 8.1 |
| 2026-01-01 | vs Chesterfield | League Two | 1-1 | 90 | 0 | 0 | 7.1 |
| 2025-12-29 | @ Walsall | League Two | 1-2 | 90 | 0 | 2 | 8.8 ⭐ |
| 2025-12-26 | @ Grimsby Town | League Two | 0-0 | 90 | 0 | 0 | 6.6 |
| 2025-12-20 | vs Tranmere Rovers | League Two | 3-1 | 90 | 0 | 0 | 7.1 |
| 2025-12-13 | @ Crawley Town | League Two | 2-2 | 90 | 0 | 0 | 7.7 |
| 2025-12-10 | vs Walsall | League Two | 0-1 | 90 | 0 | 0 | 7.0 |
| 2025-12-06 | @ Milton Keynes Dons | FA Cup | 3-1 | 90 | 0 | 0 | |
| 2025-11-29 | @ Accrington Stanley | League Two | 1-0 | 90 | 0 | 0 | 7.4 |
| 2025-11-22 | vs Newport County | League Two | 3-0 | 90 | 0 | 0 | 7.2 |
| 2025-11-11 | vs Bolton Wanderers | EFL Trophy Northern Grp. E | 2-6 | 90 | 0 | 0 | 4.9 |
| 2025-11-08 | @ Harrogate Town | League Two | 0-1 | 79 | 0 | 0 | 6.0 |
| 2025-11-01 | vs Northampton Town | FA Cup | 3-1 | 58 | 0 | 0 | |
| 2025-10-25 | vs Shrewsbury Town | League Two | 2-2 | 90 | 0 | 1 | 8.4 ⭐ |
| 2025-10-18 | @ Salford City | League Two | 1-0 | 90 | 0 | 0 | 6.5 |
| 2025-10-11 | vs Barrow | League Two | 0-0 | 90 | 0 | 0 | 7.9 |
| 2025-10-07 | @ Rotherham United | EFL Trophy Northern Grp. E | 3-2 | 90 | 0 | 0 | 5.6 |
| 2025-10-04 | @ Notts County | League Two | 3-1 | 90 | 0 | 0 | 6.0 |
| 2025-09-27 | vs Barnet | League Two | 1-1 | 62 | 0 | 0 | 6.1 |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Oldham Athletic | senior | 48 | 0 | 5 | 6.97 |
| 2024/2025 | Exeter City | senior | 41 | 2 | 2 | 6.58 |
| 2023/2024 | Exeter City | senior | 14 | 0 | 1 | 6.73 |
| 2023/2024 | Bristol Rovers | senior | 16 | 0 | 0 | 6.70 |
| 2022/2023 | Hull City | senior | 27 | 0 | 2 | 6.58 |
| 2022/2023 | Birmingham City | senior | 2 | 0 | 0 | 6.55 |
| 2021/2022 | Birmingham City | senior | 31 | 0 | 2 | 6.92 |
| 2020/2021 | Millwall | senior | 46 | 0 | 3 | 6.62 |
| 2019/2020 | Millwall | senior | 18 | 0 | 0 | 6.36 |
| 2019/2020 | Stoke City | senior | 12 | 0 | 1 | 6.36 |
| 2018/2019 | Stoke City | senior | 27 | 0 | 0 | 6.65 |
| 2018/2019 | Brentford | senior | 1 | 0 | 0 | - |
| 2017/2018 | Brentford | senior | 40 | 1 | 3 | 6.73 |
| 2016/2017 | Brentford | senior | 45 | 0 | 4 | 6.83 |
| 2015/2016 | Brentford | senior | 42 | 2 | 2 | - |
| 2015/2016 | Shrewsbury Town | senior | 7 | 0 | 0 | - |
| 2014/2015 | Shrewsbury Town | senior | 51 | 0 | 2 | - |
| 2013/2014 | Shrewsbury Town | senior | 43 | 1 | 0 | - |
| 2012/2013 | Shrewsbury Town | senior | 2 | 0 | 0 | - |
| 2019/2020 | Stoke City U23 | youth | 1 | 0 | 0 | - |
Transfer Value History
Teammates
Billy Waters
Josh Kay
Kian Harratt
Mathew Hudson
Reagan Ogle
Jake Leake
Tom Pett
Donervon Daniels
Manny Monthé
Kane Taylor
Mike Fondop-Talum
Tom Conlon
Jack Stevens
Joe Garner
Kane Drummond
Will Sutton
Calum Kavanagh
Kieron Morris
Jake Caprice
Josh Hawkes
Fábio Jaló
Corry Evans
Jamie Robson
Oliver Hammond
Tom Donaghy
Scott Moloney
Frankie McMahon-Brown
Isaac Anderson
Dynel Simeu
Oldham Athletic