At a glance
- Full name
- Michael James Craig
- Born
- 16 Apr 2003
- Age today
- 23
- Nationality
- Scotland
Career by season
105 recorded appearances| Season | Competition | Team | Apps | Starts | Goals | Assists | Minutes | Cards |
|---|---|---|---|---|---|---|---|---|
| 26/27 | National League | Harrogate Town | 6 | 2 | 0 | 0 | 239 | 0 |
| 25/26 | League One | Leyton Orient | 27 | 18 | 0 | 2 | 1,544 | 2 |
| 25/26 | FA Cup | Leyton Orient | 2 | 2 | 0 | 0 | 149 | 0 |
| 25/26 | EFL Cup | Leyton Orient | 1 | 1 | 0 | 0 | 90 | 0 |
| 24/25 | League One | Reading FC | 30 | 29 | 2 | 0 | 2,569 | 3 |
| 24/25 | FA Cup | Reading FC | 2 | 0 | 0 | 0 | 86 | 0 |
| 23/24 | League One | Reading FC | 28 | 17 | 0 | 0 | 1,449 | 5 |
| 23/24 | FA Cup | Reading FC | 2 | 1 | 0 | 0 | 121 | 0 |
| 23/24 | EFL Cup | Reading FC | 2 | 1 | 0 | 0 | 162 | 1 |
| 22/23 | FA Cup | Reading FC | 2 | 0 | 0 | 0 | 26 | 0 |
| 22/23 | EFL Cup | Reading FC | 1 | 0 | 0 | 0 | 9 | 0 |
| 22/23 | Championship | Reading FC | 2 | 0 | 0 | 0 | 14 | 0 |
Appearances in our supported competitions. Goals, assists and minutes come from match reports where we have them.
Match log
Newest first| Date | Competition | Match | Score | Minutes | Goals |
|---|---|---|---|---|---|
| 31 Oct 2026 | National League | Forest Green Rovers v Harrogate Town | 2 – 2 | 90 | |
| 24 Oct 2026 | National League | Harrogate Town v Sutton United | 3 – 1 | 90 | |
| 03 Oct 2026 | National League | Harrogate Town v Hornchurch FCSubstitute, on 80′ | 3 – 0 | 10 | |
| 26 Sep 2026 | National League | Harrogate Town v Eastleigh FCSubstitute, on 82′ | 4 – 1 | 8 | |
| 19 Sep 2026 | National League | Boreham Wood FC v Harrogate TownSubstitute, on 71′ | 4 – 1 | 19 | |
| 12 Sep 2026 | National League | Harrogate Town v Tamworth FCSubstitute, on 68′ | 3 – 1 | 22 | |
| 02 May 2026 | League One | Leyton Orient v Burton Albion | 2 – 2 | 68 | |
| 25 Apr 2026 | League One | Blackpool FC v Leyton OrientSubstitute, on 86′ | 1 – 0 | 4 | |
| 06 Apr 2026 | League One | Leyton Orient v Huddersfield TownSubstitute, on 87′ | 1 – 2 | 3 | |
| 28 Mar 2026 | League One | Exeter City v Leyton OrientSubstitute, on 18′ | 0 – 0 | 28 | |
| 28 Feb 2026 | League One | Leyton Orient v Barnsley FC | 1 – 3 | 90 | |
| 21 Feb 2026 | League One | Northampton Town v Leyton Orient | 1 – 2 | 90 | |
| 31 Jan 2026 | League One | Leyton Orient v Port Vale FC | 0 – 1 | 68 | |
| 27 Jan 2026 | League One | Doncaster Rovers v Leyton OrientSubstitute, on 46′ | 3 – 0 | 45 | |
| 24 Jan 2026 | League One | Bolton Wanderers v Leyton OrientSubstitute, on 66′ | 2 – 1 | 24 | |
| 10 Jan 2026 | League One | Leyton Orient v Cardiff City | 1 – 1 | 61 | |
| 01 Jan 2026 | League One | Leyton Orient v AFC WimbledonSubstitute, on 75′ | 1 – 3 | 15 | |
| 26 Dec 2025 | League One | Peterborough United v Leyton Orient | 1 – 0 | 90 | |
| 20 Dec 2025 | League One | Leyton Orient v Bradford City | 2 – 1 | 90 | |
| 13 Dec 2025 | League One | Barnsley FC v Leyton Orient | 3 – 2 | 59 |
Career transfers
8 recorded movesAll recorded career moves, newest first.
| Date | From | To | Move | Fee |
|---|---|---|---|---|
| 08 Dec 2026Pending | Harrogate Town | Leyton Orient | Loan return | |
| 10 Sep 2026 | Leyton Orient | Harrogate Town | Loan | — |
| 04 Jul 2025 | Reading FC | Leyton Orient | Transfer | — |
| 01 Jul 2023 | Reading FC U21 | Reading FC | Internal move | — |
| 01 Jul 2022 | Without club | Reading FC U21 | Transfer | — |
| 10 Feb 2022 | Tottenham Hotspur U21 | Without club | Released | — |
| 01 Jul 2021 | Tottenham Hotspur U18 | Tottenham Hotspur U21 | Internal move | — |
| 01 Jul 2019 | Tottenham Hotspur Youth | Tottenham Hotspur U18 | Internal move | — |
Contracts and market values are not available yet.