Born in Koper, Štulac started his career at hometown club FC Koper. He made his Slovenian PrvaLiga debut on 2 April 2011, aged 16, in a 3–0 victory against Maribor.[2]
Štulac scored his first Serie B goal on 24 October 2017 in a 2–1 away defeat against Cittadella. On 5 May 2018, he scored the winner in a 2–1 victory against Foggia.[citation needed]
Parma
On 30 June 2018, Štulac signed for Serie A club Parma on a five-year contract.[5]
Empoli
On 26 July 2019, Štulac signed with Serie B club Empoli.[6] With Empoli, he won promotion to Serie A in 2021, and played the 2021–22 Serie A with the Tuscanians.
Palermo
On 18 August 2022, Štulac was signed by Serie B club Palermo on a loan deal with a mandatory buying option to be exercised on certain conditions.[7]
Štulac's first season with the Rosanero was marred by injuries and was eventually cut short by a serious muscle injury that sidelined him from January until the end of the campaign.[8] Despite that, Palermo signed him permanently from Empoli and confirmed him in the first team roster.[9]
On 2 September 2023, Štulac scored his first league goal with Palermo in a 3–0 home win against Feralpisalò.[10]
Reggiana
On 2 August 2024, Štulac went on a two-year loan deal to fellow Serie B side Reggiana.[11][12]
International career
Štulac played for various Slovenian national youth selections, such as the under-17, under-19 and under-21 teams.[13]
In March 2018, he received his first call-up to the senior national team for the friendly matches against Austria and Belarus.[14] He made his senior debut against Cyprus on 9 September 2018.[15]