Most Centuries in ODI

In this article, we will look towards the cricket players who have scored the most odi centuries. This page is topped by Sachin Tendulkar from Indian Cricket team. Sachin has played 463 matches. He has made 49 centuries from these matches and scored a total of 18426 runs. He achieved this score in 452 innings. The highest score by Sachin Tendulkar has been 200 runs remaining not out.

Most Centuries in ODI

Player Match Innings Total Run High Score 100 50
Sachin Tendulkar (INDIA) 463 452 18426 200* 49 96
Virat Kohli (INDIA)* 262 253 12344 183 43 64
Ricky Ponting (Australia) 375 365 13704 164 30 82
Rohit Sharma (INDIA)* 233 226 9376 264 29 45
Sanath Jayasuriya (Sri Lanka) 445 433 13430 189 28 68
Hashim Amla (South Africa) 181 178 8113 159 27 39
AB de Villiers (South Africa) 228 218 9577 176 25 53
Chris Gayle (West Indies) 301 294 10480 215 25 54
Kumar Sangakkara (Sri Lanka) 404 380 14234 169 25 93
Saurav Ganguly (INDIA) 311 300 11363 183 22 72
Tillakratne Dilshan (Sri Lanka) 330 303 10290 161* 22 47
Ross Taylor (New Zealand) 236 220 8607 181* 22 51
Herschelle Gibbs (South Africa) 248 240 8094 175 21 37
Saeed Anwar (Pakistan) 247 244 8824 194 20 43
Brian Lara (West Indies) 299 289 10405 169 19 63
Mahela Jayawardene (Sri Lanka) 448 418 12650 144 19 77
* - Currently Playing ODI
 
Virat Kohli, again from Indian team is near to the top record with 43 centuries. He has played 248+ matches in the One Day International format and has contributed 12000+ runs. His highest score is 183 and has scored these runs from 233 innings.
 
Ricky Ponting from Australia played 375 matches and bagged 30 centuries from them. His highest score was 164 and he scored 13704 runs in total.
 
Rohit Sharma from India has played 224+ matches and bagged 29 centuries. He has scored 9300+ runs from 217 innings. His highest score is 264. With these number of centuries, Rohit has crossed Sanath Jayasuriya’s record of 28 centuries which he gained in 445 matches and 433 innings. Sanath still has a good record of 13430 runs scored with a high score of 189.
 
Hashim Amla from South Africa is a great player as well. With 181 ODI matches and 178 innings, he has bagged 27 centuries with a high score of 159.
 
Abraham Benjamin de Villiers, better known as AB from South Africa brings in 25 centuries from 228 matches and 9577 runs with a high score of 176. He shares the record of 25 centuries with Chris Gayle and Kumar Sangakkara. Chris Gayle has played 301 matches while Kumar has played 404.
 
Sourav Ganguly took retirement in 2007. During his career, he played 311 ODI matches and made 22 centuries. His highest score was 183 runs from 300 innings. He contributed a total of 11363 runs.
 
Tillakaratne Dilshan has played 330 matches with 303 innings. With a high score of 161, while staying not out, Dilshan has made 22 centuries.
 
Luteru Ross Taylor brings in 21 centuries from 232 matches and 216 innings. He has scored 8574 runs with 181 runs as the highest score staying not out.
 
Herschelle Gibbs played ODI till 2010. He played 248 matches and 240 innings. His highest score is 175 and a total of 8094 runs. He made a total of 21 centuries through his career span.
 
Saeed Anwar from Pakistan team has bagged 20 centuries with a high score of 194 runs. He has scored a total of 8824 runs from 247 matches and 244 innings.
 
Lastly, we have Sri Lankan player Mahela Jayawardene. Through his career till 2015, he made 19 centuries from 448 matches and 418 innings. He scored a massive 12650 runs with his highest score of 144 runs.
 
From all of these players, as of January 2020, we have Virat Kohli, Rohit Sharma, Hashim Amla, Chris Gayle and Luteru Ross Taylor still playing. So, keep a watch further to know if they can create new records.
 
Luteru Ross Taylor brings in 20 centuries from 228 matches and 212 innings. He has scored 8376 runs with 181 runs as the highest score staying not out.
   Fastest 50 in IPL The Hundred 2023 Venue