Karavajev komt uit de jeugdopleiding van CSKA Moskou. Daarvoor debuteerde hij op 2 december 2013 in de Premjer-Liga, tegen FK Rostov. Zijn debuut in de UEFA Champions League volgde op 10 december 2013, tegen Viktoria Pilsen. Hij speelde de volledige wedstrijd, die met 2–1 verloren ging. Daarna speelde hij voor Sparta uit Praag.
Op 31 januari 2018 tekende hij een contract voor 3,5 jaar bij Vitesse.