Most runs in a calendar year by Indian batsmen

Some all-time greats have batted for India but who has the most runs in a calendar year?
Some all-time greats have batted for India but who has the most runs in a calendar year?

Virat Kohli travelled to Australia with the opportunity to break the record for most runs by any batsman in a calendar year but the Indian captain fell short of the all-time record held by Kumar Sangakkara and his own personal record set in 2017.

What’s amazing is the fact that Kohli amassed over 2700 runs in 2018 despite being rested for the Asia Cup and the Nidahas Twenty20 tri-series earlier this year.

The Indian captain’s tally for 2018 is not the all-time highest in the table for runs scored by an Indian batsman in a calendar year but it is still near the top end. It is also Kohli’s fourth entry into the Top 10 and amazingly, he’s the only active player in the top 10.


#10 Rahul Dravid - 2270 runs in 2002

Dravid scored a memorable double century in England in 2002
Dravid scored a memorable double century in England in 2002

At number 10 is Mr Dependable, Rahul Dravid, who scored 2270 runs in 2002.

Dravid scored the bulk of his runs in 2002 in Test matches. He scored 1357 runs in 26 innings with an average of 59. His highest score that year came against England in London when he scored 217 and he was only dismissed by a runout.

In total, Dravid scored his runs in 2002 in 50 innings with a combined average of 54.04.


#9 Virat Kohli - 2286 runs in 2014

Kohli scored a famous century at the MCG in 2014
Kohli scored a famous century at the MCG in 2014

Virat Kohli’s first entry in this list is at the number nine position for scoring 2286 runs in 2014. Back then, it was the most runs he scored in a calendar year surpassing his previous best of 2186 runs scored in 2012 by exactly 100 runs.

Kohli’s tally for the year was split appropriately between Test matches, ODIs and T20Is. He scored 847 runs in 20 Test match innings at an average of 44.57 with a highest of 169 which came against Australia at the MCG.

In ODIs, his record was outstanding as he racked up 1054 runs in 20 innings with an average of 58.55 and a strike rate 99.62! Kumar Sangakkara (1256) and Angelo Mathews (1244) had more ODI runs than Kohli in 2014 but both they played 28 and 31 innings respectively

Kohli was also the third highest run scorer in T20Is that year with 385 runs which were only 12 runs fewer than the tally of top scorer Alex Hales.

#8 Sourav Ganguly - 2346 runs in 2007

Ganguly's highest score in test matches came in 2007
Ganguly's highest score in test matches came in 2007

It is amazing that one of the best years in Sourav Ganguly’s ODI career also proved to be his last one for the Indian team in limited overs cricket.

The former Indian captain scored 1240 runs in ODIs in 2007 for both the Indian team and the Asian team combined. Interestingly, Ganguly scored 12 fifties but he did not score a single century that year with his highest score being 98. He scored more ODI runs in a calendar year than in 2007 in only four other years.

In Test matches that year, he scored 1106 runs which were the second highest for any player in that format that year. Ganguly notably scored his highest individual score of 239 in Test match cricket in 2007 against Pakistan.


#7 Virender Sehwag - 2355 runs in 2008

Sehwag scored 319 of 304 balls against South Africa in 2008
Sehwag scored 319 of 304 balls against South Africa in 2008

It was in 2008 when Virender Sehwag scored the highest individual score by an Indian batsman in any form of international cricket. Sehwag scored 319 off only 304 balls against South Africa in what was one of the greatest knocks in Test match cricket.

His triple century against helped him amass 1462 runs in Test matches that year which is the 15th highest tally for any cricketer in Test cricket in a calendar year. It wasn’t the highest for 2008 either as Graeme Smith scored 1656 runs in Test matches that year.

In ODIs, he scored 893 runs in 18 innings with a strike rate of 120.02 and an average of 49.61. This was the fourth highest tally for a player that year but the others above him played eight or nine innings more than him.

#6 Sachin Tendulkar - 2541 runs in 1998

Sachin still holds the record for most ODI runs in a calendar year from 1998
Sachin still holds the record for most ODI runs in a calendar year from 1998

It may come as a shock to the readers but Sachin Tendulkar’s only entry in the top ten for Indian batsmen with most runs in a calendar year is in the sixth position!

The master blaster holds numerous batting records internationally and for India but this is one record that eluded him. He held the record for a year but it was broken in 1999 by two Indian superstars.

Almost 75% of Sachin’s runs scored in 1998 came in ODIs. He scored 1894 runs in 33 ODI innings in 1998 and it is still the record for most runs scored by any batsman in ODIs in a calendar year. When Sachin set the record, he beat his own record of 1611 runs in ODIs in 1996.

What’s mindblowing is the fact that he had an average of 65.31 in ODIs that year with a strike rate of 102.15!


#5 Sourav Ganguly - 2580 runs in 1999

Ganguly's highest ODI score of 183 came in 1999
Ganguly's highest ODI score of 183 came in 1999

The first player to break Sachin’s tally of 2541 runs in 1998 was Sourav Ganguly. What’s interesting is the fact that like Sachin, Ganguly also scored the bulk of his runs in 1999 in ODIs.

He scored 1767 runs in ODIs that year at an average of 46.50 in 41 innings. The fact that Ganguly played eight innings more than Sachin played in 1998 and still fell short of his tally by 127 runs shows how truly outstanding Sachin’s performance was in 1998 but that doesn’t make Ganguly’s record any less significant.

His tally is still the second highest by any player in ODIs in a calendar year and he also scored his personal best 183 in fifty overs cricket in the same year against Sri Lanka at the 1999 World Cup.

Also, Ganguly’s tally in all formats for the year 1999 is currently the eleventh highest in a calendar year by any batsman.

#4 Virat Kohli - 2595 runs in 2016

Kohli had a fantastic year in T20Is in 2016
Kohli had a fantastic year in T20Is in 2016

We are entering Virat Kohli territory now and at fourth is his tally for 2016. This year is well remembered for his exploits in the shortest format of the game. Kohli scored 641 runs in T20Is in 2016 at an average of 106.83 and strike rate of 140.26.

Before India’s ongoing tour of Australia, his T20I tally for 2016 was the highest by any player in a calendar year in the shortest format of the game but Shikhar Dhawan broke that record against Australia and the record is now 689 runs. However, Dhawan played four innings more than Kohli.

Kohli also scored 1215 runs in Test matches that year with an average of 75.93 and a highest score of 235 runs against England. The Indian captain’s overall tally for 2016 is the tenth highest in international cricket.


#3 Rahul Dravid - 2626 runs in 1999

Dravid scored six of his twelve ODI centuries in 1999
Dravid scored six of his twelve ODI centuries in 1999

It was mentioned that after Sachin Tendulkar set the record for most runs by an Indian batsman in 1998, two players broke his record the following year. The first was Sourav Ganguly and the second player was Rahul Dravid.

When Dravid scored 2626 runs in 1999, it was not only the most by an Indian batsman in a calendar year but also by any batsman in a calendar year. His record for most runs by an Indian batsman remained intact until 2017 and the record for any batsman was only broken by Ricky Ponting in 2003. Currently, it is the eighth highest in the all-time list.

The Wall scored 1761 runs in ODIs that year which is the third highest in a calendar year in the format’s history behind Sachin’s tally of 1998 and Ganguly’s of 1999. Dravid’s highest ODI score of 153 was scored in 1999 against New Zealand at a run-a-ball pace. In fact, he scored six of his twelve ODI centuries in 1999.

#2 Virat Kohli - 2735 runs in 2018

Kohli scored 2735 runs in 2017 despite being rested for the Asia Cup
Kohli scored 2735 runs in 2017 despite being rested for the Asia Cup

One can’t help but wonder if Virat Kohli would have broken the record for most runs by an Indian batsman or even any batsman in a calendar year in 2018 if he had played in the Asia Cup at least.

Kohli had a little over 2400 runs when he travelled to Australia for the ongoing tour but he was not able to amass enough runs to break the all-time record. Nevertheless, Kohli’s 2735 runs are the second highest by an Indian batsman in a year and also the fourth highest by any batsman.

The Indian captain scored 1202 runs in ODIs with a jaw-dropping average of 133.55, a strike rate of 102.55, six 100s and a highest score of 160 not out.


#1 Virat Kohli - 2818 runs in 2017

Kohli broke Dravid's 18 years old record in 2017
Kohli broke Dravid's 18 years old record in 2017

Rahul Dravid’s record of 2626 runs in 1999 was broken after eighteen years in 2017 when Virat Kohli scored 2818 runs.

Kohli’s tally is the third highest by any player in a year. Only Kumar Sangakkara with 2868 runs in 2014 and Ricky Ponting with 2833 runs in 2005 have more runs in a calendar year. However, Kohli reached his tally in 52 innings while Sangakkara and Ponting took 57 and 58 innings respectively.

He scored 1460 of those runs in ODIs with an average of 76.84, a strike-rate of just under 100 and he scored six centuries that year.

Follow IPL Auction 2025 Live Updates, News & Biddings at Sportskeeda. Get the fastest updates on Mega-Auction and cricket news

Quick Links

Edited by Vignesh Ananthasubramanian
Sportskeeda logo
Close menu
WWE
WWE
NBA
NBA
NFL
NFL
MMA
MMA
Tennis
Tennis
NHL
NHL
Golf
Golf
MLB
MLB
Soccer
Soccer
F1
F1
WNBA
WNBA
More
More
bell-icon Manage notifications