plays for Bradford
| Match | Mins | Goals | Assists | Shots (on) | Rating |
|---|---|---|---|---|---|
| Exeter v Bradford Β· May 2, 26 Β· EL1 | 90 | 0 | 0 | β | 6.9 |
| Bradford v Bolton Β· Apr 25, 26 Β· EL1 | 90 | 0 | 1 | β | 6.9 |
| Bradford v Plymouth Β· Apr 21, 26 Β· EL1 | 90 | 0 | 0 | 1 | 6.6 |
| Barnsley v Bradford Β· Apr 18, 26 Β· EL1 | 90 | 0 | 0 | 2 (1) | 6.9 |
| Bradford v Stevenage Β· Apr 11, 26 Β· EL1 | 90 | 0 | 0 | β | 6.6 |
| Wycombe v Bradford Β· Apr 6, 26 Β· EL1 | 90 | 0 | 0 | β | 6.5 |
| Bradford v Northampton Β· Apr 3, 26 Β· EL1 | 96 | 0 | 0 | β | 7.6 |
| Burton v Bradford Β· Mar 21, 26 Β· EL1 | 90 | 0 | 0 | β | 6.7 |
| Bradford v Mansfield Β· Mar 17, 26 Β· EL1 | 90 | 0 | 0 | β | 6.9 |
| Wigan v Bradford Β· Mar 14, 26 Β· EL1 | 90 | 0 | 0 | β | 7.2 |
| Port Vale v Bradford Β· Mar 11, 26 Β· EL1 | 90 | 0 | 0 | 1 | 7.3 |
| Bradford v Leyton Orient Β· Mar 7, 26 Β· EL1 | 90 | 0 | 0 | β | 6.9 |
| Reading v Bradford Β· Feb 28, 26 Β· EL1 | 90 | 0 | 0 | 2 | 7.0 |
| Bradford v Rotherham Β· Feb 24, 26 Β· EL1 | 90 | 0 | 0 | 1 | 7.3 |
| AFC Wimbledon v Bradford Β· Feb 21, 26 Β· EL1 | 45 | 0 | 0 | β | 6.2 |
| Match | blocks | conceded | dribbles past | duels | duels won | fouls committed | fouls drawn | interceptions | key passes | passes | red | tackles | yellow |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Exeter v Bradford | β | 0 | β | 11 | 7 | β | 1 | β | β | 31 | 0 | 1 | 0 |
| Bradford v Bolton | 2 | 0 | β | 6 | 4 | β | 1 | 2 | 1 | 25 | 0 | 2 | 0 |
| Bradford v Plymouth | 2 | 0 | β | 16 | 9 | 3 | 1 | 1 | 1 | 45 | 0 | 1 | 0 |
| Barnsley v Bradford | 2 | 0 | 1 | 12 | 6 | 2 | 1 | β | 1 | 54 | 0 | 3 |
| Season | Team | Apps | Goals | Assists | Minutes | Avg rating |
|---|---|---|---|---|---|---|
| 2025-26 Β· EFL League One | Bradford | 32 | 0 | 1 | 2,714 | 6.82 |
| 2024-25 Β· EFL League Two | Salford | 37 | 1 | 0 | 2,918 | 7.00 |
| 2023-24 Β· EFL League Two | Salford | 44 | 2 | 2 | 3,884 | 6.96 |
only matches where we hold the full stat line β coverage grows as the history backfill runs
| 0 |
| Bradford v Stevenage | β | 0 | β | 22 | 13 | 2 | 5 | 1 | 1 | 38 | 0 | 3 | 1 |
| Wycombe v Bradford | 1 | 0 | 2 | 9 | 4 | 1 | 1 | 1 | β | 25 | 0 | 1 | 0 |
| Bradford v Northampton | 1 | 0 | β | 12 | 8 | 1 | 3 | 2 | 1 | 39 | 0 | 2 | 0 |
| Burton v Bradford | β | 0 | β | 17 | 11 | 1 | 2 | β | β | 69 | 0 | 2 | 0 |
| Bradford v Mansfield | 1 | 0 | β | 12 | 7 | 2 | 2 | β | β | 41 | 0 | β | 1 |
| Wigan v Bradford | 1 | 0 | β | 12 | 10 | 1 | 3 | 1 | β | 63 | 0 | 2 | 0 |
| Port Vale v Bradford | 1 | 0 | β | 12 | 8 | 2 | β | 4 | β | 23 | 0 | β | 0 |
| Bradford v Leyton Orient | β | 0 | β | 15 | 10 | 1 | 1 | β | 1 | 44 | 0 | 2 | 1 |
| Reading v Bradford | 1 | 0 | β | 12 | 7 | 3 | β | β | β | 52 | 0 | 3 | 0 |
| Bradford v Rotherham | β | 0 | β | 17 | 11 | 1 | 4 | 3 | 1 | 32 | 0 | 1 | 0 |
| AFC Wimbledon v Bradford | β | 0 | β | 3 | 3 | β | β | β | β | 18 | 0 | 1 | 0 |