Boateng was born in Wandsworth and played in the Crystal Palace academy from the age of eight and progressed to the first team in 2013. He made his professional debut in 4–1 defeat in a FA Cup third round replay against Stoke City at the Britannia Stadium on 15 January 2013. At the end of the 2012–13 season, Boateng was awarded Paul Brooks Academy Player of the Year and the next season, Boateng was, again, awarded Vice-Presidents' Young Player of the Year. Despite impressing in that game his opportunities were limited, but entered the first team frame in December 2013 due to the injuries of Kagisho Dikgacoi and Stuart O'Keefe. He was named as a substitute on 26 December against Aston Villa. He made his second appearance for the club in the FA Cup in a 2–0 win against West Brom at The Hawthorns on 4 January 2014. In April 2014, Boateng then signed his first professional contract with the club. Boateng then featured in the pre-season friendlies ahead of the 2014–15 season. He appeared for the reserve side in 2014–15 and was an unused substitute on three occasions. Boateng subsequently signed a contract, keeping him with the club until 2017. Boateng made his League debut for Palace, as a 70th-minute substitute for Yohan Cabaye, in an away 1–1 draw against Swansea City on 6 February 2016.
On 7 February 2014, Boateng joined Crawley Town on a 28-day loan which became active when the loan window re-opened on 8 February 2014. The Palace loanee made his Crawley Town debut on 4 March 2014, where he made his first start, in a 1–1 draw against Stevenage. On 7 March 2014, Boateng extended his loan with the Red Devils until 5 April 2014. After making one appearance for the club, Boateng returned to his parent club upon expiry of his loan spell.
On 23 July 2015, Boateng signed for Plymouth Argyle on loan until 2 January 2016. His spell at Plymouth was cut short by injury and he returned to his parent club. However, on 23 March 2016, it was announced that Boateng had returned to Plymouth until the end of the season. He played in all three of Plymouth's play-off games including the final against AFC Wimbledon at Wembley which they lost 2–0.
On deadline day 2016, Boateng joined Bristol Rovers on loan until 2 January 2017 and was given the number 34 shirt. He made his debut on 10 September 2016 in a 2–2 home draw with Rochdale.
On 31 August 2017, Boateng made a deadline-day move to Exeter City on a free transfer from Crystal Palace. In April 2019, Exeter City manager Matt Taylor said Exeter would struggle to keep Boateng at the club if they weren't promoted, and by May had not signed a new contract with the club.
In May 2019, having declined the offer of a new contract with Exeter, Boateng joined up with former manager Paul Tisdale at Milton Keynes Dons, in a deal that would see Exeter City receive compensation due to the player's age.