Most Centuries in ODI Cricket: The All-Time Top 10

Scoring a century in One Day International (ODI) cricket is a major achievement. It requires concentration, good technique and the ability to build an innings while keeping the scoreboard moving. Doing it repeatedly against international bowling attacks is even more difficult.

Several legendary batters have built remarkable careers through their performances in ODI cricket. Sachin Tendulkar held the record for the most ODI centuries for many years. Virat Kohli eventually surpassed him during the 2023 Cricket World Cup and continues to extend the record.

Rohit Sharma, Ricky Ponting, Sanath Jayasuriya and other great batters have also made their mark on the all-time list.

This  covers the top 10 players with the most centuries in men’s ODI cricket, their career achievements and the records that make them special.

Most Centuries in ODI Cricket: Top 10 Players of All Time

most centuries in odi

Virat Kohli leads the list with 55 ODI centuries. Sachin Tendulkar follows with 49, while Rohit Sharma holds third place with 35 hundreds.

The table below shows the leading men’s ODI century scorers according to the available career records as of 4 November 2026.

RankPlayerCountryODI Centuries
1Virat KohliIndia55
2Sachin TendulkarIndia49
3Rohit SharmaIndia35
4Ricky PontingAustralia30
5Sanath JayasuriyaSri Lanka28
6Hashim AmlaSouth Africa27
7=Kumar SangakkaraSri Lanka25
7=AB de VilliersSouth Africa25
7=Chris GayleWest Indies25
10Quinton de KockSouth Africa23

Note: Kumar Sangakkara, AB de Villiers and Chris Gayle are tied with 25 ODI centuries each. They share seventh place in the ranking.

1. Virat Kohli: 55 ODI Centuries

ODI career: 2008–present

Virat Kohli holds the record for the most centuries in ODI cricket. The Indian batter reached his 55th ODI hundred against West Indies on 27 September 2026, scoring 139 not out from 88 balls.

Kohli’s achievement was even more remarkable because he became the fastest batter to reach 15,000 ODI runs. He achieved the milestone in his 303rd innings, surpassing Sachin Tendulkar’s previous record of 377 innings by 74 innings. He also became only the second player to reach 15,000 ODI runs after Tendulkar.

His 55th century came during his return to international cricket, in the only format he currently plays. Kohli reached his hundred in just 74 balls and finished with 139 not out from 88 deliveries at a strike rate close to 158. His innings included 10 fours and nine sixes, the highest number of sixes he has hit in a single ODI innings.

Shubman Gill also scored 110 runs in the same innings. India chased the target of 296 with 50 balls remaining, winning the match by eight wickets. At 37, Kohli produced a remarkable comeback performance and set a personal record for sixes in an ODI innings.

Kohli broke Sachin Tendulkar’s long-standing record of 49 ODI centuries during the 2023 Cricket World Cup. He achieved the milestone by scoring his 50th ODI hundred against New Zealand in the semifinal at Mumbai’s Wankhede Stadium. The moment was particularly special because Tendulkar, whose record he had surpassed, was watching from the crowd at his home ground.

Kohli is particularly famous for his ability to chase targets. His excellent running between the wickets, strong technique and consistency make him one of the most successful batters in the format.

His highest ODI score is 183 against Pakistan in 2012.

Key Records

RecordDetails
CountryIndia
Matches317
ODI Runs15,109
ODI Centuries55
Highest Score183
ODI Debut2008
Major AchievementMost ODI centuries in men’s cricket
Fastest to 15,000 ODI Runs303 innings

2. Sachin Tendulkar: 49 ODI Centuries

ODI career: 1989–2012

Sachin Tendulkar was the first batter to score 49 centuries in ODI cricket. He held the world record until Virat Kohli surpassed it in November 2023.

Tendulkar played 463 ODI matches for India and scored 18,426 runs, making him the highest run-scorer in ODI history.

His batting combined excellent technique, timing and the ability to perform against different bowling attacks. Tendulkar also became the first batter to score a double century in men’s ODI cricket when he made 200 not out against South Africa in 2010.

His 49 ODI centuries remain one of the greatest achievements in international cricket.

Key Records

RecordDetails
CountryIndia
Matches463
ODI Runs18,426
ODI Centuries49
Highest Score200*
ODI Debut1989

3. Rohit Sharma: 35 ODI Centuries

ODI career: 2007–present

Rohit Sharma is third on the list of players with the most centuries in ODI cricket. The Indian opener has scored 35 ODI hundreds.

Rohit reached his 35th century against West Indies on 30 September 2026 in Guwahati. His innings of 101 from 75 balls helped India complete a successful chase.

He is famous for his powerful stroke play and ability to convert starts into big scores. Rohit also holds the record for the highest individual score in men’s ODI cricket, with 264 runs against Sri Lanka in 2014.

Another remarkable achievement is his three ODI double centuries. No other batter has scored more than one double century in the format.

Key Records

RecordDetails
CountryIndia
Matches291
ODI Runs12,120
ODI Centuries35
Highest Score264
ODI Debut2007
Major AchievementThree ODI double centuries

4. Ricky Ponting: 30 ODI Centuries

ODI career: 1995–2012

Ricky Ponting was one of Australia’s greatest batters and most successful captains. He scored 30 ODI centuries during his international career.

Ponting played 375 ODI matches and scored 13,704 runs. His aggressive batting, excellent pull shot and ability to perform in important matches made him a major part of Australia’s dominant teams.

He played a key role in Australia’s World Cup victories in 2003 and 2007. His highest ODI score was 164 against South Africa in 2006.

Ponting’s record of 30 ODI centuries placed him among the most consistent batters of his generation.

Key Records

RecordDetails
CountryAustralia
Matches375
ODI Runs13,704
ODI Centuries30
Highest Score164
ODI Debut1995

5. Sanath Jayasuriya: 28 ODI Centuries

ODI career: 1989–2011

Sanath Jayasuriya was one of the most destructive opening batters in ODI cricket. The former Sri Lankan all-rounder scored 28 centuries in 445 matches.

Jayasuriya changed the way teams approached the first 15 overs of an ODI innings. His aggressive batting during the 1996 Cricket World Cup helped Sri Lanka develop a highly attacking approach at the top of the order.

He scored 13,430 ODI runs and also contributed with his left-arm spin bowling. His highest ODI score was 189 against India in 2000.

Jayasuriya’s combination of batting and bowling made him one of Sri Lanka’s most valuable cricketers.

Key Records

RecordDetails
CountrySri Lanka
Matches445
ODI Runs13,430
ODI Centuries28
Highest Score189
ODI Debut1989

6. Hashim Amla: 27 ODI Centuries

ODI career: 2008–2019

Hashim Amla was one of South Africa’s most consistent ODI batters. He scored 27 centuries in just 181 matches.

Amla was known for his calm approach, excellent timing and ability to score runs at a steady pace. His batting technique allowed him to perform against both fast bowlers and spinners.

He scored 8,113 ODI runs and maintained an impressive average of 49.46. His highest ODI score was 159 against Ireland in 2015.

Amla also holds several records for reaching ODI run milestones quickly. His ability to score centuries consistently made him one of South Africa’s finest opening batters.

Key Records

RecordDetails
CountrySouth Africa
Matches181
ODI Runs8,113
ODI Centuries27
Average49.46
Highest Score159
ODI Debut2008

7. Kumar Sangakkara: 25 ODI Centuries

ODI career: 2000–2015

Kumar Sangakkara was one of Sri Lanka’s finest wicketkeeper-batters. He scored 25 ODI centuries during a career that included 404 matches.

Sangakkara scored 14,234 ODI runs and was recognised for his elegant batting style, consistency and ability to build long innings.

One of his most remarkable achievements came during the 2015 Cricket World Cup. He became the first batter to score four consecutive ODI centuries in the tournament.

His highest ODI score was 169 against South Africa in 2013. Sangakkara’s contribution to Sri Lankan cricket extended beyond batting, as he also served as captain and wicketkeeper.

Key Records

RecordDetails
CountrySri Lanka
Matches404
ODI Runs14,234
ODI Centuries25
Highest Score169
ODI Debut2000

8. AB de Villiers: 25 ODI Centuries

ODI career: 2005–2018

AB de Villiers was one of the most innovative batters in ODI cricket. The former South African captain scored 25 centuries in 228 matches.

Known as Mr. 360, de Villiers could play shots all around the ground. His ability to change his batting style according to the match situation made him extremely difficult to bowl to.

He scored 9,577 ODI runs at an average of 53.50. His highest score was 176 against Bangladesh in 2017.

De Villiers also holds the record for the fastest century in men’s ODI cricket, reaching 100 runs in just 31 balls against West Indies in Johannesburg in January 2015.

Key Records

RecordDetails
CountrySouth Africa
Matches228
ODI Runs9,577
ODI Centuries25
Average53.50
Highest Score176
Fastest ODI Century31 balls

9. Chris Gayle: 25 ODI Centuries

ODI career: 1999–2019

Chris Gayle was one of the most powerful batters in international cricket. The West Indies opener scored 25 ODI centuries in 301 matches.

Gayle was famous for his explosive batting and ability to hit enormous sixes. He scored 10,480 ODI runs and recorded a highest score of 215 against Zimbabwe in the 2015 Cricket World Cup.

His double century made him the first West Indies batter to achieve the milestone in men’s ODI cricket.

Gayle’s attacking style and match-winning performances made him one of the most recognisable players in the history of the format.

Key Records

RecordDetails
CountryWest Indies
Matches301
ODI Runs10,480
ODI Centuries25
Highest Score215
ODI Debut1999

10. Quinton de Kock: 23 ODI Centuries

ODI career: 2013–present

Quinton de Kock completes the top 10 list with 23 ODI centuries. The South African wicketkeeper-batter is known for his aggressive approach and ability to score quickly at the top of the order.

De Kock has played 164 ODI matches and scored 7,152 runs at an average of 45.84. His highest ODI score is 178 against Australia in 2016.

He played an important role in South Africa’s 2023 Cricket World Cup campaign. He scored four centuries in that tournament, making him one of its leading batters.

De Kock announced his retirement from ODI cricket after the 2023 World Cup but later returned to the format in 2025.

Key Records

RecordDetails
CountrySouth Africa
Matches164
ODI Runs7,152
ODI Centuries23
Average45.84
Highest Score178
ODI Debut2013
Major AchievementFour centuries in the 2023 World Cup

Which Player Has the Most ODI Centuries for India?

Virat Kohli holds the record for the most ODI centuries for India, with 55 hundreds. Sachin Tendulkar follows with 49, while Rohit Sharma is third with 35.

India has produced several outstanding ODI batters who have performed consistently across different conditions and tournaments.

RankIndian PlayerODI Centuries
1Virat Kohli55
2Sachin Tendulkar49
3Rohit Sharma35
4Sourav Ganguly22
5Shikhar Dhawan17

These players have played important roles in India’s success in bilateral series and major international tournaments.

What Makes an ODI Century Special?

ODI Century Special

Source Image: Kreedon

An ODI century is an individual innings of 100 or more runs in a One Day International match. It is one of the most important individual achievements in the 50-over format.

However, scoring a century requires more than hitting boundaries. A successful batter needs to understand the match situation and adjust their approach throughout the innings.

Some important qualities include:

1. Strong Batting Technique

A reliable technique helps batters handle fast bowling, swing and spin. It also allows them to build an innings without taking unnecessary risks.

2. Consistency

Scoring one century is difficult. Scoring 20, 30 or more requires consistent performances over many years.

3. Match Awareness

ODI batters must understand when to attack and when to defend. Managing the required run rate and building partnerships are important parts of the format.

4. Fitness and Concentration

A century often requires a batter to remain at the crease for a long period. Physical fitness and mental concentration help players maintain their performance.

Conclusion

The record for the most centuries in ODI cricket reflects years of consistency, skill and determination. Virat Kohli leads the all-time list with 55 hundreds, followed by Sachin Tendulkar with 49 and Rohit Sharma with 35.

Kohli’s record-breaking achievements include becoming the fastest batter to reach 15,000 ODI runs and surpassing Tendulkar’s century record. His 2027 Cricket World Cup target gives him another major milestone to pursue as he continues extending his record.

Ricky Ponting, Sanath Jayasuriya, Hashim Amla and other legendary batters have also created remarkable records in the 50-over format. Kohli’s ongoing career means the record could continue to grow, making his pursuit of the 2027 World Cup one to watch.

Frequently Asked Questions

1. Who has scored the most centuries in ODI cricket?

Virat Kohli holds the record for the most centuries in men’s ODI cricket. He has scored 55 hundreds for India, surpassing Sachin Tendulkar’s previous record of 49.

2. Who has the second-most centuries in ODI cricket?

Sachin Tendulkar is second on the all-time list with 49 ODI centuries. He scored these hundreds in 463 matches for India.

3. How many ODI centuries does Rohit Sharma have?

Rohit Sharma has scored 35 ODI centuries. He is third on the all-time list and holds the record for the highest individual ODI score of 264.

4. Who has scored the most ODI centuries for Australia?

Ricky Ponting holds the record for the most ODI centuries for Australia, with 30 hundreds in his international career.

5. Who scored the fastest century in ODI cricket?

AB de Villiers holds the record for the fastest century in men’s ODI cricket. He scored 100 runs from just 31 balls against West Indies in Johannesburg in January 2015.

Leave a Comment