* Penampilan dan gol di klub senior hanya dihitung dari liga domestik dan akurat per 2 Maret 2024 ‡ Penampilan dan gol di tim nasional akurat per 26 Maret 2023
Pada 31 Januari 2018, ia menandatangani kontrak berdurasi 3,5 tahun dengan klub EredivisieVitesse yang membayar
€2,5 juta untuknya.[6]
Pada 2 September 2019, ia menandatangani kontrak berdurasi 4 tahun dengan juara bertahan Liga Utama RusiaZenit Saint Petersburg.[7] Pada 4 April 2023, Karavayev memperpanjang kontraknya dengan Zenit hingga akhir musim 2025–26, dengan opsi untuk satu musim lagi.[8]
Pada 11 Mei 2021, ia dimasukkan dalam skuad 30 pemain awal yang dipersiapkan untuk UEFA Euro 2020.[12] Pada 2 Juni 2021, ia masuk ke dalam skuad akhir untuk kompetisi itu.[13] Dalam pertandingan pembuka saat Rusia melawan Belgia pada 12 Juni 2021, dia menggantikan Yuri Zhirkov yang cedera di akhir babak pertama, saat Rusia kalah 0–3.[14] Pada pertandingan kedua saat melawan Finlandia pada 16 Juni, dia sekali lagi harus masuk sebagai pemain pengganti di babak pertama untuk rekan setimnya yang cedera, kali ini Mário Fernandes, Rusia memenangkan pertandingan 1–0.[15] Dia tampil sebagai pemain pengganti di babak kedua pada 21 Juni di pertandingan fase grup terakhir melawan Denmark saat Rusia kalah 1–4 dan tersingkir.[16]
^"KARAVAEV VERSTERKT VITESSE" (dalam bahasa Belanda). SBV Vitesse. 31 Januari 2018. Diakses tanggal 31 Januari 2018.
^"Вячеслав Караваев переходит в "Зенит"" [Vyacheslav Karavayev pindah ke Zenit] (dalam bahasa Rusia). FC Zenit Saint Petersburg. 2 September 2019. Diakses tanggal 2 September 2019.
^"Состав сборной России на ЕВРО-2020" [Susunan tim nasional Rusia untuk EURO 2020] (dalam bahasa Rusia). Russian Football Union. 2 Juni 2021. Diakses tanggal 2 Juni 2021.