Most Runs in ODI History

One-Day International (ODI) is a cricket format in which two international teams play cricket for around 50 overs, to score as many runs as possible, unlike Test cricket, which can last up to five days. ODIs are completed in a single day that typically lasts for around 7 to 8 hours, which includes the breaks. The ODI format was introduced in the early 1970s. The first ODI match was played on 5th jan, 1971 between Australia and England at Melbourne Cricket Ground. This article is about the list of players with the most runs in ODI history.

List of Players with Most Runs in ODI Cricket

Let’s look at the list of Players with most Runs in ODI Cricket below-

PlayerSpanMatchInnsRuns
Sachin Tendulkar (IND)1989-201246345218426
KC Sangakkara (Asia/ICC/SL)2000-201540438014234
Virat Kohli (IND)2008-202530128914181
Ricky Ponting (AUS/ICC)1995-201237536513704
ST Jayasuriya (Asia/SL)1989-201144543313430
DPMD Jayawardene (Asia/SL)1998-201544841812650
Inzamam-ul-Haq (Asia/PAK)1991-200737835011739
JH Kallis (Afr/ICC/SA)1996-201432831411579
SC Ganguly (Asia/IND)1992-200731130011363
Rohit Sharma (IND)2007-202527226411168
Rahul Dravid (Asia/ICC/IND)1996-201134431810889
MS Dhoni (Asia/IND)2004-201935029710773
Chris Gayle (ICC/WI)1999-201930129410480

List of the top 10 Players with the Most Runs in ODI History

Here are the details of the top 10 players scoring most runs in ODI : 

1) Sachin Tendulkar (India) – 18426 runs

Sachin Tendulkar is the all-time favorite among cricket lovers. Even after so many years, fans know him as the “God of Cricket”. He played ODI from 1989-2012, where he scored 18,426 runs in 463 matches. He made 49 centuries and 96 half-centuries. Sachin was the very first cricketer to score 200 runs in ODI.

2) Kumar Sangakkara (Sri Lanka) – 14,234 runs

Kumar Sangakkara is a famous Sri Lankan player who performed amazingly in ODIs from 2000-2015. He scored 14,234 runs in 404 matches. His achievements in ODIs are still remembered by the fans. He has a record of 25 centuries and 93 half-centuries in ODIs. 

3) Virat Kohli (India) – 14,181 runs

Virat Kohli is a present-day cricket celebrity who is famous for his aggressive batting. Till now he has played 287 ODIs and scored 14,085 runs. He has 50 centuries and 72 half-centuries under his name in ODI career. 

4) Rickey Ponting (Australia) – 13,704 runs

Rickey Ponting was the most successful captain for the Australian team. He was a dominant force in ODIs from 1995 to 2012. In 375 matches, he scored a total of 13,704 runs and had an average of 42.04. He scored 30 centuries and 82 half-centuries. His leadership and batting were amazing, which helped the Australian team to win the World Cup in 2003 and 2007.

5) Santh Jayasuriya (Sri Lanka) – 13,430 runs

From 1989 to 2011 Sanath Jayasuriya played a total of 445 matches and scored 13,430 runs at an average of 32.36. He scored 28 centuries and 68 half-centuries. His explosive batting at the top of the order set a new tone for many Sri Lankans.

6) Mahela Jayawardene (Sri Lanka) – 12,650 runs

Mahela Jayawardene was a key figure for the Sri Lankan’ batting line-up from 1998 to 2015. He played a total of 448 matches and secured 12,650 runs. He scored 19 centuries and 77 half-centuries. 

7) Inzamam-ul-Haq (Pakistan) – 11,739 runs

Inzamam-ul-Haq was the most prolific batsman of Pakistan, he played a total of 378 ODIs between 1991 to 2007. He scored a total of 11,739 runs at an average of 39.53. He scored 10 centuries and 83 half-centuries. Inzamam’s ability to play under pressure made him a linchpin in Pakistan’s batting order.

8) Jacques Kallis (South Africa) – 11,579 runs

Jacues kallis was one of the greatest all-rounders who played for South Africa. His ODI career span was from 1996 to 2014, where Kallis played 328 matches and hit 11579 runs. He scored 17 centuries and 86 half-centuries. He was a very versatile player with both bat and ball, he proved a balance in his team during that time.

9) Sorav Ganguly (India) – 11,363 runs

Sorav Ganguly was called the ‘Prince of Kolkata.’ He was considered instrumental in transforming the Indian cricket mindset. He played between 1992 and 2007. He played a total of 311 ODI matches and scored a total of 11,363 runs and had an average of 41.02 runs. He scored 22 centuries and 72 half-centuries.

10) Rahul Dravid (India) – 10889 runs

Rahul Dravid was nicknamed ‘The Wall’ for his defensive play style. He played between 1996 and 2011. He played a total of 344 ODI matches and scored a total of 10,889 runs and had an average of 39.17 runs. He scored 12 centuries and 83 half-centuries. Rahul Dravid was well known for his adaptability and the unique techniques that made him a crucial player for all formats.

Read More: Highest Score in T20 || Indian Cricket Team Overview

Conclusion

The ODI format has seen some of the most remarkable batting performances in cricket. There were players like Sachin Tendulkar and Kumar Sangakkara who had set the benchmarks so high that it will be difficult for the new generation to beat. On the other hand, there are players like Virat Kohli who continue to chase and break the records set by the seniors. All the above players have not only contributed to their nation but also to the sport. They are also inspiring countless fans and the younger generation, who aspire to break their records in the future.

FAQs

1. Who was the player who scored the most runs in ODI history?

Sachin Tendulkar scored the highest runs (18426 runs in 463 matches)  in ODI history.

2. Who was the closest to breaking Sachin Tendulkar’s record of most runs in ODI history?

There was a pretty large difference between the top 2 scorers, but Kumar Sangakkara came the closest to beating Sachin Tendulkar; he was just 4192 runs off beating Sachin Tendulkar. 

3. Who is the Non-Asian player with the highest runs in ODI history?

Australian player Rickey Ponting scored the most runs- 13704 runs.

4. Will Virat Kohli break Sachin Tendulkar’s ODI record?

Yes, it is possible that Virat Kohli can break Sachin Tendulkar’s record of more than 18 thousand runs as of 2025. He has already scored more than 14 thousand runs, and he is the only active player from the top ten most runs scored in ODIs.

5. Which player has the highest average out of the 10 players in the top 10 list?

Virat Kohli has the highest average; he has maintained an average of 58 runs in ODIs.

Read More Scorecards

South Africa Vs Australia Team Match ScorecardNew Zealand Vs Pakistan Team Match Scorecard
South Africa Vs Pakistan Team Match ScorecardIndia Vs Australia Team Match Scorecard
India Vs Bangladesh Team Match ScorecardZimbabwe Vs India Team Match Scorecard
New Zealand vs Pakistan Team TimelineIndia vs New Zealand Team Match Scorecard