Scoring most centuries in cricket in all formats requires so much dedication, discipline, and confidence. Making a single century is quite easy, but scoring centuries consistently across all formats makes a batter stand out from the rest. Today, in this blog, I have written the complete list of cricketers with the most centuries in all formats. To make this interesting, I have also broken out their centuries across all formats, i.e., T20s, Tests, and ODIs. I have also mentioned when these batters scored their first centuries or against whom, for clarity. Let’s take a look at the players with the most centuries in all formats of cricket.
1. Sachin Tendulkar: 100 Centuries(IND🇮🇳)

If you are watching cricket since past 20-years, then I believe you are not surprised by seeing this name at top. Sachin Tendulkar is currently leading this list till the day he announced his retirement ( at 2013) with 100 centuries across all formats. In 1990, he scored his first international test century against England when he was only 17 years old. Astonishingly, Sachin took 78 matches to score his first ODI century, which was against Australia in 1994. Out of the 782 innings he played in all formats, he scored 51 test centuries and 49 ODI centuries. Surprisingly, Sachin do not have any T20 centuries in his international career; however, he has one T20 century in the IPL for the Mumbai Indians.
Currently, Sachin also leads the tally of most runs in all formats of cricket with 34,357 runs. He scored his last century against Bangladesh in 2012, which was his 100th century of his rich career.
Interesting Fact: He also has most centuries in test format of cricket .i.e. 51
Key Stats:
Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | t20 100s | Total 100s |
1989-2013 | 664 | 782 | 34,357 | 248*(test) | 51 | 49 | 0 | 100 |
2. Virat Kohli: 77 Centuries(IND🇮🇳)

Virat Kohli, the former Indian captain, lies second in the list of most centuries in cricket in all formats with 76 centuries. Virat made his international debut against Sri Lanka in 2008; however, he crafted his first century one year later, in 2009, against Sri Lanka in Eden Gardens, Kolkata, while playing an ODI match. Out of 559 innings he played in his career till March 2023, he scored 29 test centuries, 46 ODI centuries, and 1 T20 century.
He also has a record of seven centuries in the IPL while playing with RCB. After Sachin Tendulkar, he also lies in second place in the tally of most runs in all formats of cricket with 25,582 runs. It looks like Virat Kohli is the only current active player who can beat Sachin’s record of most centuries. Among active players, Virat is currently leading the list of most centuries in cricket in all formats and also of most runs, with very big differences.
Interesting Fact: He has most centuries in cricket in all formats among active players
Key Stats:
Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | t20 100s | Total 100s |
2008-2023* | 504 | 569 | 25,708 | 254* (test) | 29 | 47 | 1 | 77 |
3. Ricky Ponting: 71 Centuries(AUS🇦🇺)

Ricky Ponting, three-time world cup-winning Australian Captain has scored 71 centuries to occupy 3rd placed in list of most centuries in cricket in all formats. Ponting scored his first test century against England in 1997, interestingly, it was his Ashes debut match. To conclude, Ponting made 41 test centuries and 30 ODI centuries in 668 innings of his international career. Like Sachin, Ponting do not has any T20 centuries in his career. With 27,483 runs, Ponting is currently the 4th-highest run-getter in all formats of cricket. Before December 2023, Ponting was leading Virat in this list, but Virat surpasses Ponting in just one month.
Key Stats:
Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | t20 100s | Total 100s |
1995-2012 | 560 | 668 | 27,483 | 257(test) | 41 | 30 | 0 | 71 |
4. Kumar Sangakkara: 63 Centuries(SL🇱🇰)

The Sri Lankan legend, Kumar Sangakkara, has firmly occupied the 4th position in the list of most centuries in cricket in all formats, with as many as 63 centuries. Although he made his international debut in 2000 against South Africa, but Sangakkara scripted his first century in test cricket against India in 2001. Out of 666 innings he played in his career, he has 38 test centuries as well as 25 ODI centuries without any t20 centuries. He also played a crucial role in making Sri Lanka, 2014 t20 World Cup champions. With 28,016 runs, Sangakkara is the third-highest run scorer in cricket across all formats.
Key Stats:
Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | t20 100s | Total 100s |
2000-2015 | 594 | 666 | 28,016 | 319(test) | 38 | 25 | 0 | 63 |
5. Jacques Kallis: 62 Centuries(SA🇿🇦)

Who said only batsmen could lead this tally? The South African legend, Jacques Kallis, is the only all-rounder in this list with 62 centuries across all formats. Kallis made his first century against New Zealand in 1998 after 3 years since his international debut against England in 1995. Eventually, Jacques Kallis has 45 test centuries and 17 ODI centuries out of the 617 innings he played in his South African career. Not to forget, he is also an IPL champion with KKR and has scored more than 2000 runs in 98 matches of his IPL career.Together with 25,534 runs, Kallis is currently the 5th-highest run-getter in all formats of cricket.
Interesting Fact: Only All-Rounder in top-10 with most centuries in cricket in all formats
Key Stats:
Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | t20 100s | Total 100s |
1995-2014 | 519 | 617 | 25,534 | 248*(test) | 45 | 17 | 0 | 62 |
Here is a complete list of the top 10 cricketers with the most centuries in cricket in all formats :
Player | Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | t20 100s | Total 100s |
---|---|---|---|---|---|---|---|---|---|
Sachin Tendulkar(IND🇮🇳) | 1989-2013 | 664 | 782 | 34,357 | 248*(test) | 51 | 49 | 0 | 100 |
Virat Kohli(IND🇮🇳) | 2008-2023* | 506 | 562 | 25,711 | 254*(test) | 29 | 47 | 1 | 77 |
Ricky Ponting(AUS🇦🇺) | 1995-2012 | 560 | 668 | 27,483 | 257(test) | 41 | 30 | 0 | 71 |
Kumar Sangakkara(SL🇱🇰) | 2000-2015 | 594 | 666 | 28,016 | 319(test) | 38 | 25 | 0 | 63 |
Jacques Kallis(SA🇿🇦) | 1995-2014 | 519 | 617 | 25,534 | 248*(test) | 45 | 17 | 0 | 62 |
Hashim Amla(SA🇿🇦) | 2004-2019 | 349 | 437 | 18,672 | 311*(test) | 28 | 27 | 0 | 55 |
Mahela Jayawardene(SL🇱🇰) | 1997-2015 | 652 | 725 | 25,957 | 374(test) | 34 | 19 | 1 | 54 |
Brian Lara (WI🌴) | 1990-2007 | 430 | 521 | 22,358 | 400*(test) | 34 | 19 | 0 | 53 |
Rahul Dravid(IND🇮🇳) | 1996-2012 | 509 | 605 | 24,702 | 270(test) | 36 | 12 | 0 | 48 |
AB de Villiers(SA🇿🇦) | 2004-2018 | 420 | 484 | 20,014 | 278*(test) | 22 | 25 | 0 | 47 |
Most Centuries in Cricket Among Active Players
Below is the list of top 5 active players with most centuries:
Player | Period | Matches | Innings | Runs | HS | Test 100s | ODI 100s | T20 100s | Total 100s |
---|---|---|---|---|---|---|---|---|---|
Virat Kohli(IND🇮🇳) | 2008-2023 | 506 | 562 | 25,711 | 254*(test) | 29 | 47 | 1 | 77 |
Joe Root(ENG🇬🇧) | 2012-2023 | 329 | 428 | 18,555 | 254(test) | 30 | 16 | 0 | 46 |
David Warner(AUS🇦🇺) | 2009-2023 | 355 | 443 | 17,617 | 335*(test) | 25 | 20 | 1 | 46 |
Steve Smith(AUS🇦🇺) | 2010-2023 | 307 | 358 | 15,267 | 239(test) | 32 | 12 | 0 | 44 |
Rohit Sharma(IND🇮🇳) | 2007-2023 | 450 | 470 | 17,561 | 264(ODI) | 10 | 30 | 4 | 44 |
Conclusion
It is quite surprising that Virat Kohli is the only active player on this list. Active players like David Warner, Joe Root, Rohit Sharma, and Steven Smith are currently in the 11th, 12th, 13th, and 14th positions on this list, respectively. Let’s see how things change in the next 4-5 years on this list. Do you think Virat will break Sachin’s record or not? or Which batter can enter this list in the next 4–5 years? Drop your comment below! Thank you for reading this blog to the end! Stay connected with cricketpunch.com for more blogs like these.