One-day cricket (ODI) is one of the most loved formats in cricket. Before the inception of T20 cricket, ODI cricket ruled over players’ and fans’ hearts. The first-ever ODI match was played in 1971 between England & Australia at MCG. So far, more than 1500 matches have been played in the ODI format. The popular layout has attracted many greats to arrive and perform. A batter needs to be disciplined, resilient, and wise to score runs in ODIs. Let’s have a look at the players with the most runs in ODI Cricket.

Sachin Tendulkar
Termed the best batsman of all time, Sachin Tendulkar rules the chart of most runs in ODI. Making his ODI debut at the young age of 16, Sachin went on to play the 463 ODIs (the highest by any player) and scored 18426 runs at an impressive average of 44.83. The ace batter from Mumbai also holds the record for the most 100s (49) and 50s (96) in ODIs. Sachin loved playing in World Cup and ended his career as the highest run-getter in World Cup history (2278 runs in 45 matches).
Kumar Sangakkara
Lankan great, Kumar Sangakkara holds 2nd place on the elite list of most runs in ODIs. Having played 404 ODIs between 2000 to 2015, the classy southpaw amassed 14234 runs at a decent average of 41.98. In his illustrious career, Sangakkara hit 25 centuries and 93 half-centuries. Despite being so consistent in the World Cup with 1532 runs in 37 matches, Sanga never had the fortune to win the World Cup.
Ricky Ponting
The two times World Cup-winning skipper, Ricky Ponting gets the 3rd spot in scoring the most runs in ODIs with 13704 runs in 375 matches. Ponting had a glorious career of 17 years (1995-2012), where he whacked 30 hundred and 82 fifties for Australia. The Aussie legend won the man of the match award in the 2003 World Cup final for his unbeaten 140 off 121 balls against India, Helping Australia to clinch their 3rd World Cup trophy.
Sanath Jayasuriya
One of the most prolific batsmen of the 90s, Sanath Jayasuriya is featured in the 4th position in terms of getting the most runs in ODI. The left-hand batsman made 13430 runs in 445 games at a decent average of 32.36. Jayasuriya’s 189 against India in the 2000 Champions Trophy is the highest score by a Sri Lankan batter in ODI.
Virat Kohli
Indian stalwart Virat Kohli currently sits at 5th rank on the most ODI runs list. With 12898 runs in 274 ODI matches, Kohli has managed to keep a mind-boggling average of 57.32, which is the best in this format. The Delhite ace has smacked 46 centuries so far in ODIs, which is the 2nd highest by any batsman in this format. Kohli surpassed Srilankan great Mahela Jayawardene to be the 5th highest run-getter in ODI against Sri Lanka itself on 15th January 2023 with a master class 166* off 110 balls.
Mahela Jayawardene
Former Lankan captain, Mahela Jayawardene cements 6th place on the most runs in the ODI tally. Jayawardene possessed class, responsibility, and grit in his sensational career and accumulated 13430 runs in 445 matches. Despite scoring a remarkable century (103*) in the 2011 World Cup final at Wankhede Stadium, Jayawardene failed to fulfill his dream to win the World Cup.
Players | Matches | Innings | Runs | Average | Strike Rate | Best | 50s | 100s |
S Tendulkar (IND) | 463 | 452 | 18426 | 44.83 | 86.23 | 200* | 96 | 49 |
K Sangakkara (SL) | 404 | 380 | 14234 | 41.98 | 78.86 | 169 | 93 | 25 |
R Ponting (AUS) | 375 | 365 | 13704 | 42.03 | 80.39 | 164 | 82 | 30 |
S Jayasuriya (SL) | 445 | 433 | 13430 | 32.36 | 91.20 | 189 | 68 | 28 |
V Kohli (IND) | 274 | 265 | 12898 | 57.32 | 93.62 | 183 | 65 | 46 |
M Jayawardene (SL) | 448 | 418 | 12650 | 33.37 | 78.96 | 144 | 77 | 19 |
I Haq (PAK) | 378 | 350 | 11739 | 39.52 | 74.24 | 137* | 83 | 10 |
J Kallis (SA) | 328 | 314 | 11579 | 44.36 | 72.89 | 139 | 86 | 17 |
S Ganguly (IND) | 311 | 300 | 11363 | 41.02 | 73.70 | 183 | 72 | 22 |
R Dravid (IND) | 344 | 318 | 10889 | 39.16 | 71.23 | 153 | 83 | 12 |
MS Dhoni (IND) | 350 | 297 | 10773 | 50.57 | 87.56 | 183 | 83 | 10 |
C Gayle (WI) | 301 | 294 | 10480 | 37.83 | 87.19 | 215 | 54 | 25 |
B Lara (WI) | 299 | 289 | 10405 | 40.48 | 79.51 | 169 | 63 | 19 |
Sachin Tendulkar has the most runs in ODI (18426).
Sachin Tendulkar has the highest runs in ODI (18426).
Sachin Tendulkar has scored the most ODI centuries (49).
Rohit Sharma has 3 double centuries in ODI.
Virat Kohli has scored 12898 runs in ODIs, the 5th highest in ODI history.
Senior Cricket Content Editor at Skyblogs Cricket.
Contact me at info@skyblogs.in