A lifelong Newcastle fan, Armstrong joined the club at the age of nine and progressed through the ranks, scoring five times in his first five Professional Development League matches.
[4] Armstrong was named among Newcastle's substitutes for the first time on 28 January 2014 for a Premier League game against Norwich City, remaining unused in the goalless draw at Carrow Road.
Former Coventry and Newcastle legend Micky Quinn challenged him to beat his record of ten goals in his first six games in 1992 following his own move from the North East to the West Midlands.
[14] On 19 September, Armstrong scored a sixth goal to give Coventry victory against Chesterfield,[15] and on 3 October he netted a third brace of the campaign in a 3–0 win over Shrewsbury Town.
[16] He recorded consecutive braces on 31 October and 3 November, in home victories over Peterborough United and Barnsley, the former seeing his team come from 1–2 behind with ten minutes to go.
[21] Despite making two appearances for Newcastle at the start of the 2016–17 season, on 30 August, Armstrong joined fellow Championship side Barnsley on an initial six-month loan deal,[22] having signed a new four-year deal at St James' Park before his departure, after Newcastle manager Rafael Benítez expressed his desire for Armstrong to gain more experience at Championship level.
[23] He made his debut for the Tykes on 10 September as a substitute in place of Ryan Kent during a 2–1 victory at Preston North End, scoring the winning goal with a left-footed curling effort after outpacing and losing his marker with a backheel.
[26] He made his debut for the club on 6 August, coming on as a late substitute for Stephen Darby in Bolton's 3–2 home defeat to Leeds United[27] before making his first start in the EFL Cup at Crewe Alexandra, scoring in a 2–1 win.
[31] Armstrong signed for Blackburn Rovers permanently on 6 August 2018 on a four-year contract for an undisclosed fee believed to be in the region of £1.75 million.
[34] On 10 August 2021, Armstrong joined Premier League side Southampton on a four-year deal for an undisclosed fee,[35] reported to be in the region of £15 million.
[43] Following Southampton's relegation from the Premier League, Armstrong scored in the opening game of the 2023–24 season in a 1–2 victory against Sheffield Wednesday after a left-footed shot from Nathan Tella flicked off of his head.
[45] On 17 May 2024, he scored twice in a 3–1 victory against West Bromwich Albion in the second leg of the EFL Championship play-off semi-final, securing his team's place in the final.
[60] This was to be his last appearance for the under-16 team, as he moved up to the under-17 side, scoring on his debut in a 1–0 win against Turkey in the FA International Tournament held at St George's Park National Football Centre in Burton upon Trent.