At the age of 14, Škuletić joined the youth system of Partizan. He was promoted to their affiliated side Teleoptik during the 2007–08 season. In late May, early June 2008, Škuletić represented Partizan at the Trofeo Quixote, the unofficial youth world championship for clubs, becoming the tournament's top scorer with seven goals.[2] He still failed to secure a first team spot with Partizan, but helped Teleoptik win promotion to the Serbian First League via the playoffs in 2009.[3]
After previously being linked with Celtic and Blackburn Rovers,[4] Škuletić was eventually transferred to Austrian side LASK in the summer of 2009. He made 15 league appearances and scored once in the 2009–10 season. After six months without competitive football, Škuletić was loaned to Montenegrin First League club Zeta in the 2011 winter transfer window.[5]
On 10 January 2014, Škuletić signed a four-year contract with his parent club Partizan and was given the number 32 shirt.[8] He made his competitive debut for the side in a 0–0 away draw with Novi Pazar on 22 February 2014. Škuletić scored his first official goals for Partizan on 8 March 2014, netting a brace in a 5–0 away win over Radnički Kragujevac.[9] He scored another brace in a 5–0 home victory over Voždovac on 10 May 2014.[10] Škuletić scored a total of seven league goals in 13 appearances during the second part of the 2013–14 season.
In the opening match of the 2014–15 season, Škuletić scored the final goal of the game in a UEFA Champions Leaguequalifier versus Faroese champions HB Tórshavn, a 3–0 win for Partizan.[11] He subsequently scored a brace to help his team to a 2–2 home draw with Bulgarian side Ludogorets Razgrad in the third round on 6 August 2014. However, they were eliminated on the away goals rule.[12] Škuletić then scored both of his team's goals in a 2–1 away win over Azerbaijani club Neftçi in the UEFA Europa Leagueplay-off round on 28 August 2014.[13] He was also sent off in the game's injury time, causing him to miss the first two games of the group stage due to suspension.[14] On 9 November 2014, Škuletić scored a hat-trick in a 3–0 away win over Spartak Subotica.[15] He managed to score a total of 21 goals in the second half of 2014, breaking the club's record of 20 goals set by Cléo in the fall of 2010.[16]
Lokomotiv Moscow
On 12 February 2015, it was announced that Škuletić would join Lokomotiv Moscow.[17] He was officially transferred to the Russian club on the following day, penning a four-year contract.[18] The transfer fee was €4 million.[19]
On 3 March 2015, Škuletić made his competitive debut for the club in the Russian Cup quarter-final versus Rubin Kazan, scoring the winning goal in the penalty shootout.[20] He then scored on his league debut on 8 March 2015, to give his new club a 1–0 away win over Rostov.[21]
Gençlerbirliği
On 31 May 2017, Škuletić signed a two-year contract with Turkish side Gençlerbirliği.[22] He scored his first goal for the club in a 2–3 away loss to Göztepe on 17 September 2017.
Montpellier
On 13 June 2018, Škuletić joined French side Montpellier.[23]
Sabah
On 14 September 2021, Škuletić signed for Azerbaijan Premier League side Sabah on a two-year contract.[24] Six weeks later, on 27 October 2021, Škuletić left Sabah by mutual consent.[25]
In the fall of 2014, after a string of impressive performances at club level, Škuletić again expressed his desire to represent Serbia internationally.[26] He made his senior international debut for Serbia on 29 March 2015, after coming on as a second-half substitute for Adem Ljajić in the 1–2 away loss to Portugal. Škuletić scored his first goal for the national team in a 1–4 friendly loss against the Czech Republic on 13 November 2015.