Age 30
Height 168 cm
Foot Right
Country Ireland
Value €177k
Contract 2027-06-30
📈
Form
Rating per season, last 5 matches, and timeline all matches
Season
7.29
49 matches
Last 5
7.48
+0.19 vs season
Best
8.6
vs Gillingham
MOTM
3
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
49
Goals
2
Assists
10
Rating
7.29
Goals
1
41%
Assists
9
100%
Rating
7.38
97%
Matches
45
100%
Started
42
96%
Minutes
3527
93%
🎯
Stats compared to other midfielders
League Two · percentile vs peers
Chances created
97%
Aerial duels
21%
Defensive actions
35%
Goals
34%
Shot attempts
39%
Touches
67%
🎯
Shot Map
34 shots per season
Goals
1
On target
17
xG
2.62
Conversion
3%
Goal
Saved
Off target
🔥
Heatmap
2869 touches this season
Attack
Touches
2869
Attack
24%
Middle
53%
Ø position
52%
Detailed Stats & Percentiles (League Two)
Shooting
| Stat | Total | Per 90 |
Percentile
avg 68%
|
Per 90 pctl
avg 43%
|
|---|---|---|---|---|
| Goals | 1 | 0.03 |
41
|
41
|
| xG | 2.62 | 0.07 |
82
|
51
|
| xGOT | 1.48 | 0.04 |
64
|
39
|
| xG excl. penalty | 2.62 | 0.07 |
84
|
53
|
| Shots | 34 | 0.87 |
81
|
41
|
| Shots on target | 5 | 0.13 |
55
|
31
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 86%
|
Per 90 pctl
avg 81%
|
|---|---|---|---|---|
| Assists | 9 | 0.23 |
100
|
92
|
| xA | 7.16 | 0.18 |
97
|
92
|
| Accurate passes | 1255 | 32.02 |
93
|
77
|
| Pass accuracy | 72.4 | 72.42 |
51
|
51
|
| Accurate long balls | 141 | 3.60 |
96
|
93
|
| Long ball accuracy | 35.1 | 35.07 |
45
|
45
|
| Chances created | 90 | 2.30 |
100
|
98
|
| Big chances created | 12 | 0.31 |
100
|
90
|
| Successful crosses | 74 | 1.89 |
100
|
97
|
| Cross accuracy | 29.6 | 29.60 |
81
|
81
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 53%
|
Per 90 pctl
avg 36%
|
|---|---|---|---|---|
| Dribbles | 14 | 0.36 |
72
|
33
|
| Dribbles success rate | 48.3 | 48.28 |
48
|
48
|
| Duels won | 128 | 3.27 |
67
|
6
|
| Duels won % | 44.9 | 44.91 |
32
|
32
|
| Aerials won | 20 | 0.51 |
40
|
7
|
| Aerials won % | 30.3 | 30.30 |
14
|
14
|
| Touches | 2481 | 63.31 |
96
|
81
|
| Touches in opposition box | 29 | 0.74 |
63
|
29
|
| Dispossessed | 17 | 0.43 |
32
|
80
|
| Fouls won | 26 | 0.66 |
70
|
26
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 65%
|
Per 90 pctl
avg 56%
|
|---|---|---|---|---|
| Defensive actions | 176 | 4.49 |
80
|
34
|
| Tackles | 68 | 1.74 |
86
|
40
|
| Interceptions | 48 | 1.22 |
97
|
86
|
| Blocked scoring attempt | 5 | 0.13 |
53
|
24
|
| Fouls committed | 40 | 1.02 |
85
|
35
|
| Recoveries | 268 | 6.84 |
97
|
96
|
| Possession won final 3rd | 17 | 0.43 |
94
|
77
|
| Dribbled past | 43 | 1.10 |
1
|
21
|
| Clearances | 55 | 1.40 |
72
|
28
|
| Clean sheets | 6 | 0.15 |
79
|
60
|
| Goals conceded while on pitch | 33 | 0.84 |
22
|
86
|
| xG against while on pitch | 39.83 | 1.02 |
17
|
90
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 60%
|
Per 90 pctl
avg 85%
|
|---|---|---|---|---|
| Yellow cards | 6 | 0.15 |
21
|
70
|
| Red cards | 0 | 0.00 |
100
|
100
|
Shooting
| Stat | Total | Per 90 |
Percentile
avg 68%
|
Per 90 pctl
avg 43%
|
|---|---|---|---|---|
| Goals | 1 | 0.03 |
41
|
41
|
| xG | 2.62 | 0.07 |
82
|
51
|
| xGOT | 1.48 | 0.04 |
64
|
39
|
| xG excl. penalty | 2.62 | 0.07 |
84
|
53
|
| Shots | 34 | 0.87 |
81
|
41
|
| Shots on target | 5 | 0.13 |
55
|
31
|
Passing
| Stat | Total | Per 90 |
Percentile
avg 86%
|
Per 90 pctl
avg 81%
|
|---|---|---|---|---|
| Assists | 9 | 0.23 |
100
|
92
|
| xA | 7.16 | 0.18 |
97
|
92
|
| Accurate passes | 1255 | 32.02 |
93
|
77
|
| Pass accuracy | 72.4 | 72.42 |
51
|
51
|
| Accurate long balls | 141 | 3.60 |
96
|
93
|
| Long ball accuracy | 35.1 | 35.07 |
45
|
45
|
| Chances created | 90 | 2.30 |
100
|
98
|
| Big chances created | 12 | 0.31 |
100
|
90
|
| Successful crosses | 74 | 1.89 |
100
|
97
|
| Cross accuracy | 29.6 | 29.60 |
81
|
81
|
Possession
| Stat | Total | Per 90 |
Percentile
avg 53%
|
Per 90 pctl
avg 36%
|
|---|---|---|---|---|
| Dribbles | 14 | 0.36 |
72
|
33
|
| Dribbles success rate | 48.3 | 48.28 |
48
|
48
|
| Duels won | 128 | 3.27 |
67
|
6
|
| Duels won % | 44.9 | 44.91 |
32
|
32
|
| Aerials won | 20 | 0.51 |
40
|
7
|
| Aerials won % | 30.3 | 30.30 |
14
|
14
|
| Touches | 2481 | 63.31 |
96
|
81
|
| Touches in opposition box | 29 | 0.74 |
63
|
29
|
| Dispossessed | 17 | 0.43 |
32
|
80
|
| Fouls won | 26 | 0.66 |
70
|
26
|
Defending
| Stat | Total | Per 90 |
Percentile
avg 65%
|
Per 90 pctl
avg 56%
|
|---|---|---|---|---|
| Defensive actions | 176 | 4.49 |
80
|
34
|
| Tackles | 68 | 1.74 |
86
|
40
|
| Interceptions | 48 | 1.22 |
97
|
86
|
| Blocked scoring attempt | 5 | 0.13 |
53
|
24
|
| Fouls committed | 40 | 1.02 |
85
|
35
|
| Recoveries | 268 | 6.84 |
97
|
96
|
| Possession won final 3rd | 17 | 0.43 |
94
|
77
|
| Dribbled past | 43 | 1.10 |
1
|
21
|
| Clearances | 55 | 1.40 |
72
|
28
|
| Clean sheets | 6 | 0.15 |
79
|
60
|
| Goals conceded while on pitch | 33 | 0.84 |
22
|
86
|
| xG against while on pitch | 39.83 | 1.02 |
17
|
90
|
Discipline
| Stat | Total | Per 90 |
Percentile
avg 60%
|
Per 90 pctl
avg 85%
|
|---|---|---|---|---|
| Yellow cards | 6 | 0.15 |
21
|
70
|
| Red cards | 0 | 0.00 |
100
|
100
|
Recent Matches (50)
| Date | Opponent | Comp | Score | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|
| 2026-05-02 | @ Fleetwood Town | League Two | 1-1 | 82 | 0 | 0 | 7.2 |
| 2026-04-25 | vs Tranmere Rovers | League Two | 3-0 | 80 | 0 | 1 | 7.9 |
| 2026-04-18 | @ Crewe Alexandra | League Two | 1-3 | 84 | 0 | 1 | 8.5 |
| 2026-04-11 | vs Bromley | League Two | 2-1 | 70 | 0 | 0 | 7.2 |
| 2026-04-06 | @ Oldham Athletic | League Two | 1-1 | 74 | 0 | 0 | 6.6 |
| 2026-04-03 | vs Barrow | League Two | 0-0 | 78 | 0 | 0 | 7.3 |
| 2026-03-28 | @ Salford City | League Two | 1-0 | 59 | 0 | 0 | 6.5 |
| 2026-03-21 | vs Barnet | League Two | 1-3 | 90 | 0 | 0 | 7.2 |
| 2026-03-18 | vs Colchester United | League Two | 1-0 | 88 | 0 | 0 | 7.5 |
| 2026-03-14 | @ Swindon Town | League Two | 1-2 | 71 | 0 | 0 | 7.6 |
| 2026-03-10 | @ Gillingham | League Two | 1-5 | 90 | 1 | 1 | 8.6 |
| 2026-03-07 | vs Harrogate Town | League Two | 4-1 | 30 | 0 | 1 | 7.3 |
| 2026-02-23 | @ Walsall | League Two | 0-2 | 89 | 0 | 0 | 7.4 |
| 2026-02-17 | vs Crawley Town | League Two | 0-0 | 83 | 0 | 0 | 7.3 |
| 2026-02-14 | vs Newport County | League Two | 1-0 | 89 | 0 | 0 | 8.0 |
| 2026-02-07 | @ Cheltenham Town | League Two | 2-3 | 90 | 0 | 1 | 8.1 |
| 2026-01-31 | @ Grimsby Town | League Two | 2-2 | 71 | 0 | 0 | 7.1 |
| 2026-01-27 | vs Bristol Rovers | League Two | 1-0 | 45 | 0 | 0 | 6.4 |
| 2026-01-24 | vs Shrewsbury Town | League Two | 5-1 | 82 | 0 | 0 | 7.4 |
| 2026-01-17 | @ Accrington Stanley | League Two | 0-2 | 76 | 0 | 0 | 7.1 |
| 2026-01-09 | vs Oxford United | FA Cup | 1-1 | 48 | 0 | 0 | 6.5 |
| 2026-01-04 | vs Chesterfield | League Two | 2-2 | 90 | 0 | 0 | 7.9 |
| 2026-01-01 | @ Colchester United | League Two | 1-0 | 90 | 0 | 0 | 7.1 |
| 2025-12-29 | vs Notts County | League Two | 1-1 | 67 | 0 | 0 | 6.4 |
| 2025-12-26 | vs Swindon Town | League Two | 1-0 | 90 | 0 | 0 | 8.0 |
| 2025-12-20 | @ Harrogate Town | League Two | 0-4 | 82 | 0 | 0 | 7.4 |
| 2025-12-13 | vs Cambridge United | League Two | 1-1 | 65 | 0 | 1 | 8.3 ⭐ |
| 2025-12-09 | @ Notts County | League Two | 3-2 | 89 | 0 | 0 | 6.7 |
| 2025-12-06 | vs Oldham Athletic | FA Cup | 3-1 | 90 | 1 | 1 | |
| 2025-11-29 | vs Fleetwood Town | League Two | 2-1 | 90 | 0 | 0 | 8.0 |
| 2025-11-22 | @ Tranmere Rovers | League Two | 2-2 | 90 | 0 | 0 | 7.8 |
| 2025-11-15 | vs Salford City | League Two | 2-0 | 77 | 0 | 0 | 7.2 |
| 2025-11-08 | @ Barnet | League Two | 2-2 | 90 | 0 | 0 | 6.9 |
| 2025-11-01 | @ Colchester United | FA Cup | 2-3 | 90 | 0 | 0 | |
| 2025-10-25 | @ Bromley | League Two | 2-1 | 86 | 0 | 0 | 7.2 |
| 2025-10-18 | vs Crewe Alexandra | League Two | 3-1 | 76 | 0 | 0 | 7.3 |
| 2025-10-11 | @ Bristol Rovers | League Two | 0-4 | 89 | 0 | 1 | 8.6 ⭐ |
| 2025-10-04 | vs Gillingham | League Two | 3-2 | 83 | 0 | 1 | 8.0 ⭐ |
| 2025-09-27 | @ Shrewsbury Town | League Two | 1-2 | 8 | 0 | 0 | |
| 2025-09-20 | vs Accrington Stanley | League Two | 1-2 | 45 | 0 | 0 | 5.9 |
Career
| Season | Team | Type | Apps | G | A | Rating |
|---|---|---|---|---|---|---|
| 2025/2026 | Milton Keynes Dons | senior | 49 | 2 | 10 | 7.29 |
| 2024/2025 | Milton Keynes Dons | senior | 38 | 1 | 3 | 6.99 |
| 2023/2024 | Crawley Town | senior | 45 | 6 | 13 | 7.40 |
| 2022/2023 | Rochdale | senior | 38 | 2 | 5 | 6.98 |
| 2021/2022 | Rochdale | senior | 36 | 6 | 4 | 7.22 |
| 2020/2021 | Oxford United | senior | 34 | 0 | 2 | 6.62 |
| 2019/2020 | Oxford United | senior | 5 | 1 | 0 | 6.26 |
| 2019/2020 | Feyenoord | senior | 2 | 0 | 0 | 7.31 |
| 2018/2019 | Reading | senior | 22 | 1 | 0 | 6.60 |
| 2017/2018 | Reading | senior | 38 | 7 | 3 | 6.71 |
| 2016/2017 | Reading | senior | 34 | 1 | 5 | 6.86 |
| 2015/2016 | Bath City | senior | 16 | 6 | 0 | - |
| 2019/2020 | Jong Feyenoord | youth | 1 | 0 | 0 | - |
| 2017/2018 | Reading U23 | youth | 1 | 0 | 0 | - |
| 2016/2017 | Reading U23 | youth | 4 | 0 | 0 | - |
| 2014 | Ireland U19 | national team | 4 | 1 | 0 | - |
Transfer Value History
Teammates
Callum Tripp
Kane Thompson-Sommers
Sam Sherring
Simone Troso
Craig MacGillivray
Gethin Jones
Daniel Crowley
Alex Gilbey
Scott Hogan
Aaron Collins
Nathaniel Méndez-Laing
Kane Wilson
Callum Paterson
Joe Tomlinson
Luke Offord
Aaron Nemane
Jonathan Leko
William Collar
Marvin Ekpiteta
Laurence Maguire
Connor Lemonheigh-Evans
Curtis Nelson
Phoenix Scholtz
Ben Wiles
Connal Trueman
Jay Matete
Rushian Hepburn-Murphy
Jack Sanders
Tom Finch
Revin Domi
Jack Burke
Chase Medwynter
Elisha Boateng
Milton Keynes Dons