Cardiff City Spence started his career at
Cardiff City where he was awarded the club's academy player of the year award for the
2017–18 season. Spence was also part of the Cardiff City Under-18s side that was crowned champions of the
PDL2 South. In September 2019, Spence joined
Cymru Premier side
Barry Town United on loan.
Crystal Palace Following his release from Cardiff, Spence joined
Premier League side
Crystal Palace in September 2020, initially joining up with the club's
under-23s side. On 9 July 2021, Spence joined recently-relegated
League Two side
Bristol Rovers on a season-long loan deal. He made his professional debut in a 2–0
EFL Cup defeat to
Cheltenham Town. On 25 September 2021, Spence made his league debut for the club when he came on as a 90th minute substitute for
Harvey Saunders against
Walsall. He scored to give Rovers a 2–1 victory, the club's first away win for 9 months. Spence was released by Crystal Palace at the end of the 2021–22 season.
Non-League On 4 August 2022, Spence signed for
National League North club
Gloucester City on a one-year deal. On 7 July 2023, Spence signed for
National League North club
King's Lynn Town. On 21 October 2023, Spence joined
National League South bottom club
Havant & Waterlooville. On 24 June 2024, Spence joined
Northern Premier League Division One West club
Hednesford Town. In June 2025, Spence returned to
Southern League Premier Division South club
Gloucester City. ==International career==