Cricket

List of Highest Run Scorers in ODI Cricket

A comprehensive ranked list of batsmen with the most runs in One Day International cricket history.

20 itemsUpdated Mar 23, 2026

ODI cricket has produced some of the finest batting performances in cricket history. Sachin Tendulkar of India leads the all-time list with 18,426 runs, a record that has stood since his retirement in 2012. Kumar Sangakkara of Sri Lanka sits second with 14,234 runs. Virat Kohli is the only active player in the top 10, continuing to add to his tally. These players represent the gold standard of one-day batting, combining consistency, power, and longevity.

#Name
1

Sachin Tendulkar

India | 463 Innings

2

Kumar Sangakkara

Sri Lanka | 380 Innings

3

Ricky Ponting

Australia | 365 Innings

4

Sanath Jayasuriya

Sri Lanka | 433 Innings

5

Mahela Jayawardene

Sri Lanka | 418 Innings

6

Inzamam-ul-Haq

Pakistan | 350 Innings

7

Virat Kohli

India | 292 Innings

8

Rohit Sharma

India | 282 Innings

9

Jacques Kallis

South Africa | 314 Innings

10

Sourav Ganguly

India | 300 Innings

11

Stephen Fleming

New Zealand | 279 Innings

12

Mohammad Yousuf

Pakistan | 220 Innings

13

Chris Gayle

West Indies | 294 Innings

14

Tillakaratne Dilshan

Sri Lanka | 321 Innings

15

Brian Lara

West Indies | 288 Innings

16

AB de Villiers

South Africa | 218 Innings

17

Shahid Afridi

Pakistan | 369 Innings

18

MS Dhoni

India | 297 Innings

19

Joe Root

England | 183 Innings

20

Babar Azam

Pakistan | 130 Innings

This list is compiled from verified public records and reference sources. Last verified: March 23, 2026.

Found an error? Report it here