Lovren begon te voetballen bij de jeugd NK Karlovac en stapte in 2009 over naar de jeugd van Dinamo Zagreb. Op 14 mei 2016 maakte Lovren zijn debuut op het hoogste niveau in de met 0–4 gewonnen wedstrijd tegen NK Lokomotiva Zagreb. In minuut 53 kwam hij Marko Pjaca vervangen.[1] Tijdens het seizoen 2017/18 werd Lovren uitgeleend aan Fortuna Düsseldorf, uitkomend in de 2. Bundesliga. Düsseldorf werd kampioen met drie punten voorsprong en mocht het volgende seizoen uitkomen in de Bundesliga. De huurovereenkomst werd uiteindelijk een definitieve overeenkomst.[2] Op 29 september 2018 maakte Lovren zijn debuut in de Bundesliga in in de met 3–0 verloren wedstrijd tegen Nürnberg.