 
          | Season | League | Team | A | G | Assists | Y/YR/R | MP | 
|---|---|---|---|---|---|---|---|
| 2024/2025 | Championship |  Ayr United | 10 | 0 | 0 | 4/0/0 | 774 | 
| 2024/2025 | Challenge Cup |  Ayr United | 0 | 0 | 0 | 0/0/0 | 0 | 
| 2024/2025 | Scottish Cup |  Ayr United | 2 | 1 | 0 | 0/0/0 | 163 | 
| 2023/2024 | League Cup |  Livingston | 5 | 0 | 0 | 0/0/0 | 418 | 
| 2023/2024 | Premiership |  Livingston | 29 | 0 | 1 | 11/0/0 | 2371 | 
| 2023/2024 | Scottish Cup |  Livingston | 1 | 0 | 0 | 0/0/0 | 62 | 
| 2022/2023 | Premiership |  Hibernian | 1 | 0 | 0 | 1/0/0 | 0 | 
| 2022/2023 | FA Cup |  Fleetwood Town | 0 | 0 | 0 | 0/0/0 | 0 | 
| 2022/2023 | EFL Trophy |  Fleetwood Town | 2 | 0 | 0 | 0/0/0 | 125 | 
| 2022/2023 | League One |  Fleetwood Town | 2 | 0 | 0 | 1/0/0 | 106 | 
| 2021/2022 | Scottish Cup |  Aberdeen | 0 | 0 | 0 | 0/0/0 | 0 | 
| 2020/2021 | League Cup |  Aberdeen | 1 | 0 | 0 | 0/0/0 | 44 | 
| 2020/2021 | Premiership |  Aberdeen | 1 | 0 | 0 | 0/0/0 | 10 | 
| 2019/2020 | League Cup |  Aberdeen | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2019/2020 | Premiership |  Aberdeen | 14 | 0 | 0 | 2/0/0 | 1008 | 
| 2019/2020 | Scottish Cup |  Aberdeen | 3 | 0 | 0 | 0/0/0 | 146 | 
| 2019/2020 | Europa League |  Aberdeen | 1 | 0 | 0 | 0/0/0 | 90 | 
| 2018/2019 | Scottish Cup |  Aberdeen | 2 | 0 | 0 | 0/0/0 | 65 | 
| 2018/2019 | Premiership |  Aberdeen | 23 | 1 | 0 | 4/0/1 | 725 | 
| 2018/2019 | Europa League |  Aberdeen | 2 | 0 | 0 | 0/0/0 | 180 | 
| 2018/2019 | League Cup |  Aberdeen | 2 | 0 | 0 | 1/0/0 | 180 | 
| 2016/2017 | Scottish Cup |  Hamilton Academical | 4 | 0 | 0 | 1/0/0 | 390 | 
| 2016/2017 | Premiership |  Hamilton Academical | 26 | 2 | 0 | 12/0/0 | 0 | 
| 2015/2016 | Premiership |  Hamilton Academical | 16 | 0 | 0 | 2/1/0 | 0 | 
| 2014/2015 | Premiership |  Hamilton Academical | 28 | 0 | 1 | 4/0/0 | 0 | 
| 2014/2015 | League Cup |  Hamilton Academical | 4 | 0 | 0 | 0/0/0 | 0 | 
| 2013/2014 | Championship |  Hamilton Academical | 24 | 1 | 0 | 5/0/0 | 0 | 
| 2013/2014 | League Cup |  Hamilton Academical | 3 | 0 | 0 | 0/0/0 | 0 | 
| 2012/2013 | Championship |  Hamilton Academical | 19 | 1 | 0 | 1/0/1 | 0 | 
| 2012/2013 | Scottish Cup |  Hamilton Academical | 2 | 1 | 0 | 1/0/0 | 0 | 
| 2012/2013 | League Cup |  Hamilton Academical | 2 | 0 | 0 | 1/0/0 | 0 | 
| 2012/2013 | Challenge Cup |  Hamilton Academical | 1 | 0 | 0 | 1/0/0 | 90 | 
| 2011/2012 | League One |  Stenhousemuir | 11 | 0 | 0 | 0/0/0 | 0 | 
| 2011/2012 | Championship |  Hamilton Academical | 3 | 0 | 0 | 0/0/0 | 0 | 
| 2010/2011 | League One |  Stenhousemuir | 8 | 2 | 0 | 1/0/1 | 0 | 
| Total: | 253 | 9 | 2 | 53/1/3 | 7037 | 
| From | To | Date | Amount | 
|---|---|---|---|
|  Ayr United |  Livingston | 19/07/2024 | Free | 
|  Ayr United |  Livingston | 18/07/2024 | Free | 
|  Livingston |  Hibernian | 14/06/2023 | Free | 
|  Hibernian |  Fleetwood Town | 13/02/2023 | N/a | 
|  Fleetwood Town |  Aberdeen | 26/08/2022 | Free | 
|  Aberdeen |  Hamilton Academical | 01/07/2018 | N/a | 
|  Hamilton Academical |  Stenhousemuir | 01/07/2012 | N/a | 
|  Stenhousemuir |  Hamilton Academical | 01/02/2012 | Loan | 
|  Hamilton Academical |  Stenhousemuir | 01/07/2011 | N/a | 
|  Stenhousemuir |  Hamilton Academical | 19/03/2011 | Loan |