Virat Kohli scored 30 Test centuries in his 14-year career, totaling 9,230 runs in 123 matches. He holds the record for most double centuries by an Indian (7) and scored the most centuries (9) against Australia. His centuries are evenly split between home and overseas matches, showcasing his consistency worldwide.
Table of Contents
Virat Kohli scored 30 centuries in his test career

Indian batting legend Virat Kohli bid farewell to Test cricket on May 12, concluding a remarkable 14-year journey in the longest format. Making his Test debut in June 2011 against the West Indies, Kohli played his final Test match against Australia in January 2025.
Over 123 Tests and 210 innings, Kohli amassed 9,230 runs at an impressive average of 46.85. He retired as India’s fourth-highest Test run-scorer, trailing only legends Sachin Tendulkar, Rahul Dravid, and Sunil Gavaskar. His record includes 30 centuries and 31 half-centuries.
Notably, Kohli registered seven double centuries—the highest by any Indian batsman. His highest score remains an unbeaten 254 against South Africa in October 2019. When it comes to opponents, Kohli scored the most centuries (9) against Australia, followed by five centuries each against England and Sri Lanka.
Here’s a detailed look at all of Virat Kohli’s Test centuries.
1. 116 runs vs AUS (213 balls)- Australia vs India 4th test at Adelaide Cricket Stadium in Adelaide in January 2012.
2. 103 runs vs NZ (193 balls)- India vs New Zealand 2nd test at Chinnaswamy Stadium in Bengaluru in August 2012.
3. 103 runs vs ENG (295 balls)- India vs England 4th test at Vidarbha Cricket Association Stadium in Nagpur in December 2012.
4. 107 vs AUS (206 balls)- India vs Australia 1st test at MA Chidambaram Stadium in Chennai in February 2013.
5. 119 vs SA (181 balls)- South Africa vs India 1st test at New Wanderers Stadium in Johannesburg in December 2013.
6. 105* vs NZ (135 balls)- New Zealand vs India 2nd test at Basin Reserve Stadium in Wellington in February 2014.
7. 115 vs AUS (184 balls)- Australia vs India 1st test at Adelaide Cricket Stadium in Adelaide in December 2014 (1st innings).
8. 141 vs AUS (175 balls)- Australia vs India 1st test at Adelaide Cricket Stadium in Adelaide in December 2014 (2nd innings).
9. 161 vs AUS (272 balls)- Australia vs India 3rd test at Melbourne Cricket Ground in Melbourne in December 2014.
10. 147 vs AUS (230 balls)- Australia vs India 4th test at Sydney Cricket Ground in Sydney in January 2015.
11. 103 vs SL (191 balls)- Sri Lanka vs India 1st test at Galle International Stadium in Galle in August 2015.
12. 200 vs WI (283 balls)- West Indies vs India 1st test at Sir Vivian Richards Stadium in North Sound, Antigua in July 2016.
13. 211 vs NZ (366 balls)- India vs New Zealand 3rd test at Holkar Cricket Stadium in Indore in October 2016.
14. 167 vs ENG (267 balls)- India vs England 2nd test at Dr. Y.S. Rajasekhara Reddy ACA-VDCA Cricket Stadium in Visakhapatnam in November 2016.
15. 235 vs ENG (340 balls)- India vs England 4th test at Wankhede Cricket Stadium in Mumbai in December 2016.
16. 204 vs BAN (246 balls)- India vs Bangladesh, Only test at Rajiv Gandhi International Stadium in Hyderabad in February 2017.
17. 103* vs SL (136 balls)- Sri Lanka vs India 1st test at Galle International Stadium in Galle in July 2017.
18. 104* vs SL (119 balls)- India vs Sri Lanka 1st test at Eden Gardens in Kolkata in November 2017.
19. 213 (267 balls)- India vs Sri Lanka 2nd test at Vidarbha Cricket Association Stadium in Nagpur in November 2017.
20. 243 vs SL (287 balls)- India vs Sri Lanka 3rd test at Feroz Shah Kotla Stadium in Delhi in December 2017.
21. 153 vs SA (217 balls)- South Africa vs India 2nd test a SuperSport Park in Centurion in January 2018.
22. 149 vs ENG (255 balls)- England vs India 1st test at Edgbaston Stadium in Birmingham in August 2018.
23. 103 vs ENG (197 balls)- England vs India 3rd test at Trent Bridge Stadium in Nottingham in August 2018.
24. 139 vs WI (230 balls)- India vs West Indies 1st test at Saurashtra Cricket Association Stadium in Rajkot in October 2018.
25. 123 vs AUS (257 balls)- Australia vs India 2nd test at Perth Cricket Stadium in Perth in December 2018.
26. 254* vs SA (336 balls)- India vs South Africa 2nd test at Maharashtra Cricket Association Stadium in Pune in October 2019.
27. 136 vs BAN (194 balls)- India vs Bangladesh 2nd test at Eden Gardens in Kolkata in November 2019.
28. 186 vs AUS (364 balls)- India vs Australia 4th test at Narendra Modi Stadium in Ahmedabad in March 2023.
29. 121 vs WI (206 balls)- West Indies vs India 2nd test at Queen’s Park Oval at Port of Spain in July 2023.
30. 100* vs AUS (143 balls)- Australia vs India 1st test at Perth Cricket Stadium in Perth in November 2024.