Indian batting legend Virat Kohli holds the record for most centuries in ODI cricket. His 50 tons in ODIs puts him ahead of cricketing greats from previous eras like Sachin Tendulkar and Ricky Ponting.

The former Indian cricket team captain Virat Kohli took 279 innings to score his 50 ODI centuries. Kohli, the fastest player to score 12,000 ODI runs, did so in the semi-final of World Cup 2023 against New Zealand. After making his debut against Sri Lanka in 2008, it took Kohli just a little over a year to get his first ODI ton. His most productive years were 2017 and 2018 as he hit six centuries each.

Previously Sachin Tendulkar held the record for most centuries in ODI cricket. The Master Blaster, as Sachin was fondly known, smashed 49 tons in the 50-overs format during his ODI career.

Tendulkar, who has scored the most runs in international cricket, made his ODI debut against Pakistan in 1989.

Despite getting his first ODI half-century in only his ninth match, it took him five years to touch the 100-run landmark in 50-over cricket. It was during the third match of the 1994 Singer World Series - played between India, Australia, Sri Lanka and Pakistan - that the batting great scored his first ODI ton.

Lining up against the mighty Aussies, Tendulkar scored 110 off 130 deliveries as India won the match by 31 runs. From that point onwards, there was no looking back and the rest, as they say, is history.

During his 22-year career, Tendulkar played 463 ODIs, scoring 18,426 runs. He capped off his 50-over career against the same team he played his first-ever ODI match against - Pakistan - hitting a 48-ball 52 in a six-wicket win.

The current Indian team captain Rohit Sharma is third on this list and has scored 31 tons in ODIs. His position on this list makes for an all-Indian top three of players with the most ODI tons in cricket.

Former Australia captain Ricky Ponting has hit the fourth-most centuries in ODI cricket. The 2003 World Cup-winning captain smashed 30 centuries in 375 ODIs. Sanath Jayasuriya with 28 centuries in ODIs completes the top five list.

Most centuries in ODI cricket

Player Team Span Matches 100s
Virat Kohli India 2008-2023 291 50
Sachin Tendulkar India 1989-2012 463 49
Rohit Sharma India 2007-2023 260 31
Ricky Ponting Australia 1995-2012 375 30
Sanath Jayasuriya Sri Lanka 1989-2011 445 28

Featured photo: AFP / Munir uz Zaman