Slavchev started his career at home-town club Septemvri Sofia, joining their youth system as a six-year-old. In the 2006–07 season, he became a goalscorer for their youth team. In 2007, Slavchev joined Slavia Sofia and was part of the side that won the Bulgarian U-15 Championship in the 2007–08 season.
Slavchev joined the Litex'sfirst team in October 2010. He made his debut during the 2010–11 season, on 31 October 2010 in a 2–0 home win over Slavia Sofia, coming on as a substitute for Hristo Yanev. In July 2011, Slavchev joined Chavdar Etropole on a season-long loan deal. In the 2011–12 season, he earned 13 appearances in the B PFG. In the summer of 2012, he returned to Litex. On 4 November 2012, in the league match against Cherno More, he marked his first goal in the A PFG in a 4–1 victory.
On 19 May 2014, Slavchev signed with Portuguese side Sporting CP on a five-year deal, for a reported fee of 2,5 million euro.
Loans to Bolton, Apollon and Lechia
On 2 February 2015 Slavchev joined Bolton Wanderers until the end of the season. He made his debut for the team in the English Championship on 7 February 2015 in a match against Derby County. It was his only match for Bolton after Slavchev got injured and was ruled out until the end of the season. On 11 August 2015, Slavchev joined the Cypriot team Apollon Limassol on loan for the 2015–16 season. He made his debut on 23 August 2015, scoring the winning goal after added time. On 19 May 2016 Apollon won the Cypriot Cup. Slavchev had an injury at the end of the 2015-2016 season. Sporting decided to loan him out in order for him to gain more experience and to reach full fitness. On 17 August 2016, Slavchev joined Polish club Lechia Gdańsk, on a season-long loan, where he would play alongside fellow Bulgarian footballer, Milen Gamakov. Slavchev made his debut for the team on 9 September 2016, playing the full 90 minutes in a 1-0 win against KS Cracovia. He scored his first goal for the team on 11 March 2018, in a 1-3 home loss against Legia Warszawa. Slavchev spent a trial period at Birmingham City during the summer of 2017.
After agreeing to rescind his contract with the Azerbaijani side, Slavchev returned to his home country. On 22 December 2019 he signed a 3-year deal with Levski Sofia. He made his official debut for the "bluemen" on 15 February 2020, in the 0:0 league draw with CSKA Sofia in The Eternal Derby, coming on as an early substitute before being replaced himself towards the end of the match due to injury issues. On 20 June 2020, he scored his first goal for the club in another Eternal derby that ended 3:3.