Career as a player
| Period | Team | Country | Position | # | |
|---|---|---|---|---|---|
| 07/2026 - 06/2027 | ![]() | Ross County FC | Midfield | 10 | |
| 07/2025 - 06/2026 | ![]() | Ross County FC | Midfield | 38 | |
| 07/2024 - 07/2025 | ![]() | Bristol Rovers | Midfield | 29 | |
| 07/2019 - 07/2024 | ![]() | Rotherham United | Midfield | 16 | |
| 07/2017 - 07/2019 | ![]() | Ross County FC | Midfield | 8 | |
| 07/2016 - 06/2017 | ![]() | Greenock Morton FC | Defence | 10 | |
| 07/2015 - 06/2016 | ![]() | Dumbarton FC | Defence | 18 | |
| 01/2015 - 06/2015 | ![]() | Celtic FC | Defence | 54 | |
| 07/2012 - 06/2014 | ![]() | Celtic FC U19 | Defence |
Club matches
| Competition | Matches | Start | In | Out | Min. | Scores | 11m | Ass | Yellow | Yellow-Red | Red | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Championship | 92 | 59 | 33 | 36 | 5.364 | 6 | - | 1 | 11 | - | - | » All matches | |
| FA Cup | 9 | 5 | 4 | 4 | 510 | 1 | - | - | 1 | - | - | » All matches | |
| League Cup | 6 | 3 | 3 | 3 | 318 | - | - | - | - | - | - | » All matches | |
| League One | 78 | 47 | 31 | 21 | 4.308 | 4 | - | 4 | 12 | 1 | - | » All matches | |
| EFL Trophy | 9 | 7 | 2 | 4 | 625 | - | - | - | - | - | - | » All matches | |
| Premiership | 26 | 21 | 5 | 3 | 1.987 | 2 | - | - | 5 | - | - | » All matches | |
| Championship | 121 | 107 | 14 | 35 | 9.343 | 7 | - | 5 | 22 | - | - | » All matches | |
| League One | 12 | 5 | 7 | 3 | 590 | 3 | - | 1 | 2 | - | - | » All matches | |
| FA Cup | 9 | 7 | 2 | 3 | 625 | 2 | - | - | 1 | - | - | » All matches | |
| League Cup | 23 | 20 | 3 | 6 | 1.840 | 4 | - | 1 | 2 | - | - | » All matches | |
| Challenge Cup | 1 | 1 | - | - | 90 | 2 | - | - | - | - | - | » All matches | |
| Playoffs | 2 | 2 | - | 1 | 159 | - | - | - | - | - | - | » All matches | |
| Total | 388 | 284 | 104 | 119 | 25.759 | 31 | - | 12 | 56 | 1 | - | ||
| Competition | Matches | Start | In | Out | Min. | Scores | 11m | Ass | Yellow | Yellow-Red | Red | ||
![]() | U19 Youth League | 6 | 6 | - | - | 540 | 1 | - | - | 2 | - | - | » All matches |
![]() | U19 NextGen Series | 3 | 2 | 1 | - | 191 | - | - | - | - | - | - | » All matches |
| Total | 9 | 8 | 1 | - | 731 | 1 | - | - | 2 | - | - |
International matches
| Competition | Matches | Start | In | Out | Min. | Scores | 11m | Ass | Yellow | Yellow-Red | Red | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | U19 Friendlies | 2 | - | 2 | - | 55 | - | - | - | - | - | - | » All matches |
![]() | U19 EURO Qualifiers | 9 | 7 | 2 | 2 | 629 | - | - | - | 2 | - | - | » All matches |
| Total | 11 | 7 | 4 | 2 | 684 | - | - | - | 2 | - | - |









