plays for Tranmere
| Match | Mins | Goals | Assists | Shots (on) | Rating |
|---|---|---|---|---|---|
| Tranmere v Grimsby Β· May 2, 26 Β· EL2 | 90 | 0 | 0 | β | 6.6 |
| Milton Keynes Dons v Tranmere Β· Apr 25, 26 Β· EL2 | 90 | 0 | 0 | β | 5.6 |
| Cheltenham v Tranmere Β· Apr 21, 26 Β· EL2 | 90 | 0 | 0 | β | 6.7 |
| Chesterfield v Tranmere Β· Apr 11, 26 Β· EL2 | 90 | 0 | 0 | β | 6.9 |
| Tranmere v Colchester Β· Apr 6, 26 Β· EL2 | 90 | 0 | 0 | β | 6.7 |
| Shrewsbury v Tranmere Β· Apr 3, 26 Β· EL2 | 90 | 0 | 0 | β | 7.3 |
| Tranmere v Swindon Β· Mar 21, 26 Β· EL2 | 90 | 0 | 0 | β | 7.0 |
| Tranmere v Harrogate Β· Mar 17, 26 Β· EL2 | 90 | 0 | 0 | β | 6.3 |
| Fleetwood Town v Tranmere Β· Mar 14, 26 Β· EL2 | 90 | 0 | 0 | β | 7.9 |
| Newport County v Tranmere Β· Mar 3, 26 Β· EL2 | 90 | 0 | 0 | β | 6.6 |
| Crewe v Tranmere Β· Feb 28, 26 Β· EL2 | 90 | 0 | 0 | β | 7.3 |
| Notts County v Tranmere Β· Feb 21, 26 Β· EL2 | 90 | 0 | 0 | β | 6.0 |
| Tranmere v Accrington Β· Feb 17, 26 Β· EL2 | 90 | 0 | 0 | β | 7.7 |
| Tranmere v Crawley Town Β· Feb 14, 26 Β· EL2 | 90 | 0 | 0 | β | 7.5 |
| Gillingham v Tranmere Β· Feb 7, 26 Β· EL2 | 90 | 0 | 0 | β | 7.2 |
| Match | conceded | dribbles past | duels | duels won | fouls drawn | key passes | passes | pens saved | red | saves | yellow |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Tranmere v Grimsby | 1 | β | β | β | β | β | 43 | 0 | 0 | 2 | 0 |
| Milton Keynes Dons v Tranmere | 3 | β | 1 | 1 | 1 | β | 41 | 0 | 0 | 3 | 0 |
| Cheltenham v Tranmere | 1 | β | β | β | β | β | 41 | 0 | 0 | β | 0 |
| Chesterfield v Tranmere | 1 | β | β | β | β | 1 | 32 | 0 | 0 | 2 | 1 |
| Tranmere v Colchester | 1 | 1 | 2 | 1 | 1 | β | 30 | 0 |
| Season | Team | Apps | Goals | Assists | Minutes | Avg rating |
|---|---|---|---|---|---|---|
| 2025-26 Β· EFL League Two | Tranmere | 15 | 0 | 0 | 1,350 | 6.89 |
| 2025-26 Β· EFL League One | Port Vale | 5 | 0 | 0 | 450 | 6.82 |
| 2024-25 Β· EFL League One | Cambridge | 2 | 0 | 0 | 130 | 6.55 |
| 2023-24 Β· EFL League One | Shrewsbury | 40 | 0 | 0 | 3,585 | 6.85 |
only matches where we hold the full stat line β coverage grows as the history backfill runs
| 0 |
| 2 |
| 0 |
| Shrewsbury v Tranmere | 1 | β | 1 | 1 | β | β | 33 | 0 | 0 | 3 | 0 |
| Tranmere v Swindon | 1 | β | β | β | β | β | 26 | 0 | 0 | 5 | 0 |
| Tranmere v Harrogate | 3 | β | 1 | 1 | β | β | 28 | 0 | 0 | 3 | 0 |
| Fleetwood Town v Tranmere | 0 | β | 3 | 3 | 3 | β | 39 | 0 | 0 | 2 | 0 |
| Newport County v Tranmere | 3 | β | 2 | 2 | 1 | β | 43 | 0 | 0 | 3 | 0 |
| Crewe v Tranmere | 2 | β | 1 | 1 | 1 | β | 45 | 0 | 0 | 3 | 0 |
| Notts County v Tranmere | 5 | β | β | β | β | β | 46 | 0 | 0 | 5 | 0 |
| Tranmere v Accrington | 1 | β | 1 | 1 | 1 | β | 32 | 0 | 0 | 5 | 0 |
| Tranmere v Crawley Town | 0 | β | β | β | β | β | 26 | 0 | 0 | 4 | 1 |
| Gillingham v Tranmere | 2 | β | β | β | β | β | 31 | 0 | 0 | 3 | 0 |