In 2007, Colkett joined Chelsea at under-11 level from Charlton Athletic and progressed through the club's academy system. He was part of the Chelsea youth side which recorded back to back triumphs in both the UEFA Youth League and the FA Youth Cup in 2015 and 2016. On 9 April 2016, Colkett was named upon the first-team substitute bench along with fellow academy players Ola Aina and Kasey Palmer, in Chelsea's 1–0 away defeat to Swansea City. However, he failed to make an appearance. A couple of weeks later, Colkett went onto sign a new three-year deal, with his current contract due to expire in June 2016.
On 31 August 2016, Colkett joined League One side Bristol Rovers on a season-long loan along with teammate Jake Clarke-Salter. On 10 September 2016, Colkett went onto make his professional debut in a 2–2 draw with Rochdale, replacing Hiram Boateng with ten minutes remaining. He scored his first goal for Bristol Rovers which was also his first professional goal, with a late equaliser in a 1–1 draw with Bradford City. On 1 October 2016, Colkett scored the winner in stoppage time to earn a 3–2 win over Northampton Town. Colkett was recalled by Chelsea on 5 January 2017 ending his loan spell with Bristol Rovers with 17 appearances in all competitions and 3 goals.
On 11 January 2017, Colkett joined Swindon Town on loan for the remainder of the 2016–17 campaign. Three days later, Colkett made his Swindon Town debut in their 2–1 victory over Bolton Wanderers, assisting Yaser Kasim's late winner in the 89th minute, before being replaced by Sean Murray with seconds remaining. On 14 March 2017, Colkett scored his first goal for Swindon in their 4–2 home defeat against Sheffield United, netting the hosts opener of the evening from 20-yards out.
On 6 July 2017, Colkett joined Vitesse on loan for the 2017–18 campaign. On 5 August 2017, Colkett made his Vitesse debut during their Johan Cruyff Shield tie against Feyenoord, replacing Thomas Bruns in the 1–1 draw, which Feyenoord eventually won on penalties. On 31 January 2018, after only appearing eleven times, including two starts all season, Colkett's loan spell was terminated and he returned to Chelsea.
On 21 July 2018, Colkett joined League One side Shrewsbury Town on loan for the 2018–19 campaign. He started in the season-opening 1–0 home loss to Bradford City but made only five more appearances – all in cups – before Shrewsbury ended his loan prematurely on New Year's Eve.
Östersunds FK
On 25 January 2019, Colkett signed for Östersund on a 3-year deal for a "small fee". He scored his first Allsvenskan goal from distance in a 3–2 home win over Falkenbergs FF on 7 April.
International career
Colkett has represented England from under-16 level to under-20 level.