Mitrović made his professional debut for Cibalia on 25 February 2012, aged 18, coming on as a substitute in an away win against Slaven Belupo.[4] In September 2013, he signed a two-year contract with Rijeka in the Prva HNL.[5] During his first season with Rijeka, Mitrović was member of the squad that won the Croatian Cup, scoring in the final against Dinamo Zagreb.[6] In June 2016, he signed a new three-year contract which tied him with the club until June 2019.[7] On 6 January 2017, he moved to Beşiktaş on a three-year deal for €4.2 million.[8]
On 29 January 2018, Mitrović joined Belgian club Club Brugge on a six-month-long loan deal.[9] On 20 July, he signed permanently for the club after agreeing to a four-year deal.[10]
In May 2018, he was named in Croatia's preliminary 32-man squad for the 2018 FIFA World Cup in Russia.[14] However, he did not make the final 23.[15] His last international appearance was a friendly match against Jordan in October 2018.[16]