| STRT | FC | FA | YC | RC | G | A | SHOT | SOG | OFF | |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026-27 English League Two NEW | 1 | 1 | 2 | 1 | 0 | 0 | 0 | 2 | 0 | 0 |
| 2025-26 English League Two NEW | 13 | 10 | 14 | 5 | 0 | 0 | 2 | 9 | 3 | 0 |
Includes finals, playoffs and exhibition games, so totals run higher than regular-season figures.
| Season | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2024-25 Scottish PremiershipSt Johnstone | 20 | 0 | 1 | 12 | 4 | 1,278 | 2 | 0 | 0 | 20 | 4 | 3 | 10 | 0 | 34 | 0 |
| 2023-24 Scottish PremiershipSt Johnstone | 7 | – | – | – | – | 526 | – | – | – | – | – | – | – | – | – | – |
| 2022 UEFA Nations LeagueWales | 4 | 0 | 0 | 3 | 0 | 240 | 0 | 0 | 0 | 4 | 1 | 0 | 1 | 0 | 7 | 0 |
| 2021-22 EFL ChampionshipHull City / Millwall | 30 | 1 | 1 | 31 | 8 | 1,247 | 2 | 0 | 3 | 30 | 18 | 17 | 12 | 0 | 15 | 0 |
| 2021 International FriendlyWales | 2 | 0 | 0 | 0 | 0 | 119 | 0 | 0 | 0 | 2 | 1 | 0 | 2 | 0 | 0 | 0 |
| 2020-21 EFL ChampionshipMillwall | 29 | 3 | 2 | 38 | 10 | 905 | 0 | 0 | 12 | 29 | 22 | 19 | 8 | 0 | 7 | 0 |
| 2020 UEFA Nations LeagueWales | 3 | 0 | 0 | 0 | 0 | 229 | 1 | 0 | 0 | 3 | 0 | 4 | 1 | 0 | 0 | 0 |
| 2019-20 EFL ChampionshipCharlton Athletic / Millwall / Queens Park Rangers | 51 | 13 | 4 | 78 | 36 | 2,186 | 4 | 0 | 21 | 51 | 29 | 44 | 26 | 0 | 29 | 0 |
| 2018-19 EFL ChampionshipQueens Park Rangers | 35 | 6 | 1 | 42 | 16 | 924 | 0 | 0 | 7 | 35 | 28 | 37 | 12 | 0 | 23 | 0 |
| 2018 UEFA Nations LeagueWales | 2 | 0 | 0 | 1 | 1 | 98 | 0 | 0 | 0 | 2 | 1 | 1 | 4 | 0 | 0 | 0 |
| 2017-18 EFL ChampionshipQueens Park Rangers | 41 | 11 | 9 | 98 | 41 | 2,062 | 3 | 0 | 24 | 41 | 24 | 44 | 16 | 0 | 37 | 0 |
| 2016-17 EFL ChampionshipFulham / Queens Park Rangers | 32 | 6 | 0 | 59 | 23 | 1,711 | 1 | 0 | 11 | 32 | 12 | 45 | 12 | 0 | 22 | 0 |
| 2014-15 A-League MenBrisbane Roar FC | 10 | – | – | – | – | 810 | – | – | – | – | – | – | – | – | – | – |
| 2013-14 A-League MenBrisbane Roar FC | 11 | – | – | – | – | 1,020 | – | – | – | – | – | – | – | – | – | – |
| Career14 seasons | 277 | 40 | 18 | 362 | 139 | 13,355 | 13 | 0 | 78 | 249 | 140 | 214 | 104 | 0 | 174 | 0 |
Stats from official league and public sports feeds. Updated hourly.
| Game | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 6 Jan v DundeeL 1-3 6 Jan | 0 | 0 | 0 | 0 | 28 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 3 | 0 |
| 3 Jan v HibernianD 1-1 3 Jan | 0 | 0 | 0 | 0 | 22 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 |
| 30 Dec @ CelticL 0-4 30 Dec | 0 | 0 | 0 | 0 | 90 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 4 | 0 |
| 27 Dec v Dundee UnitedL 1-2 27 Dec | 0 | 0 | 0 | 0 | 17 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
| 23 Dec @ Heart of MidlothianL 1-2 23 Dec | 0 | 0 | 0 | 0 | 7 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
| 15 Dec v St MirrenL 2-3 15 Dec | 0 | 0 | 0 | 0 | 90 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 3 | 0 |
| 8 Dec @ AberdeenD 1-1 8 Dec | 0 | 0 | 0 | 0 | 63 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
| 10 Nov @ MotherwellL 1-2 10 Nov | 0 | 0 | 1 | 1 | 45 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 2 | 0 |
| 3 Nov v Heart of MidlothianL 1-2 3 Nov | 0 | 0 | 0 | 0 | 10 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
| 31 Oct @ St MirrenL 1-3 31 Oct | 0 | 0 | 0 | 0 | 68 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 2 | 0 |
| 27 Oct @ DundeeW 2-1 27 Oct | 0 | 0 | 1 | 0 | 58 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 |
| 20 Oct v Ross CountyW 3-0 20 Oct | 0 | 1 | 0 | 0 | 83 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 |
| 7 Oct @ RangersL 0-2 7 Oct | 0 | 0 | 1 | 0 | 90 | 0 | 0 | 0 | 1 | 0 | 0 | 3 | 0 | 2 | 0 |
| 29 Sept v CelticL 0-6 29 Sept | 0 | 0 | 0 | 0 | 90 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 6 | 0 |
| 22 Sept @ Ross CountyD 3-3 22 Sept | 0 | 0 | 1 | 0 | 67 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
| 15 Sept @ HibernianL 0-2 15 Sept | 0 | 0 | 1 | 0 | 90 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 2 | 0 |
| 1 Sept v MotherwellL 1-2 1 Sept | 0 | 0 | 1 | 0 | 90 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 2 | 0 |
| 25 Aug @ Dundee UnitedL 0-2 25 Aug | 0 | 0 | 1 | 0 | 90 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 2 | 0 |
| 12 Aug @ KilmarnockW 3-0 12 Aug | 0 | 0 | 2 | 2 | 90 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 |
| 6 Aug v AberdeenL 1-2 6 Aug | 0 | 0 | 3 | 1 | 90 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 2 | 0 |
| Split | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AwayHome or away, 3W | 15 | 0.0 | 0.0 | 0.5 | 0.2 | 69.5 | 0.1 | 0.0 | 0.0 | 0.7 | 0.1 | 0.1 | 0.5 | 0.0 | 1.1 | 0.0 |
| HomeHome or away, 1W | 12 | 0.0 | 0.1 | 0.3 | 0.1 | 63.4 | 0.1 | 0.0 | 0.0 | 0.8 | 0.3 | 0.1 | 0.3 | 0.0 | 1.4 | 0.0 |
| LossesResult, 0W | 19 | 0.0 | 0.0 | 0.4 | 0.1 | 65.3 | 0.1 | 0.0 | 0.0 | 0.7 | 0.2 | 0.1 | 0.4 | 0.0 | 1.6 | 0.0 |
| DrawsResult, 0W | 4 | 0.0 | 0.0 | 0.3 | 0.0 | 60.5 | 0.0 | 0.0 | 0.0 | 0.8 | 0.3 | 0.0 | 0.0 | 0.0 | 0.8 | 0.0 |
| WinsResult, 4W | 4 | 0.0 | 0.3 | 0.8 | 0.5 | 80.3 | 0.3 | 0.0 | 0.0 | 0.8 | 0.0 | 0.3 | 0.8 | 0.0 | 0.3 | 0.0 |
| Regular seasonStage, 4W | 27 | 0.0 | 0.0 | 0.4 | 0.1 | 66.8 | 0.1 | 0.0 | 0.0 | 0.7 | 0.1 | 0.1 | 0.4 | 0.0 | 1.3 | 0.0 |
| MotherwellOpponent, 1W | 4 | 0.0 | 0.0 | 0.5 | 0.3 | 78.8 | 0.0 | 0.0 | 0.0 | 0.5 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 |
| AberdeenOpponent, 0W | 3 | 0.0 | 0.0 | 1.0 | 0.3 | 81.0 | 0.0 | 0.0 | 0.0 | 0.7 | 0.0 | 0.0 | 0.3 | 0.0 | 1.0 | 0.0 |
| Heart of MidlothianOpponent, 0W | 3 | 0.0 | 0.0 | 0.0 | 0.0 | 35.7 | 0.0 | 0.0 | 0.0 | 0.7 | 0.7 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 |
| HibernianOpponent, 0W | 3 | 0.0 | 0.0 | 0.3 | 0.0 | 57.7 | 0.0 | 0.0 | 0.0 | 0.7 | 0.3 | 0.0 | 0.3 | 0.0 | 1.0 | 0.0 |
| CelticOpponent, 0W | 2 | 0.0 | 0.0 | 0.0 | 0.0 | 90.0 | 0.5 | 0.0 | 0.0 | 1.0 | 0.0 | 0.5 | 0.5 | 0.0 | 5.0 | 0.0 |
| DundeeOpponent, 1W | 2 | 0.0 | 0.0 | 0.5 | 0.0 | 43.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.5 | 0.0 | 2.0 | 0.0 |
| Dundee UnitedOpponent, 0W | 2 | 0.0 | 0.0 | 0.5 | 0.0 | 53.5 | 0.0 | 0.0 | 0.0 | 1.0 | 0.5 | 0.5 | 0.0 | 0.0 | 1.0 | 0.0 |
| KilmarnockOpponent, 1W | 2 | 0.0 | 0.0 | 1.0 | 1.0 | 90.0 | 0.5 | 0.0 | 0.0 | 0.5 | 0.0 | 0.5 | 0.5 | 0.0 | 0.0 | 0.0 |
| Ross CountyOpponent, 1W | 2 | 0.0 | 0.5 | 0.5 | 0.0 | 75.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.5 | 0.0 | 0.5 | 0.0 |
| St MirrenOpponent, 0W | 2 | 0.0 | 0.0 | 0.0 | 0.0 | 79.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.5 | 0.0 | 2.5 | 0.0 |
| LivingstonOpponent, 0W | 1 | – | – | – | – | 15.0 | – | – | – | – | – | – | – | – | – | – |
| RangersOpponent, 0W | 1 | 0.0 | 0.0 | 1.0 | 0.0 | 90.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 3.0 | 0.0 | 2.0 | 0.0 |
| McDiarmid Park, PerthGround, 1W | 12 | 0.0 | 0.1 | 0.3 | 0.1 | 63.4 | 0.1 | 0.0 | 0.0 | 0.8 | 0.3 | 0.1 | 0.3 | 0.0 | 1.4 | 0.0 |
| Fir Park, MotherwellGround, 1W | 2 | 0.0 | 0.0 | 0.5 | 0.5 | 67.5 | 0.0 | 0.0 | 0.0 | 0.5 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 |
| Pittodrie Stadium, AberdeenGround, 0W | 2 | 0.0 | 0.0 | 0.0 | 0.0 | 76.5 | 0.0 | 0.0 | 0.0 | 0.5 | 0.0 | 0.0 | 0.0 | 0.0 | 0.5 | 0.0 |
| Tynecastle Park, EdinburghGround, 0W | 2 | 0.0 | 0.0 | 0.0 | 0.0 | 48.5 | 0.0 | 0.0 | 0.0 | 0.5 | 0.5 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 |
| CalForth Construction Arena at Tannadice Park, DundeeGround, 0W | 1 | 0.0 | 0.0 | 1.0 | 0.0 | 90.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 1.0 | 0.0 | 0.0 | 2.0 | 0.0 |
| Celtic Park, GlasgowGround, 0W | 1 | 0.0 | 0.0 | 0.0 | 0.0 | 90.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 1.0 | 0.0 | 4.0 | 0.0 |
| Dens Park, DundeeGround, 1W | 1 | 0.0 | 0.0 | 1.0 | 0.0 | 58.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 1.0 | 0.0 | 1.0 | 0.0 |
| Easter Road, EdinburghGround, 0W | 1 | 0.0 | 0.0 | 1.0 | 0.0 | 90.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 1.0 | 0.0 | 2.0 | 0.0 |
| Global Energy Stadium, DingwellGround, 0W | 1 | 0.0 | 0.0 | 1.0 | 0.0 | 67.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 |
| Home of the Set Fare Arena, LivingstonGround, 0W | 1 | – | – | – | – | 15.0 | – | – | – | – | – | – | – | – | – | – |
| Ibrox Stadium, GlasgowGround, 0W | 1 | 0.0 | 0.0 | 1.0 | 0.0 | 90.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 3.0 | 0.0 | 2.0 | 0.0 |
| The BBSP Stadium, KilmarnockGround, 1W | 1 | 0.0 | 0.0 | 2.0 | 2.0 | 90.0 | 1.0 | 0.0 | 0.0 | 1.0 | 0.0 | 1.0 | 1.0 | 0.0 | 0.0 | 0.0 |
| The SMISA Stadium, PaisleyGround, 0W | 1 | 0.0 | 0.0 | 0.0 | 0.0 | 68.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.0 | 0.0 | 2.0 | 0.0 |