Fifty-five ODI hundreds and 15,109 ODI runs sit at the top of the Virat Kohli stats sheet, from 317 one-day internationals. Tests add a tally of 9,230 and 30 tons from 123 appearances, T20Is a further 4,188 from 125, and the IPL 9,336, so the picture is of a top-order run machine in every format.
His ODI average in the fully scored games here is 58.34, struck at 93.89 per 100 balls, which explains why the 50-over game is where he scores most. The checked record says he left T20Is in Jun 2024 and Tests in May 2025, and that he still plays ODIs and the IPL.
Virat Kohli career by format
ODIs are the centre of the career. The official ledger reads 317 games, 15,109 runs and 55 centuries, topped by 183. That knock came off 148 balls versus Pakistan at Mirpur (18 Mar 2012). He also owns 5 ODI wickets.
Tests yield 9,230 runs from 123 outings, with 30 centuries and 254* as the peak. The full-scorecard table shows 31 half-centuries and a 46.85 average, scored more slowly at 55.58, with 1,028 fours.
T20Is contribute 4,188 runs in 125 games and one century, the 122* that stands as his official T20I best. That innings is missing from the 118 fully scored T20Is here, so the table below peaks at 94* versus West Indies (6 Dec 2019).
IPL: 9,336 runs, 9 tons and a ceiling of 113*, every run for Royal Challengers Bengaluru. Summed over the 552 internationals carrying a full scorecard, the batting table reaches 28,012.
Virat Kohli Stats: Official Career Totals
Official career figures, checked 8 Oct 2026. The detailed tables below are built from full match scorecards, so their totals can be a few matches short.
| Format | M | Runs | 100s | HS | Wkts |
|---|---|---|---|---|---|
| Tests | 123 | 9,230 | 30 | 254* | 0 |
| ODIs | 317 | 15,109 | 55 | 183 | 5 |
| T20Is | 125 | 4,188 | 1 | 122* | 4 |
| IPL | – | 9,336 | 9 | 113* | – |
Virat Kohli Runs in Tests, ODIs, T20Is and IPL
| Format | M | Inns | Runs | HS | Avg | SR | 100s | 50s | 4s | 6s |
|---|---|---|---|---|---|---|---|---|---|---|
| Tests | 123 | 210 | 9,230 | 254* | 46.85 | 55.58 | 30 | 31 | 1028 | 30 |
| ODIs | 311 | 300 | 14,819 | 183 | 58.34 | 93.89 | 54 | 77 | 1379 | 173 |
| T20Is | 118 | 112 | 3,963 | 94* | 48.33 | 135.95 | 0 | 37 | 348 | 115 |
| All internationals | 552 | 622 | 28,012 | 254* | 52.56 | 79.34 | 84 | 145 | 2755 | 318 |
| IPL | 282 | 275 | 9,336 | 113* | 40.42 | 134.80 | 9 | 68 | 845 | 317 |
Virat Kohli Centuries List
This list has every century with a full scorecard in our record: 54 of 55 in ODIs; 0 of 1 in T20Is.
| # | Score | Balls | 4s | 6s | Format | Against | Venue | Date |
|---|---|---|---|---|---|---|---|---|
| 1 | 107 | 114 | 11 | 1 | ODIs | Sri Lanka | Eden Gardens, Kolkata | 24 Dec 2009 |
| 2 | 102* | 95 | 11 | 0 | ODIs | Bangladesh | Shere Bangla National Stadium, Mirpur | 11 Jan 2010 |
| 3 | 118 | 121 | 11 | 1 | ODIs | Australia | ACA-VDCA Cricket Stadium, Visakhapatnam | 20 Oct 2010 |
| 4 | 105 | 104 | 10 | 0 | ODIs | New Zealand | Nehru Stadium, Guwahati | 28 Nov 2010 |
| 5 | 100* | 83 | 8 | 2 | ODIs | Bangladesh | Shere Bangla National Stadium, Mirpur | 19 Feb 2011 |
| 6 | 107 | 93 | 9 | 1 | ODIs | England | Sophia Gardens, Cardiff | 16 Sep 2011 |
| 7 | 112* | 98 | 16 | 0 | ODIs | England | Arun Jaitley Stadium, Delhi | 17 Oct 2011 |
| 8 | 117 | 123 | 14 | 0 | ODIs | West Indies | ACA-VDCA Cricket Stadium, Visakhapatnam | 2 Dec 2011 |
| 9 | 116 | 213 | 11 | 1 | Tests | Australia | Adelaide Oval, Adelaide | 24 Jan 2012 |
| 10 | 133* | 86 | 16 | 2 | ODIs | Sri Lanka | Bellerive Oval, Hobart | 28 Feb 2012 |
| 11 | 108 | 120 | 7 | 0 | ODIs | Sri Lanka | Shere Bangla National Stadium, Mirpur | 13 Mar 2012 |
| 12 | 183 | 148 | 22 | 2 | ODIs | Pakistan | Shere Bangla National Stadium, Mirpur | 18 Mar 2012 |
| 13 | 106 | 113 | 9 | 0 | ODIs | Sri Lanka | Mahinda Rajapaksa International Stadium, Hambantota | 21 Jul 2012 |
| 14 | 128* | 119 | 12 | 2 | ODIs | Sri Lanka | R Premadasa Stadium, Colombo | 31 Jul 2012 |
| 15 | 103 | 193 | 14 | 1 | Tests | New Zealand | M Chinnaswamy Stadium, Bengaluru | 31 Aug 2012 |
| 16 | 103 | 295 | 11 | 0 | Tests | England | Vidarbha Cricket Association Stadium, Nagpur | 13 Dec 2012 |
| 17 | 107 | 206 | 15 | 1 | Tests | Australia | MA Chidambaram Stadium, Chennai | 22 Feb 2013 |
| 18 | 102 | 83 | 13 | 2 | ODIs | West Indies | Queen’s Park Oval, Port of Spain | 5 Jul 2013 |
| 19 | 115 | 108 | 13 | 1 | ODIs | Zimbabwe | Harare Sports Club, Harare | 24 Jul 2013 |
| 20 | 100* | 52 | 8 | 7 | ODIs | Australia | Sawai Mansingh Stadium, Jaipur | 16 Oct 2013 |
| 21 | 115* | 66 | 18 | 1 | ODIs | Australia | Vidarbha Cricket Association Stadium, Nagpur | 30 Oct 2013 |
| 22 | 119 | 181 | 18 | 0 | Tests | South Africa | The Wanderers Stadium, Johannesburg | 18 Dec 2013 |
| 23 | 123 | 111 | 11 | 2 | ODIs | New Zealand | McLean Park, Napier | 19 Jan 2014 |
| 24 | 105* | 135 | 15 | 1 | Tests | New Zealand | Basin Reserve, Wellington | 14 Feb 2014 |
| 25 | 136 | 122 | 16 | 2 | ODIs | Bangladesh | Khan Shaheb Osman Ali Stadium, Fatullah | 26 Feb 2014 |
| 26 | 127 | 114 | 13 | 3 | ODIs | West Indies | HPCA Stadium, Dharamsala | 17 Oct 2014 |
| 27 | 139* | 126 | 12 | 3 | ODIs | Sri Lanka | JSCA International Stadium Complex, Ranchi | 16 Nov 2014 |
| 28 | 115 | 184 | 12 | 0 | Tests | Australia | Adelaide Oval, Adelaide | 9 Dec 2014 |
| 29 | 141 | 175 | 16 | 1 | Tests | Australia | Adelaide Oval, Adelaide | 9 Dec 2014 |
| 30 | 169 | 272 | 18 | 0 | Tests | Australia | Melbourne Cricket Ground, Melbourne | 26 Dec 2014 |
| 31 | 147 | 230 | 20 | 0 | Tests | Australia | Sydney Cricket Ground, Sydney | 6 Jan 2015 |
| 32 | 107 | 126 | 8 | 0 | ODIs | Pakistan | Adelaide Oval, Adelaide | 15 Feb 2015 |
| 33 | 103 | 191 | 11 | 0 | Tests | Sri Lanka | Galle International Stadium, Galle | 12 Aug 2015 |
| 34 | 138 | 140 | 6 | 5 | ODIs | South Africa | MA Chidambaram Stadium, Chennai | 22 Oct 2015 |
| 35 | 117 | 117 | 7 | 2 | ODIs | Australia | Melbourne Cricket Ground, Melbourne | 17 Jan 2016 |
| 36 | 106 | 92 | 11 | 1 | ODIs | Australia | Manuka Oval, Canberra | 20 Jan 2016 |
| 37 | 100* | 63 | 11 | 1 | IPL | Gujarat Lions | Rajkot | 24 Apr 2016 |
| 38 | 108* | 58 | 8 | 7 | IPL | Rising Pune Supergiant | Bangalore | 7 May 2016 |
| 39 | 109 | 55 | 6 | 8 | IPL | Gujarat Lions | Bangalore | 14 May 2016 |
| 40 | 113 | 50 | 12 | 8 | IPL | Punjab Kings | Bangalore | 18 May 2016 |
| 41 | 200 | 283 | 24 | 0 | Tests | West Indies | Sir Vivian Richards Stadium, North Sound | 21 Jul 2016 |
| 42 | 211 | 366 | 20 | 0 | Tests | New Zealand | Holkar Cricket Stadium, Indore | 8 Oct 2016 |
| 43 | 154* | 134 | 16 | 1 | ODIs | New Zealand | Punjab Cricket Association IS Bindra Stadium, Mohali | 23 Oct 2016 |
| 44 | 167 | 267 | 18 | 0 | Tests | England | ACA-VDCA Cricket Stadium, Visakhapatnam | 17 Nov 2016 |
| 45 | 235 | 340 | 25 | 1 | Tests | England | Wankhede Stadium, Mumbai | 8 Dec 2016 |
| 46 | 122 | 105 | 8 | 5 | ODIs | England | MCA Stadium, Pune | 15 Jan 2017 |
| 47 | 204 | 246 | 24 | 0 | Tests | Bangladesh | Rajiv Gandhi International Stadium, Hyderabad | 9 Feb 2017 |
| 48 | 111* | 115 | 12 | 2 | ODIs | West Indies | Sabina Park, Kingston | 6 Jul 2017 |
| 49 | 103* | 136 | 5 | 1 | Tests | Sri Lanka | Galle International Stadium, Galle | 26 Jul 2017 |
| 50 | 131 | 96 | 17 | 2 | ODIs | Sri Lanka | R Premadasa Stadium, Colombo | 31 Aug 2017 |
| 51 | 110* | 116 | 9 | 0 | ODIs | Sri Lanka | R Premadasa Stadium, Colombo | 3 Sep 2017 |
| 52 | 121 | 125 | 9 | 2 | ODIs | New Zealand | Wankhede Stadium, Mumbai | 22 Oct 2017 |
| 53 | 113 | 106 | 9 | 1 | ODIs | New Zealand | Green Park, Kanpur | 29 Oct 2017 |
| 54 | 104* | 119 | 12 | 2 | Tests | Sri Lanka | Eden Gardens, Kolkata | 16 Nov 2017 |
| 55 | 213 | 267 | 18 | 2 | Tests | Sri Lanka | Vidarbha Cricket Association Stadium, Nagpur | 24 Nov 2017 |
| 56 | 243 | 287 | 25 | 0 | Tests | Sri Lanka | Arun Jaitley Stadium, Delhi | 2 Dec 2017 |
| 57 | 153 | 217 | 15 | 0 | Tests | South Africa | SuperSport Park, Centurion | 13 Jan 2018 |
| 58 | 112 | 119 | 10 | 0 | ODIs | South Africa | Kingsmead, Durban | 1 Feb 2018 |
| 59 | 160* | 159 | 12 | 2 | ODIs | South Africa | Newlands, Cape Town | 7 Feb 2018 |
| 60 | 129* | 96 | 19 | 2 | ODIs | South Africa | SuperSport Park, Centurion | 16 Feb 2018 |
| 61 | 149 | 225 | 22 | 1 | Tests | England | Edgbaston, Birmingham | 1 Aug 2018 |
| 62 | 103 | 197 | 10 | 0 | Tests | England | Trent Bridge, Nottingham | 18 Aug 2018 |
| 63 | 139 | 230 | 10 | 0 | Tests | West Indies | Saurashtra Cricket Association Stadium, Rajkot | 4 Oct 2018 |
| 64 | 140 | 107 | 21 | 2 | ODIs | West Indies | Barsapara Cricket Stadium, Guwahati | 21 Oct 2018 |
| 65 | 157* | 129 | 13 | 4 | ODIs | West Indies | ACA-VDCA Cricket Stadium, Visakhapatnam | 24 Oct 2018 |
| 66 | 107 | 119 | 10 | 1 | ODIs | West Indies | MCA Stadium, Pune | 27 Oct 2018 |
| 67 | 123 | 257 | 13 | 1 | Tests | Australia | Perth Stadium, Perth | 14 Dec 2018 |
| 68 | 104 | 112 | 5 | 2 | ODIs | Australia | Adelaide Oval, Adelaide | 15 Jan 2019 |
| 69 | 116 | 120 | 10 | 0 | ODIs | Australia | Vidarbha Cricket Association Stadium, Nagpur | 5 Mar 2019 |
| 70 | 123 | 95 | 16 | 1 | ODIs | Australia | JSCA International Stadium Complex, Ranchi | 8 Mar 2019 |
| 71 | 100 | 58 | 9 | 4 | IPL | Kolkata Knight Riders | Kolkata | 19 Apr 2019 |
| 72 | 120 | 125 | 14 | 1 | ODIs | West Indies | Queen’s Park Oval, Port of Spain | 11 Aug 2019 |
| 73 | 114* | 99 | 14 | 0 | ODIs | West Indies | Queen’s Park Oval, Port of Spain | 14 Aug 2019 |
| 74 | 254* | 336 | 33 | 2 | Tests | South Africa | MCA Stadium, Pune | 10 Oct 2019 |
| 75 | 136 | 194 | 18 | 0 | Tests | Bangladesh | Eden Gardens, Kolkata | 22 Nov 2019 |
| 76 | 113 | 91 | 11 | 2 | ODIs | Bangladesh | Zahur Ahmed Chowdhury Stadium, Chattogram | 10 Dec 2022 |
| 77 | 113 | 87 | 12 | 1 | ODIs | Sri Lanka | Barsapara Cricket Stadium, Guwahati | 10 Jan 2023 |
| 78 | 166* | 110 | 13 | 8 | ODIs | Sri Lanka | Greenfield International Stadium, Thiruvananthapuram | 15 Jan 2023 |
| 79 | 186 | 364 | 15 | 0 | Tests | Australia | Narendra Modi Stadium, Ahmedabad | 9 Mar 2023 |
| 80 | 100 | 63 | 12 | 4 | IPL | Sunrisers Hyderabad | Hyderabad | 18 May 2023 |
| 81 | 101* | 61 | 13 | 1 | IPL | Gujarat Titans | Bengaluru | 21 May 2023 |
| 82 | 121 | 206 | 11 | 0 | Tests | West Indies | Queen’s Park Oval, Port of Spain | 20 Jul 2023 |
| 83 | 122* | 94 | 9 | 3 | ODIs | Pakistan | R Premadasa Stadium, Colombo | 10 Sep 2023 |
| 84 | 103* | 97 | 6 | 4 | ODIs | Bangladesh | MCA Stadium, Pune | 19 Oct 2023 |
| 85 | 101* | 121 | 10 | 0 | ODIs | South Africa | Eden Gardens, Kolkata | 5 Nov 2023 |
| 86 | 117 | 113 | 9 | 2 | ODIs | New Zealand | Wankhede Stadium, Mumbai | 15 Nov 2023 |
| 87 | 113* | 72 | 12 | 4 | IPL | Rajasthan Royals | Jaipur | 6 Apr 2024 |
| 88 | 100* | 143 | 8 | 2 | Tests | Australia | Perth Stadium, Perth | 22 Nov 2024 |
| 89 | 100* | 111 | 7 | 0 | ODIs | Pakistan | Dubai International Cricket Stadium, Dubai | 23 Feb 2025 |
| 90 | 135 | 120 | 11 | 7 | ODIs | South Africa | JSCA International Stadium Complex, Ranchi | 30 Nov 2025 |
| 91 | 102 | 93 | 7 | 2 | ODIs | South Africa | Shaheed Veer Narayan Singh International Stadium, Raipur | 3 Dec 2025 |
| 92 | 124 | 108 | 10 | 3 | ODIs | New Zealand | Holkar Cricket Stadium, Indore | 18 Jan 2026 |
| 93 | 105* | 60 | 11 | 3 | IPL | Kolkata Knight Riders | Raipur | 13 May 2026 |
Virat Kohli Highest Score in Tests and ODIs
| Score | Balls | 6s | Format | Against | Date |
|---|---|---|---|---|---|
| 254* | 336 | 2 | Tests | South Africa | 10 Oct 2019 |
| 243 | 287 | 0 | Tests | Sri Lanka | 2 Dec 2017 |
| 235 | 340 | 1 | Tests | England | 8 Dec 2016 |
| 213 | 267 | 2 | Tests | Sri Lanka | 24 Nov 2017 |
| 211 | 366 | 0 | Tests | New Zealand | 8 Oct 2016 |
| 204 | 246 | 0 | Tests | Bangladesh | 9 Feb 2017 |
| 200 | 283 | 0 | Tests | West Indies | 21 Jul 2016 |
| 186 | 364 | 0 | Tests | Australia | 9 Mar 2023 |
| 183 | 148 | 2 | ODIs | Pakistan | 18 Mar 2012 |
| 169 | 272 | 0 | Tests | Australia | 26 Dec 2014 |
Virat Kohli IPL Runs by Season
| Season | Team | M | Runs | HS | Avg | SR | 100s | 50s | 6s |
|---|---|---|---|---|---|---|---|---|---|
| 2008 | Royal Challengers Bengaluru | 13 | 165 | 38 | 15.00 | 105.10 | 0 | 0 | 4 |
| 2009 | Royal Challengers Bengaluru | 16 | 246 | 50 | 22.36 | 112.33 | 0 | 1 | 8 |
| 2010 | Royal Challengers Bengaluru | 16 | 307 | 58 | 27.91 | 144.81 | 0 | 1 | 12 |
| 2011 | Royal Challengers Bengaluru | 16 | 557 | 71 | 46.42 | 121.09 | 0 | 4 | 16 |
| 2012 | Royal Challengers Bengaluru | 15 | 364 | 73* | 28.00 | 111.66 | 0 | 2 | 10 |
| 2013 | Royal Challengers Bengaluru | 16 | 634 | 99 | 45.29 | 138.73 | 0 | 6 | 22 |
| 2014 | Royal Challengers Bengaluru | 14 | 359 | 73 | 27.62 | 122.11 | 0 | 2 | 16 |
| 2015 | Royal Challengers Bengaluru | 16 | 505 | 82* | 45.91 | 130.83 | 0 | 3 | 23 |
| 2016 | Royal Challengers Bengaluru | 16 | 973 | 113 | 81.08 | 152.03 | 4 | 7 | 38 |
| 2017 | Royal Challengers Bengaluru | 10 | 308 | 64 | 30.80 | 122.22 | 0 | 4 | 11 |
| 2018 | Royal Challengers Bengaluru | 14 | 530 | 92* | 48.18 | 139.11 | 0 | 4 | 18 |
| 2019 | Royal Challengers Bengaluru | 14 | 464 | 100 | 33.14 | 141.46 | 1 | 2 | 13 |
| 2020 | Royal Challengers Bengaluru | 15 | 466 | 90* | 42.36 | 121.35 | 0 | 3 | 11 |
| 2021 | Royal Challengers Bengaluru | 15 | 405 | 72* | 28.93 | 119.47 | 0 | 3 | 9 |
| 2022 | Royal Challengers Bengaluru | 16 | 341 | 73 | 22.73 | 115.99 | 0 | 2 | 8 |
| 2023 | Royal Challengers Bengaluru | 14 | 639 | 101* | 53.25 | 139.82 | 2 | 6 | 16 |
| 2024 | Royal Challengers Bengaluru | 15 | 741 | 113* | 61.75 | 154.70 | 1 | 5 | 38 |
| 2025 | Royal Challengers Bengaluru | 15 | 657 | 73* | 54.75 | 144.71 | 0 | 8 | 19 |
| 2026 | Royal Challengers Bengaluru | 16 | 675 | 105* | 56.25 | 165.85 | 1 | 5 | 25 |
| All seasons | 282 | 9,336 | 113* | 40.42 | 134.80 | 9 | 68 | 317 |
Virat Kohli International Runs by Year
| Year | M | Runs | HS | Avg | 100s | 50s |
|---|---|---|---|---|---|---|
| 2008 | 5 | 159 | 54 | 31.80 | 0 | 1 |
| 2009 | 10 | 325 | 107 | 54.17 | 1 | 2 |
| 2010 | 27 | 1,021 | 118 | 48.62 | 3 | 7 |
| 2011 | 43 | 1,644 | 117 | 39.14 | 4 | 10 |
| 2012 | 39 | 2,136 | 183 | 53.40 | 8 | 9 |
| 2013 | 43 | 1,913 | 119 | 53.14 | 6 | 10 |
| 2014 | 37 | 2,286 | 169 | 55.76 | 8 | 12 |
| 2015 | 31 | 1,307 | 147 | 38.44 | 4 | 3 |
| 2016 | 37 | 2,595 | 235 | 86.50 | 7 | 13 |
| 2017 | 46 | 2,818 | 243 | 68.73 | 11 | 10 |
| 2018 | 37 | 2,735 | 160* | 68.38 | 11 | 9 |
| 2019 | 43 | 2,388 | 254* | 64.54 | 7 | 13 |
| 2020 | 21 | 842 | 89 | 36.61 | 0 | 7 |
| 2021 | 23 | 964 | 80* | 37.08 | 0 | 10 |
| 2022 | 36 | 1,226 | 113 | 35.03 | 1 | 11 |
| 2023 | 34 | 1,993 | 186 | 64.29 | 8 | 9 |
| 2024 | 20 | 602 | 100* | 22.30 | 1 | 2 |
| 2025 | 14 | 674 | 135 | 56.17 | 3 | 4 |
| 2026 | 6 | 384 | 124 | 64.00 | 1 | 3 |
Virat Kohli Record Against Each Team
| Against | M | Runs | HS | Avg | 100s |
|---|---|---|---|---|---|
| Australia | 106 | 5,551 | 186 | 48.69 | 17 |
| England | 90 | 4,180 | 235 | 41.39 | 8 |
| Sri Lanka | 74 | 4,076 | 243 | 62.71 | 15 |
| West Indies | 73 | 3,850 | 200 | 59.23 | 12 |
| South Africa | 64 | 3,608 | 254* | 59.15 | 10 |
| New Zealand | 60 | 3,167 | 211 | 47.27 | 10 |
| Bangladesh | 31 | 1,698 | 204 | 62.89 | 7 |
| Pakistan | 28 | 1,270 | 183 | 63.50 | 4 |
| Zimbabwe | 11 | 305 | 115 | 50.83 | 1 |
| Netherlands | 3 | 125 | 62* | 62.50 | 0 |
| Ireland | 5 | 88 | 44* | 22.00 | 0 |
| Hong Kong | 1 | 59 | 59* | – | 0 |
| UAE | 2 | 33 | 33* | – | 0 |
| Scotland | 1 | 2 | 2* | – | 0 |
Virat Kohli debut: first match in each format
First match with a full scorecard in our record for each format.
| Format | First match | Against | Venue |
|---|---|---|---|
| Tests | 20 Jun 2011 | West Indies | Sabina Park, Kingston |
| ODIs | 18 Aug 2008 | Sri Lanka | Rangiri Dambulla International Stadium, Dambulla |
| T20Is | 12 Jun 2010 | Zimbabwe | Harare Sports Club, Harare |
| IPL | 18 Apr 2008 | Kolkata Knight Riders | Bangalore |
Virat Kohli Last 10 Matches
| Date | Format | Against | Batting |
|---|---|---|---|
| 19 Jul 2026 | ODIs | England | 74 (60) |
| 16 Jul 2026 | ODIs | England | 65 (66) |
| 14 Jul 2026 | ODIs | England | 5 (6) |
| 31 May 2026 | IPL | Gujarat Titans | 75* (42) |
| 26 May 2026 | IPL | Gujarat Titans | 43 (25) |
| 22 May 2026 | IPL | Sunrisers Hyderabad | 15 (11) |
| 17 May 2026 | IPL | Punjab Kings | 58 (37) |
| 13 May 2026 | IPL | Kolkata Knight Riders | 105* (60) |
| 10 May 2026 | IPL | Mumbai Indians | 0 (1) |
| 7 May 2026 | IPL | Lucknow Super Giants | 0 (2) |
Centuries, big scores and the best years
The official century count splits as 30 Test, 55 ODI and 1 T20I, plus 9 in the IPL. The list below holds 54 of the ODI tons and every Test one that has a full scorecard.
His biggest innings are all Tests. Seven double hundreds lead the highest-scores table, starting with 254* against South Africa (10 Oct 2019), then 243 and 213 against Sri Lanka in 2017 and 235 against England in Dec 2016. The ODI best of 183 is the only one-day knock in that top ten.
The runs-by-year table shows a peak from 2016 to 2019. He made 2,595 international runs at 86.50 in 2016, then 2,818 in 2017 and 2,735 in 2018, with 11 hundreds in each of those last two years. By contrast, 2020 and 2021 brought no hundreds at all, before 2023 lifted him back to 1,993 runs and 8 hundreds.
IPL seasons, opponents and recent form
Every IPL run has come for Royal Challengers Bengaluru. The standout is 2016: 973 runs at 81.08 with 4 hundreds and 38 sixes, the best season in the table below and a large part of the IPL 2016 records. The later years hold up well: 741 runs in 2024, 657 a year later and 675 in 2026, that last haul coming at a strike rate of 165.85.
No team has leaked more to him than Australia: 5,551 runs and 17 centuries across 106 meetings. Among the major sides, Pakistan bring out his best average (63.50) and England his lowest (41.39).
In his last 10 matches on record, the high point is an unbeaten 105 from 60 balls for RCB versus Kolkata Knight Riders (13 May 2026), which followed two ducks in the days before. The three ODIs against England in Jul 2026 returned 5, then 65, then 74. See how he ranks in most runs in ODI cricket and most international centuries.
Questions about Virat Kohli
How many centuries has Virat Kohli scored?
Fifty-five in ODIs, thirty in Tests and one in T20Is by the official count, with 9 more in the IPL. The fully scored internationals here hold 84 of those international tons, one ODI and one T20I short.
What are Virat Kohli's total runs in all formats?
Officially 15,109 (ODIs), 9,230 (Tests), 4,188 (T20Is) and 9,336 (IPL). The 552 internationals with full scorecards add up to 28,012, a little under the official sum.
What is Virat Kohli's highest score in an ODI?
183, made from 148 deliveries versus Pakistan at the Shere Bangla National Stadium, Mirpur, on 18 Mar 2012. The innings held 22 fours and 2 sixes.
How many runs did Virat Kohli score in IPL 2026?
675 in 16 games for Royal Challengers Bengaluru, averaging 56.25 with a strike rate of 165.85. His top innings that year was the 105* versus Kolkata Knight Riders.
Is Virat Kohli retired from ODI cricket?
No. The checked status shows him still playing ODIs and the IPL, after leaving T20Is (Jun 2024) and Tests (May 2025). His latest ODI on record is 19 Jul 2026 versus England, when he made 74.
When was Virat Kohli's first match?
The earliest ODI in our scorecards is 18 Aug 2008 versus Sri Lanka at Dambulla. His first IPL game came earlier, 18 Apr 2008 versus Kolkata Knight Riders, and Test cricket followed on 20 Jun 2011 against West Indies at Sabina Park.
Source: ball-by-ball match data from Cricsheet.org (ODC-BY). See how we compile these records.