In modern cricket, a One Day International century from Virat Kohli has transcended from a milestone into a magnificent routine. His relentless pursuit of excellence has solidified his place as the undisputed king of the 50-over format.
The staggering nature of his achievement is best seen in comparison: Kohli’s century count in ODIs is not just high; it’s more than the combined ODI tons of fellow Indian legends Rohit Sharma and Shikhar Dhawan.
Furthermore, within the heralded ‘Fab 4’, Kohli’s individual ODI centuries surpass the total aggregate amassed by Kane Williamson, Joe Root, and Steve Smith combined.
His centuries’ aggregate has, of course, gone past the master batsman, Sachin Tendulkar‘s once seemingly unreachable record of 49. Virat Kohli is now the first men’s cricketer in history to cross the incredible 50 ODI centuries mark.
Such prolific scoring has led to a scarcely believable metric: the former Indian captain boasts an average of over three ODI hundreds per year, a rate virtually unmatched in the history of the game. His personal best year saw him register six ODI centuries, a feat he achieved back-to-back in 2017 and 2018.
A man who has made the incredible commonplace, Virat also holds the distinction of being the first Indian batsman to score three consecutive 100+ knocks in ODIs. And he holds 11 separate streaks of scoring hundreds in two or more consecutive ODI innings—a record unmatched in the format. The next best is AB de Villiers who have done it 6 times in ODIs.
Yes, the figures speak for themselves, but the story is in the details. Let us now look into the complete and authoritative list of every ODI century by the ‘Chase Master’, Virat Kohli.
| No. | Score | Against | Batting | Venue | Year | Result |
|---|---|---|---|---|---|---|
| 1 | 107 | Sri Lanka | 2 | Kolkata | 2009 | Won |
| 2 | 102* | Bangladesh | 2 | Dhaka | 2010 | Won |
| 3 | 118* | Australia | 2 | Visakhapatnam | 2010 | Won |
| 4 | 105 | New Zealand | 1 | Guwahati | 2010 | Won |
| 5 | 100* | Bangladesh | 1 | Dhaka | 2011 | Won |
| 6 | 107 | England | 1 | Cardiff | 2011 | Lost |
| 7 | 112* | England | 2 | Delhi | 2011 | Won |
| 8 | 117 | West Indies | 2 | Visakhapatnam | 2011 | Won |
| 9 | 133* | Sri Lanka | 2 | Hobart | 2012 | Won |
| 10 | 108 | Sri Lanka | 1 | Dhaka | 2012 | Won |
| 11 | 183 | Pakistan | 2 | Dhaka | 2012 | Won |
| 12 | 106 | Sri Lanka | 1 | Hambantota | 2012 | Won |
| 13 | 128* | Sri Lanka | 2 | Colombo | 2012 | Won |
| 14 | 102 | West Indies | 1 | Port of Spain | 2013 | Won |
| 15 | 115 | Zimbabwe | 2 | Harare | 2013 | Won |
| 16 | 100* | Australia | 2 | Jaipur | 2013 | Won |
| 17 | 115* | Australia | 2 | Nagpur | 2013 | Won |
| 18 | 123 | New Zealand | 2 | Napier | 2014 | Lost |
| 19 | 136 | Bangladesh | 2 | Fatullah | 2014 | Won |
| 20 | 127 | West Indies | 1 | Dharamshala | 2014 | Won |
| 21 | 139* | Sri Lanka | 2 | Ranchi | 2014 | Won |
| 22 | 107 | Pakistan | 1 | Adelaide | 2015 | Won |
| 23 | 138 | South Africa | 1 | Chennai | 2015 | Won |
| 24 | 117 | Australia | 1 | Melbourne | 2016 | Lost |
| 25 | 106 | Australia | 2 | Canberra | 2016 | Lost |
| 26 | 154* | New Zealand | 2 | Mohali | 2016 | Won |
| 27 | 122 | England | 2 | Pune | 2017 | Won |
| 28 | 111* | West Indies | 2 | Kingston | 2017 | Won |
| 29 | 131 | Sri Lanka | 1 | Colombo | 2017 | Won |
| 30 | 110* | Sri Lanka | 2 | Colombo | 2017 | Won |
| 31 | 121 | New Zealand | 1 | Mumbai | 2017 | Lost |
| 32 | 113 | New Zealand | 1 | Kanpur | 2017 | Won |
| 33 | 112 | South Africa | 2 | Durban | 2018 | Won |
| 34 | 160* | South Africa | 1 | Cape Town | 2018 | Won |
| 35 | 129* | South Africa | 2 | Centurion | 2018 | Won |
| 36 | 140 | West Indies | 2 | Guwahati | 2018 | Won |
| 37 | 157* | West Indies | 1 | Visakhapatnam | 2018 | Tied |
| 38 | 107 | West Indies | 2 | Pune | 2018 | Lost |
| 39 | 104 | Australia | 2 | Adelaide | 2019 | Won |
| 40 | 116 | Australia | 1 | Nagpur | 2019 | Won |
| 41 | 123 | Australia | 2 | Ranchi | 2019 | Lost |
| 42 | 120 | West Indies | 1 | Port of Spain | 2019 | Won |
| 43 | 114* | West Indies | 2 | Port of Spain | 2019 | Won |
| 44 | 113 | Bangladesh | 1 | Chattogram | 2022 | Won |
| 45 | 113 | Sri Lanka | 1 | Guwahati | 2023 | Won |
| 46 | 166* | Sri Lanka | 1 | Thiruvananthapuram | 2023 | Won |
| 47 | 122* | Pakistan | 1 | Colombo | 2023 | Won |
| 48 | 103* | Bangladesh | 2 | Pune | 2023 | Won |
| 49 | 101* | South Africa | 1 | Kolkata | 2023 | Won |
| 50 | 117 | New Zealand | 1 | Mumbai | 2023 | Won |
| 51 | 100* | Pakistan | 2 | Dubai | 2025 | Won |
| 52 | 135 | South Africa | 1 | Ranchi | 2025 | Won |
| 53 | 102 | South Africa | 1 | Raipur | 2025 | Lost |
More “Virat Kohli Stats”
Virat Kohli Player Profile: Batting and Bowling Stats
Virat Kohli – ODI Runs by Batting Position
Virat Kohli – ODI World Cup Runs and Centuries- Every Edition
List of Virat Kohli ODI Centuries
Virat Kohli – ODI Runs against Each Team
Virat Kohli – ODI Runs in Each Country
Virat Kohli – Highest ODI Scores
Virat Kohli – ODI Captaincy Record
Virat Kohli – Year-Wise ODI & Test Runs
Virat Kohli – Test Runs by Batting Position
Virat Kohli – Test Runs against Each Team
Virat Kohli – Test Runs in Each Country
Virat Kohli – Highest Test Scores
The Ten Best Virat Kohli Innings in Test Cricket
List of Virat Kohli Test Centuries
List of Virat Kohli 200s in Tests
Virat Kohli – Test Captaincy Record
Virat Kohli – T20I Runs by Batting Position
Virat Kohli – T20I Runs vs Each Country
Virat Kohli – T20 World Cup Record – Edition by Edition
When Virat Kohli ruled the T20 Cricket in 2016!
Virat Kohli – T20I Captaincy Record
List: Virat Kohli’s 90 to 99 Scores (All Formats)
Virat Kohli – Complete T20 Stats
Virat Kohli Record List in All Formats
Stats: Virat Kohli vs Leg Spinners in International Cricket
Virat Kohli IPL Centuries List
Virat Kohli IPL Runs – Year by Year
Virat Kohli IPL Runs vs Each Team
Key Insights on Virat Kohli’s Century Records in One Day Internationals
Batting Position and Captaincy Century Metrics
Virat Kohli has scored a total of 53 ODI centuries, making him the all-time leading centurion in the format.
Virat Kohli has been batting regularly at No. 3 for India in ODIs since 2012 and the majority of his century innings have come at that position.
- ODI centuries by Virat Kohli batting at No. 3: 46
- ODI centuries by Virat Kohli batting at No. 4: 7
His count of 46 centuries at No. 3 is the record for the most ODI centuries by a batsman at No. 3, ahead of Ricky Ponting who has 29 centuries.
In total, playing as captain, Virat Kohli scored 21 ODI centuries, and 32 as non-captain.
He is only next to Ricky Ponting, who has 22 centuries as captain in ODI. See the top ten captains here with the most ODI tons.
Geographic Distribution of Virat’s ODI Hundreds
- Virat Kohli ODI Centuries in Home: 26
- Virat Kohli ODI Centuries in Away: 21
- Virat Kohli ODI Centuries in Neutral: 6
Virat Kohli stands only behind Sachin in the record for scoring the most numbers of ODI centuries playing away from home.
Out of the 27 centuries that are scored away or in neutral venues, 15 came outside Asia.
He has scored at least one century in each country he played cricket in, having never played an ODI in Ireland, Afghanistan, and Pakistan.
The Shere Bangla National Stadium in Dhaka and R Premadasa Stadium in Colombo have been the favourite venues for Virat Kohli as he has scored 4 ODI centuries in these venues.
Next comes, Guwahati and Visakhapatnam, where he has 3 centuries each.
Most Centuries Against Specific Opposition Teams
Virat Kohli has so far scored at least one ODI century against 9 out of 13 teams he played ODIs against.
He is the first batter in the history of ODI to score 10 centuries against one team.
The 4 teams he has no centuries against are Ireland, Netherlands & UAE (he played just 1 match each against them) and Afghanistan (against whom he has played just 2 matches).
Virat Kohli centuries against each team:
- vs Sri Lanka – 10 (Most 100s vs Sri Lanka by any player).
- vs West Indies – 9 (Most 100s vs West Indies by any player).
- vs Australia – 8 (3rd Most)
- vs South Africa – 7 (Most 100s vs South Africa by any player)).
- vs New Zealand – 6 (Joint best along with Ricky Ponting and Virender Sehwag)
- vs Bangladesh – 5
- vs England – 3
- vs Pakistan – 4
- vs Zimbabwe – 1
He also has an average of 50+ in ODIs against 8 out of 13 teams he played against.
High Winning Percentage with Century Scores
Virat Kohli has more than 80% of his ODI centuries coming in the winning cause for Team India.
- Matches won by India, after Virat Kohli Century: 44
- Matches lost by India, after Virat Kohli Century: 8
- Tied Matches, after Virat Kohli Century: 1
Virat Kohli currently holds the record for the most ODI centuries in winning ODIs.
The Dominance of the Chase Master Records
Virat Kohli already holds the record for the most hundreds while chasing in ODI.
Virat Kohli is the only player, among the players who have 10+ ODI centuries, to have more tons while chasing than when batting first.
He also rules the chart of batters scoring most centuries in successful ODI run-chases.
Virat Kohli ODI centuries,
- While batting first: 25
- While batting second: 28
Virat Kohli ODI centuries in winning-cause,
- While batting first: 20
- While batting second: 24