Successivamente, dopo essere stato escluso dai convocati per Euro 2016, viene convocato per il mondiale 2018 e per Euro 2021; nell'amichevole disputata prima di quest'ultima manifestazione contro il , vinta per 7-0, il 3 giugno ha realizzato la sua prima tripletta in nazionale. Nel corso del torneo va a segno nel pareggio per 3-3 contro la realizzando il terzo gol degli elvetici nel finale; al termine dei supplementari la partita finisce 3-3, e ai rigori gli elvetici hanno la meglio con Gavranović che ha realizzato il suo tiro. Il cammino degli elvetici si conclude al turno successivo (ovvero ai quarti) ai rigori contro la nonostante lui avesse realizzato il suo tiro dal dischetto.