Having been with the club as a youth player for several years, He signed a new two-year contract with
Accies later that month. Cunningham was loaned to
Scottish League One club
Forfar Athletic in September 2018. He scored a goal on his debut appearance for Forfar, in a 3–1 defeat to
Arbroath on 15 September. then suffered an ankle injury which ruled him out for the rest of the season. He scored his first goals for the club in the early-season group stage of the
2019–20 Scottish League Cup, then registered his first in the
Scottish Premiership with a late penalty to secure a 2–1 win over
Livingston. On 5 February 2020, Cunningham moved on loan to
Clyde for the remainder of the season. Cunningham left Hamilton in August 2020, after 11 years with the club. In September 2020 he returned to
Clyde on a permanent contract. On 24 May 2023, Cunningham signed for
Kelty Hearts. On 26 May 2025, Cunningham signed for
Scottish League Two club
Stirling Albion. ==International career==