6. Virat Kohli (India): 2,885 runs
The rate at which Kohli is breaking one ODI record after another, it won’t be a surprise if he ends up as the greatest ODI batsman. Virat has showed invariable consistency and has scored against every top nation, at home as well as away. The Indian Test skipper has century against all the top nine One-day playing nations. Apart from South Africa, he has crossed the three-figure mark in every country. Right now, he is the best chaser in the world. In 69 innings outside home, the 28-year-old has pummelled 2,885 runs at an average of 47 and strike-rate of 88. He has 11 away centuries under his belt.