Johnstone joined St Johnstone in a season-long loan for 2017–18 before being released by Colchester at the end of that season. After a season with Greenock Morton, he signed for Falkirk in 2019, spending time on loan at Stranraer before joining Dumbarton in July 2020.[3]
Celtic's qualification for the group stages of the 2013–14 Champions League meant that their youth team would play in the UEFA Youth League, in groups that mirrored those of the senior team. Johnstone scored versus Barcelona's youth team [7] and produced a good performance playing in the lone striker role in a 4–1 win versus Ajax.[8] By the end of the season, Johnstone had made no senior appearances and rejected the offer of a new contract with Celtic. Johnstone was attracted by a move to Dundee United but the clubs were unable to agree a compensation figure and United pulled out of any deal because of the uncertainty of a fee set by any tribunal.[9][10]
Birmingham City
Ahead of the 2014–15 season, Johnstone trained with English Championship club Birmingham City, where Alan Thompson (who Johnstone knew from his time at Celtic) was the development coach. It was reported that Birmingham had attempted to persuade Celtic to accept a huge sell-on fee but by the end of July 2014, their budget had stretched to an acceptable figure and Johnstone signed a three-year contract.[11] Johnstone started his first professional match on 19 August 2014, replacing Wes Thomas in the 81st minute of a 2–2 draw versus Ipswich Town.[12]
Macclesfield Town (loan)
Johnstone joined Conference Premier club Macclesfield Town on 27 November 2014, on a one-month loan spell, having scored 4 goals in 7 development squad matches.[13] Johnstone made his debut as a second-half substitute in a 3–1 defeat versus Barnet on 29 November 2014 [14] and scored his first goal on his fifth appearance, six minutes after appearing as a substitute during the 5–1 win versus Alfreton Town on 20 December 2014.[15] Despite his loan being extended on two occasions, firstly to 7 January 2015 and then extended until the end of that season,[16] Johnstone was recalled by Birmingham on 2 February 2015, which was the final day of the transfer window, although he was loaned out to League Two club Cheltenham Town for the remainder of the campaign. Cheltenham had wanted to secure the player on a permanent contract but Birmingham were unwilling to release him.[17] Johnstone had scored three goals in nine Conference appearances for Macclesfield.[18]
Cheltenham Town (loan)
Johnstone made his debut for Cheltenham on 7 February 2015 in their 3–1 home defeat against Burton Albion.[19] A week later, Johnstone scored his first Football League goal in the 24th minute on his third appearance for the club; Cheltenham lost the match 2–1 to Bury.[20] He was recalled by Birmingham in early March 2015, after scoring once in five league appearances.[21]
Burton Albion (loan)
On 26 March 2015, Johnstone joined League Two leaders Burton Albion on loan until the end of the season.[22] He made his Burton debut on 3 April 2015, playing the first hour of a 1–1 draw away to Plymouth Argyle.[23] In his third appearance, after Carlisle United took an early lead, he needed lengthy treatment following a clash of heads but was able to return to the field of play, only to then score an equaliser in the eighth minute of stoppage time after a goalmouth scramble.[24] Johnstone was an unused substitute in Burton's last match of the season, which confirmed the club as League Two championship winners.[25] Johnstone played on five occasions for Burton.[18]
Greenock Morton (loan)
Johnstone joined Renfrewshire club Greenock Morton on 31 July 2015 on loan for the 2015–16 season. Birmingham included an option to recall the player in January 2016.[26] He made his debut the following day in a 5–0 win against Elgin City in the League Cup, back-heeling Morton's second goal and showing "good hold-up play and an ability to bring others into play".[27] Johnstone helped Morton to a fifth-place finish in the Scottish Championship, scoring 17 goals in all competitions and providing six assists.[28]
Colchester United
League Two club Colchester United signed Johnstone on a two-year contract for an undisclosed fee on 28 June 2016.[29] He made his debut for the club as a second-half substitute for Chris Porter in Colchester's 1–1 draw with Hartlepool United at Victoria Park on the opening day of the 2016–17 season,[30] before scoring his first goal from the bench on his home debut in a 2–0 win against Cambridge United on 13 August.[31] He was ruled out for the remainder of the season having made 32 appearances and scoring two goals after tearing knee cartilage during Colchester's 2–1 defeat at Accrington Stanley on 18 February.[32]
In August 2017, Johnstone moved on loan to Scottish Premiership club St Johnstone.[33] He made his club debut as an 81st-minute substitute in St Johnstone's 1–1 draw with his former club Celtic.[34] He scored his first goal for the club on 16 December in a 3–1 win at Rangers.[35]
At the end of the 2017-18 season, Johnstone was released by Colchester United.[36]
Return to Greenock Morton
After his release by Colchester United, Johnstone returned to Scotland for a second spell with Greenock Morton on a one-year contract.[37] He made his first appearance since his return to Cappielow in a 3–0 win versus Falkirk Reserves at the Falkirk Stadium, as he scored a brace.[38]
After leaving the Bairns in the summer of 2020, he joined fellow Scottish League One side Dumbarton in July 2020 - teaming up with manager at Morton, Jim Duffy.[3] Johnstone made 11 appearances for the Sons, but failed to score, before leaving the club in March 2021.[40]
He made his international debut for the under-16 team against Jersey on 24 August 2010 in a 3–0 International Challenge Match win for Scotland. He made four appearances for the under-16 team, scoring once against Northern Ireland.[41]
Johnstone first appeared for the under-17 team on 12 January 2011 in a 1–0 win away to Malta. He scored once in 10 appearances at under-17 level in a 2–1 defeat to Croatia.[42]
He played just one game for the Scotland under-18 side, a 1–0 defeat to Israel in April 2013.[43]
Johnstone first represented Scotland at under-19 level on 6 February 2013, scoring in the 2–1 defeat to Netherlands. He scored twice more for the under-19s, the only goal against Belarus on 12 October 2013, and a goal in the 1–1 draw with Germany three days later. He made nine appearances for the under-19s.[44]