Newcastle United 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. 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. On 15 March, Armstrong made his debut as an 86th-minute substitute for
Luuk de Jong in a league defeat to
Fulham, making him the second youngest player to play for Newcastle in the Premier League after
Kazenga LuaLua. On 24 September 2014, Armstrong started his first game for Newcastle in a
League Cup third round match against
Crystal Palace. Newcastle won the match 3–2 in extra time with Armstrong providing assists for two of Newcastle's goals. Armstrong received his first
Premier League start on 26 December in a 3–1 loss to
Manchester United at
Old Trafford.
Coventry City (loan) On 28 July 2015, Armstrong joined
Coventry City on a youth loan until 16 January 2016. He made his debut on 8 August, scoring both goals in a 2–0 win over
Wigan Athletic at the
Ricoh Arena in the first game of the new
League One season. A week later, he netted another brace in a 4–0 victory away to
Millwall, the first goal coming from 35 yards out. 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. After scoring again in his next match on 18 August in a 3–2 win against
Crewe Alexandra, Armstrong won the League One Player of the Month award for August with five goals in his first five games. On 19 September, Armstrong scored a sixth goal to give Coventry victory against
Chesterfield, and on 3 October he netted a third brace of the campaign in a 3–0 win over
Shrewsbury Town. 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. Armstrong scored a first senior
hat-trick on 2 January 2016, in a 5–0 win at
Crewe Alexandra. On 14 January 2016, Armstrong's loan was extended until the end of the season. He finished the season scoring 20 goals in his 40 Coventry appearances. In April, he was listed in the
PFA Team of the Year for League One. 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. 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. In January 2017, it was announced that Armstrong had extended his loan spell at the club until the end of the 2016–17 season.
Bolton Wanderers (loan) On 17 July 2017, Armstrong joined
Championship side
Bolton Wanderers until the following January. 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 before making his first start in the
EFL Cup at
Crewe Alexandra, scoring in a 2–1 win. Armstrong was recalled from his loan spell on 4 January 2018, having made 23 appearances in all competitions.
Blackburn Rovers On 9 January 2018, Armstrong joined
EFL League One side
Blackburn Rovers on loan until the end of the season. He helped Blackburn secure promotion to the
EFL Championship at the first time of asking. 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. Throughout the 2020–21 season, he scored three hat-tricks, coming against
Wycombe Wanderers,
Huddersfield Town and
Birmingham City. Armstrong scored 64 league and cup goals in his 160 appearances for Rovers, including 29 goals in his
final season with them. reported to be in the region of £15 million. He scored on his debut for the club, a 3–1 defeat away to
Everton on the opening day of the
Premier League season. On 5 November 2021, Armstrong scored his second goal of the season in a 1–0 victory against
Aston Villa. Armstrong would not score again in his eight starts during the rest of the
2021–22 season. On 30 August 2022, Armstrong scored his first league goal of the season in a 2–1 win against
Chelsea. Armstrong ended his goal drought and scored on 7 January 2023 in a 2–1 victory against
Crystal Palace in the
FA Cup. In the final game of the 2022–23 season, he scored in a 4–4 draw against
Liverpool. Following Southampton's relegation from the Premier League, Armstrong scored in the opening game of the
2023–24 season in a 2–1 away victory against
Sheffield Wednesday after a left-footed shot from
Nathan Tella flicked off of his head. A week later, Armstrong scored two penalties in a 4–4 draw against Norwich City. 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. Later that month, on 26 May, he netted the decisive goal in a 1–0 victory over Leeds United in the final, ensuring his club's promotion to the Premier League. His first league goal of the
2024–25 season, a 1–0 home victory against Everton on 2 November 2024, was also
Saints' first win following promotion from the Championship and lifted the club off the bottom of the Premier League.
West Bromwich Albion (loan) On 4 February 2025, Armstrong joined Championship side
West Bromwich Albion on loan for the remainder of the 2024–25 season. He scored on his debut for the club on 8 February 2025 in a 2–1 victory against Sheffield Wednesday.
Wolverhampton Wanderers On 2 February 2026, Armstrong joined
Wolverhampton Wanderers on a three-and-a-half-year contract. ==International career==