| Season | Team | Competition | MP | G | A | Rating | ||
|---|---|---|---|---|---|---|---|---|
| 2024/2025 | Hearts II | Challenge Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2023/2024 | Greenock Morton | Challenge Cup | 0 | 0 | 0 | 0 | 0 | – |
| 2023/2024 | Greenock Morton | Scottish Cup | 0 | 0 | 0 | 0 | 0 | – |
| 2023/2024 | Greenock Morton | League Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2022/2023 | Raith Rovers | League Cup | 3 | 0 | 0 | 0 | 0 | – |
| 2022/2023 | Raith Rovers | Challenge Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2022/2023 | Raith Rovers | Scottish Cup | 4 | 0 | 0 | 0 | 0 | – |
| 2021/2022 | Raith Rovers | League Cup | 6 | 0 | 0 | 0 | 0 | – |
| 2021/2022 | Raith Rovers | Scottish Cup | 3 | 0 | 0 | 0 | 0 | – |
| 2021/2022 | Raith Rovers | Challenge Cup | 4 | 0 | 0 | 0 | 0 | – |
| 2020/2021 | Raith Rovers | League Cup | 2 | 0 | 0 | 0 | 0 | – |
| 2020/2021 | Raith Rovers | Scottish Cup | 2 | 0 | 0 | 0 | 0 | – |
| 2019/2020 | Alloa Athletic | Challenge Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2019/2020 | Alloa Athletic | Scottish Cup | 2 | 0 | 0 | 0 | 0 | – |
| 2019/2020 | Kilmarnock | League Cup | 0 | 0 | 0 | 0 | 0 | – |
| 2018/2019 | Kilmarnock | League Cup | 4 | 0 | 0 | 0 | 0 | – |
| 2018/2019 | Kilmarnock | Scottish Cup | 2 | 0 | 0 | 0 | 0 | – |
| 2017/2018 | Kilmarnock | League Cup | 5 | 0 | 0 | 0 | 0 | – |
| 2017/2018 | Kilmarnock | Scottish Cup | 3 | 0 | 0 | 0 | 0 | – |
| 2016/2017 | Kilmarnock | League Cup | 2 | 0 | 0 | 0 | 0 | – |
| 2016/2017 | Kilmarnock | Scottish Cup | 0 | 0 | 0 | 0 | 0 | – |
| 2015/2016 | Kilmarnock | League Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2015/2016 | Kilmarnock | Scottish Cup | 3 | 0 | 0 | 0 | 0 | – |
| 2014/2015 | Falkirk | Challenge Cup | 3 | 0 | 0 | 0 | 0 | – |
| 2014/2015 | Falkirk | Scottish Cup | 5 | 0 | 0 | 0 | 0 | – |
| 2014/2015 | Falkirk | League Cup | 3 | 0 | 0 | 0 | 0 | – |
| 2013/2014 | Hearts | League Cup | 4 | 0 | 0 | 1 | 0 | – |
| 2013/2014 | Hearts | Scottish Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2012/2013 | Hearts | League Cup | 4 | 0 | 0 | 0 | 0 | – |
| 2012/2013 | Hearts | Scottish Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2011/2012 | Hearts | League Cup | 0 | 0 | 0 | 0 | 0 | – |
| 2011/2012 | Hearts | Scottish Cup | 7 | 0 | 0 | 0 | 0 | – |
| 2010/2011 | Hearts | Scottish Cup | 1 | 0 | 0 | 0 | 0 | – |
| 2007/2008 | Queen of the South | Scottish Cup | 3 | 0 | 0 | 0 | 0 | – |
| Total | 82 | 0 | 0 | 1 | 0 | – | ||
| Date | From | To | Type | |
|---|---|---|---|---|
| - | Morton | Hearts | Free | |
| 08 Apr 2023 | Raith Rovers | Morton | N/A | |
| - | Kilmarnock | Raith Rovers | Free | |
| 07 Jan 2020 | Alloa Athletic | Kilmarnock | N/A | |
| - | Kilmarnock | Alloa Athletic | Loan | |
| 07 Jan 2015 | Falkirk | Kilmarnock | Free |
J. MacDonald career history shows progression across clubs and competitions, including club timeline, national team appearances and overall career totals.