Clark graduated through the Academy at Aston Villa, having been scouted by the club playing for Bedworth Eagles juniors at the age of eight. He made his first-team debut for the "Villans" in the EFL Cup on 22 August 2017, starting the match at left-back in a 4–1 victory over Wigan Athletic at Villa Park. Manager Steve Bruce said that "he had a very good debut considering that he’s played out of position". He was a part of the under-23 squad that finished as runners-up of the Premier League 2 Division Two and won the Premier League Cup during the 2017–18 season. He signed a new contract in March 2018 to keep him at the club until 2019.
On 16 August 2018, Clark joined League Two club Port Vale on loan for the rest of the 2018–19 season. Manager Neil Aspin signed him to provide cover at full-back for James Gibbons and Cristian Montaño, after football adviser John Rudge had scouted him playing for the Aston Villa under-23 side. He made his English Football League two debut days later, starting at left-back for the "Valiants" in a 1–0 win over Crawley Town at Vale Park. He retained his first-team place as the "Valiants" went on a run of poor run of results, though Clark was noted as being one of their better performers. He made a costly mistake to give away a goal during the opening minute of a 2–0 defeat at Grimsby Town on 6 October, but recovered from his mistake and kept his place in the team. He remained a key first-team player under new manager John Askey and played a total of 45 games throughout the 2018–19 season, mainly at right-back, where he linked up well with right-sided midfielder David Worrall.
On 26 July 2019, Clark signed a three-year deal with Premier League club Leicester City and was placed in Steve Beaglehole's under-23 squad. On 30 January 2020, Clark rejoined Port Vale on loan until the end of the 2019–20 season. He made an impressive second debut two days later, forcing an own goal with a dangerous cross in a 1–1 home draw with Salford City. Clark represented the Wales under-17 team and went on to be named as captain of the under-19 side by manager Paul Bodin.