Skip to content
Cricket Record Book

Most Centuries in ODI Cricket: Top Century Makers

Covers 2,576 men's ODIs and 611 women's ODIs from Jun 2002 to Sep 2026 with ball-by-ball records. Afghanistan matches are not in the open data set.

Fifty-four: that is the most centuries in ODI cricket in this record book, and they all belong to Virat Kohli (India). They came across 300 innings, and his top score among them is 183.

Our count draws on 2,576 men’s and 611 women’s one-day internationals dated Jun 2002 to Sep 2026, so hundreds from earlier careers are not counted. No Afghanistan ODI is counted, as the open data holds none. Scroll on for the overall list, the Test-nation leaders, India’s top ten, a team-by-team leader table and the women’s rankings.

Kohli's Lead in the ODI Hundreds List

The gap at the top is the story. Kohli’s 54 hundreds are more than one and a half times the 33 of Rohit Sharma (India), who is second. After those two the counts drop away: Hashim Amla (South Africa) has 26, AB de Villiers (South Africa) 25 and Kumar Sangakkara (Sri Lanka) 24.

Kohli also leads on runs, with 14,819 in the matches covered. His best is 183, which is lower than several others in the table. Rohit’s 264 and Martin Guptill’s 237* (New Zealand) are the two biggest scores among the top 25, so the hundreds list rewards how often a batter converts, not how big he goes.

The list counts every century, from 100 upwards. A hundred is made in one innings, so a single knock never counts twice. For the run leaders behind these names, open the most ODI runs page.

Most Centuries in ODI Cricket (Men)

BatterMInns100sRunsHS
V Kohli India3003005414,819183
RG Sharma India2732733311,532264
HM Amla South Africa174174267,834159
AB de Villiers South Africa209209259,324176
KC Sangakkara Sri Lanka2802802411,530169
Q de Kock South Africa159159237,014178
TM Dilshan Sri Lanka259259219,212161*
DA Warner Australia154154216,623179
LRPL Taylor New Zealand209209208,126181*
Babar Azam Pakistan134134206,328158
JE Root England177177197,578166*
SD Hope West Indies141141185,857170
MJ Guptill New Zealand191191177,124237*
S Dhawan India163163176,733143
RT Ponting Australia190190166,979164
SR Tendulkar India144144166,433200*
AJ Finch Australia139139165,188153*
KS Williamson New Zealand165165157,145148
WU Tharanga Sri Lanka205205146,472174*
ST Jayasuriya Sri Lanka130130144,376152
CH Gayle West Indies196196136,379215
Tamim Iqbal Bangladesh215215127,648158
Yuvraj Singh India207207126,840150
EJG Morgan England204204126,765124*
SPD Smith Australia151151125,668164

Most ODI Hundreds by Test-Playing Nations

The main list includes players from every team, including Associate nations. This list keeps only players from full ICC members.

BatterMInns100sRunsHS
V Kohli India3003005414,819183
RG Sharma India2732733311,532264
HM Amla South Africa174174267,834159
AB de Villiers South Africa209209259,324176
KC Sangakkara Sri Lanka2802802411,530169
Q de Kock South Africa159159237,014178
TM Dilshan Sri Lanka259259219,212161*
DA Warner Australia154154216,623179
LRPL Taylor New Zealand209209208,126181*
Babar Azam Pakistan134134206,328158
JE Root England177177197,578166*
SD Hope West Indies141141185,857170
MJ Guptill New Zealand191191177,124237*
S Dhawan India163163176,733143
RT Ponting Australia190190166,979164

Most ODI Centuries for India

BatterMInns100sRunsHS
V Kohli India3003005414,819183
RG Sharma India2732733311,532264
S Dhawan India163163176,733143
SR Tendulkar India144144166,433200*
Yuvraj Singh India207207126,840150
G Gambhir India134134114,981150*
V Sehwag India158158105,574219
MS Dhoni India276276810,100148
KL Rahul India868683,283112*
Shubman Gill India646483,141208

Most ODI Hundreds for Each Team

TeamLeaderTotalMatches
IndiaV Kohli54 hundreds300
AustraliaDA Warner21 hundreds154
EnglandJE Root19 hundreds177
South AfricaHM Amla26 hundreds174
New ZealandLRPL Taylor20 hundreds209
PakistanBabar Azam20 hundreds134
Sri LankaKC Sangakkara24 hundreds280
West IndiesSD Hope18 hundreds141
BangladeshTamim Iqbal12 hundreds215
ZimbabweBRM Taylor10 hundreds163
IrelandPR Stirling8 hundreds110

Most Centuries in Women's ODIs

BatterMInns100sRunsHS
S Mandhana India9999134,728136
L Wolvaardt South Africa119119125,384184*
TT Beaumont England112112124,400168*
HK Matthews West Indies8585123,204159*
NR Sciver-Brunt England101101104,013148*
MM Lanning Australia7676103,555152*
AC Jayangani Sri Lanka909083,300195*
SFM Devine New Zealand868683,078137
AJ Healy Australia969673,338170
Sidra Ameen Pakistan747472,652176*

Rate of Scoring Hundreds and the Coverage Window

Some batters made their hundreds faster than others. Amla’s 26 came in 174 innings, de Villiers needed 209 for 25, and Babar Azam (Pakistan) has 20 from only 134. Quinton de Kock (South Africa) reached 23 in 159. For India, Shubman Gill has 8 hundreds from 64 innings, the same count KL Rahul took 86 innings to reach.

Read older names with the coverage in mind. Sachin Tendulkar (India) shows 16 hundreds from 144 innings because only his matches from Jun 2002 onwards are in the data. The same applies to Sanath Jayasuriya (Sri Lanka, 14) and Ricky Ponting (Australia, 16). The list is a record of the years covered, not of whole careers.

Every player in the main top 15 also comes from a Test-playing nation, so the two lists match at the top. The highest Associate name in the team table is Paul Stirling (Ireland) with 8.

Leaders for Each Team and the Women's List

Every Test-playing side has a clear leader. South Africa’s is Amla with 26, Sri Lanka’s is Sangakkara with 24, and Australia’s is David Warner with 21. New Zealand’s Ross Taylor and Pakistan’s Babar Azam both sit on 20. Joe Root leads England with 19, Shai Hope leads West Indies with 18, Tamim Iqbal leads Bangladesh with 12 and Brendan Taylor leads Zimbabwe with 10.

In women’s ODIs, Smriti Mandhana (India) leads with 13 hundreds from 99 innings. Laura Wolvaardt (South Africa), Tammy Beaumont (England) and Hayley Matthews (West Indies) are level on 12, with Matthews getting there in 85 innings. Wolvaardt’s 184* is the highest score in the women’s top ten after Chamari Athapaththu’s 195*, listed as AC Jayangani (Sri Lanka).

Compare these counts with the most Test centuries and the most T20I centuries, or browse the ODI records hub.

Questions about Most ODI centuries

Who has the most centuries in ODI cricket?

Virat Kohli (India) has 54 ODI hundreds in the 2,576 men’s ODIs covered since Jun 2002. Rohit Sharma (India) follows on 33, with Hashim Amla (South Africa) next on 26.

Who has the most ODI hundreds for India?

Kohli leads India with 54, followed by Rohit Sharma with 33 and Shikhar Dhawan with 17. Sachin Tendulkar shows 16 here because only his ODIs from Jun 2002 are in the data. The India team records page has more.

What does the list of most ODI centuries look like for other teams?

Amla leads South Africa with 26, Sangakkara leads Sri Lanka with 24 and Warner leads Australia with 21. Root has 19 for England, while Ross Taylor and Babar Azam both have 20.

Which woman has scored the most ODI hundreds?

Smriti Mandhana (India) leads with 13 in 99 innings, across the 611 women’s ODIs covered. Laura Wolvaardt, Tammy Beaumont and Hayley Matthews each have 12.

Does this page show the most centuries in one ODI match?

No. These tables count career hundreds per batter in the matches covered. For hundreds across all three formats combined, see most centuries in international cricket.

Source: ball-by-ball match data from Cricsheet.org (ODC-BY). See how we compile these records.