Armstrong began his career with Middlesbrough, making his way up through the academy teams until he was released by the club in the summer of 2014.[4] He subsequently joined Birmingham City's youth setup on a one-year deal after a successful trial period but would leave after he was informed that his contract with Birmingham City would not be renewed in the summer of 2015.[5]
Armstrong then had a successful trial period with Scottish League One outfit Cowdenbeath, leading to him being handed a one-year deal.[6] After six months with the club, Armstrong decided to terminate his contract due his game time being limited to just a few substitute appearances during the half-season.[7]
Following this setback, Armstrong would join Northern Premier League Premier Division club Blyth Spartans, which was then managed by his father, Alun Armstrong.[8] He would score 23 goals across the season, helping his team to win the Northumberland Senior Cup and league title, ultimately attracting the attention of one of his previous employers in the form of Middlesbrough.[9]
Return to Middlesbrough and loans
On 16 July 2018, Armstrong joined National League club Gateshead on loan until the end of the season.[10] On 29 July 2018, he notably scored a hat-trick against his former club Blyth Spartans during a 3–1 victory in a friendly at Croft Park.[11] After scoring on his Heed début, Armstrong would score two goals against Salford City in a 2–1 victory.[12] He went on to make 18 appearances for the club, during which he scored a further seven goals, by the time his loan was cut short by parent club Middlesbrough on 31 December 2018.[13]
On 26 July 2019, Armstrong joined newly promoted League Two outfit Salford City on a permanent transfer, signing a three-year contract.[16] He scored his first goal against Walsall, opening the scoring in a 3–0 triumph as Salford won away for the first time in the English Football League.[17]
On 26 June 2021 it was announced that he has signed for Harrogate Town for an undisclosed fee.[22] Armstrong signed a new contract at the end of the 2021–22 season that would keep him at the club until the summer of 2025.[23]
Ahead of the start of the 2023–24 season, after the club had rejected transfer bids for him, Armstrong made himself unavailable for selection.[24][25] On the final day of the summer transfer window, Wrexham agreed terms with Harrogate to sign Armstrong.[26] However, the deal was not completed before the 23:00 deadline, therefore Armstrong remained a Harrogate Town player.[26] In a club statement, Wrexham said the "required documentation and clearance requests could not be completed in time and Armstrong's registration has been rejected".[26]
Carlisle United
On 18 December 2023, it was announced that Armstrong would join League One club Carlisle United when the transfer window opens on 1 January 2024.[27] The move was confirmed on 4 January 2024, Armstrong joining for an undisclosed fee on a three-and-a-half-year contract.[28][29] He scored his first Carlisle goal in a 2–1 away defeat to Barnsley.[30]