A talent of the Brøndby academy, Olsen joined Italian Serie A club Inter Milan at age 18. After several spells with clubs in Norway, France and Switzerland, he returned to Denmark to play for Helsingør. After successive relegations, he moved to AaB before joining rivals AGF in 2020 after a breakout season. In early 2022, he signed for Polish top-flight side Śląsk Wrocław.
Born in Tårnby, Olsen joined the youth academy of Brøndby as an eight-year-old.[1] He was promoted to the first-team squad in 2012, and made his professional debut in the Danish Superliga on 6 May 2012 against AaB. He made three appearances for the club.[2]
Inter Milan
On 31 August 2012, Olsen signed with Serie A club Inter Milan on a three-year contract.[3]
He played in Guinness Cup in 2013 with Inter and appeared in one Coppa Italia match, coming on as a substitute against Trapani.[4] In February 2014, he was loaned out to Norwegian club Strømsgodset.[5]
He spent 2014 on loan to Strømsgodset, but failed to break into the team, playing only 6 matches. He played instead mostly for the reserve team, where he received three red cards in total during the season. On 2 February 2015, Olsen was released from Inter.[6]
Years abroad
On 24 April 2015, Olsen joined Norwegian side Haugesund.[7] On 20 July 2015, after playing 11 of the 12 next league matches, Olsen left on a free transfer, despite that the club wanting to keep him.[8]
On 27 August 2015, it was announced, that Olsen had signed a contract with Ligue 2 club RC Lens.[9]
After a new coach arrived at Lens, Olsen played less during the 2016–17 season and in the winter break he moved to Swiss club Grasshoppers on 27 January 2017.[10]
Return to Denmark
On 16 September 2017, Olsen moved to Danish club FC Helsingør, who had just won promotion to the Danish Superliga. He signed a three-year contract valid until the summer of 2020.[11] Helsingør suffered relegation to the 1st Division during his first season at the club.[12] After another disappointing season, Olsen even experienced relegation to the third-tier 2nd Division with the club.[13]
On 26 June 2019, Olsen joined Superliga club AaB on a three-year contract.[14] He evolved into a key player for the club, making 40 total appearances during the season in which he scored nine goals.[2] AaB finished as runner-up in the Danish Cup and sixth in the league table.[15]
On 19 August 2020, it was announced that Olsen had signed a five-year contract with fellow Danish Superliga club AGF.[16] AGF paid DKK 6 million for him, and could end up – if all bonus clauses were triggered – end up paying close to DKK 9 million.[17]
Śląsk Wrocław
On 15 February 2022, Olsen moved abroad yet again, as he was announced to have joined Polish Ekstraklasa side Śląsk Wrocław on a three-and-a-half-year deal.[18] He served as the club's captain for the majority of the 2022–23 season and helped Śląsk finish the following league campaign as runners-up. On 4 September 2024, it was announced Olsen left the club by mutual consent.[19]
Dinamo București
On the day of his departure from Śląsk, Olsen signed for Romanian Liga I outfit Dinamo București on a two-year contract.[20]
In May 2013, Olsen was suspended for two days by his U19 national team coach Thomas Frank, as he had broken some internal rules. Unlike the other players, he had not been to the hotel on time.[22]