Career as a player
| Period | Team | Country | Position | # | |
|---|---|---|---|---|---|
| 07/2026 - 06/2027 | ![]() | Heart of Midlothian | Goalkeeper | 28 | |
| 01/2026 - 06/2026 | ![]() | Doncaster Rovers | Goalkeeper | 1 | |
| 09/2022 - 01/2026 | ![]() | Heart of Midlothian | Goalkeeper | 28 | |
| 07/2018 - 09/2022 | ![]() | St. Johnstone FC | Goalkeeper | 1 | |
| 07/2015 - 06/2018 | ![]() | St. Johnstone FC | Goalkeeper | 12 | |
| 07/2014 - 06/2015 | ![]() | Queen Of The South | Goalkeeper | 1 | |
| 07/2014 - 07/2014 | ![]() | St. Johnstone FC | Goalkeeper | 21 | |
| 01/2014 - 06/2014 | ![]() | St. Johnstone FC | Goalkeeper | 30 | |
| 10/2013 - 12/2013 | ![]() | Queen Of The South | Goalkeeper | ||
| 07/2012 - 10/2013 | ![]() | St. Johnstone FC | Goalkeeper | 30 | |
| 07/2010 - 06/2012 | ![]() | St. Johnstone FC | Goalkeeper | 35 |
Club matches
| Competition | Matches | Start | In | Out | Min. | Scores | 11m | Ass | Yellow | Yellow-Red | Red | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | Europa League Qual. | 4 | 4 | - | - | 360 | - | - | - | - | - | - | » All matches |
![]() | Conference League Qual. | 6 | 6 | - | - | 540 | - | - | - | 1 | - | - | » All matches |
| League One | 7 | 7 | - | - | 630 | - | - | - | - | - | - | » All matches | |
| EFL Trophy | 2 | 2 | - | - | 180 | - | - | - | - | - | - | » All matches | |
| Premiership | 233 | 231 | 2 | 5 | 20.629 | - | - | - | 2 | - | - | » All matches | |
| Championship | 33 | 33 | - | 1 | 2.932 | - | - | - | 2 | - | - | » All matches | |
| FA Cup | 16 | 16 | - | - | 1.500 | - | - | 1 | - | - | - | » All matches | |
| League Cup | 29 | 28 | 1 | - | 2.730 | - | - | - | - | - | - | » All matches | |
| Playoffs | 4 | 4 | - | - | 360 | - | - | - | - | - | - | » All matches | |
| Total | 334 | 331 | 3 | 6 | 29.861 | - | - | - | 5 | - | - |
International matches
| Competition | Matches | Start | In | Out | Min. | Scores | 11m | Ass | Yellow | Yellow-Red | Red | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | Friendlies | 2 | 1 | 1 | - | 135 | - | - | - | - | - | - | » All matches |
![]() | EURO Qualifiers | 2 | 2 | - | - | 180 | - | - | - | - | - | - | » All matches |
| Total | 4 | 3 | 1 | - | 315 | - | - | - | - | - | - |






