Sunil Gavaskar (L) and Sachin Tendulkar (R) (Source: AFP)
India’s Test batting history is rich with legends who have excelled for over a decade, consistently challenging opponent bowlers. The dominance of Indian batting mostly flourished in the 70s, with the arrival of Sunil Gavaskar, and was later carried by the batters like Dilip Vengsarkar and Mohammad Azharuddin.
From Lala Amarnath, the first Test centurion, to Sachin Tendulkar with 51 Test centuries, India's batting strength has been internationally recognized by the cricketing fraternity.
Let’s look at the top 10 Indian batters with the most Test runs till January 2026.
Top 10 Indian batters with most Test runs till January 2026
Sachin Tendulkar (1989-2013) - 15,921 Test runs
Sachin Tendulkar, one of the all-time batting greats who ever played Test cricket in its 148-year history. The epitome of batsmanship was also regarded as the ‘God of Cricket’ for his excellence throughout his 24-year-long Test career for India from 1989 to 2013.
Sachin finished his career as both the leading run scorer of all time in Tests and the leading run-scorer for India in Tests. The Master Blaster scored 15,921 runs in 329 innings of the 200 Tests he played for India, hitting 51 centuries and 68 half-centuries.
He is still leading the chart of leading run-scorers even after more than 12 years of his retirement.
Rahul Dravid (1996-2012) - 13,265 Test runs
Rahul Dravid, nicknamed 'The Wall', often stood as India's barrier against defeat. Over his 16-year Test career, he played 164 Tests—163 for India and one for ICC World XI.
Speaking of the games he played for India, Dravid scored 13,265 runs in 284 innings of the 163 Tests he played. He scored these runs with a brilliant average of 52.63, scoring 36 centuries and 63 half-centuries.
He ranks second in the list of top 10 Indian batters with the most Test runs, following his senior teammate, Sachin Tendulkar.
Sunil Gavaskar (1971-1987) - 10,122 Test runs
The batting maestro from India, Sunil Gavaskar, was the first-ever batter to score 10,000 Test runs in the entire history of cricket’s traditional format. Gavaskar achieved this then-rarest milestone in the first innings of his Test career’s penultimate Test match in 1987.
At the time Gavaskar hung up his boots in international cricket, just in the next game, he had scored 10,122 runs in 214 innings of the 125 Tests he played for India. The Little Master remained India’s leading run-scorer in Tests for 18 years, until Sachin overtook him in 2005.
Now, Gavaskar is third in the list of top 10 Indian batters with the most Test runs, following Rahul Dravid and Sachin Tendulkar.
Virat Kohli (2011-2025) - 9,230 Test runs
The modern-day batting great, Virat Kohli, left everyone in shock with his sudden Test retirement last year. However, he still ended his career as the fourth leading run-scorer of all time in Tests for India. Kohli scored 9,230 runs in 210 innings of the 123 Tests he played.
Kohli amassed 30 centuries and 31 half-centuries in his 14-year Test career (2011-2025). As captain, he led in 68 Tests, winning 40, losing 17, and drawing 11. He is India’s most successful Test captain.
VVS Laxman (1996-2012) - 8,781 Test runs
VVS Laxman was one of the most stylish and classy batters who ever played for India in the longest format of the game. He made his debut in 1996 and represented India till his retirement in 2012, playing 134 Tests.
Laxman scored 8,781 runs in 225 innings, with an average of 45.97, hitting 17 centuries and 56 half-centuries. He is fifth in the list of the top 10 Indian batters with the most Test runs.
Virender Sehwag (2001-2013) - 7,212 Test runs
The swashbuckling batter, Virender Sehwag, is known for redefining the batting in Tests with his aggressive approach throughout his entire career. He also attracted the eyeballs with two triple centuries, against Pakistan in 2004 and against South Africa in 2008, respectively.
Sehwag ended his Test career with 7,212 runs in 178 innings of the 103 Tests he played. He scored 23 centuries and 31 half-centuries in his 12-year-long Test career from 2001 to 2013.
Sourav Ganguly (1996-2008) - 8,503 Test runs
One of the most successful Test captains for India, Sourav Ganguly, was also one of the leading batters for India in the Tests. He featured in 113 Tests for India, scoring 7,212 runs in 188 innings, with an average of 42.17, including 16 centuries and 35 half-centuries.
He captained India in 49 Tests, winning 21 games and losing just 13, including five drawn games. In the list of leading run-scorers of all time in Tests for India, Ganguly ranks seventh among the top 10 batters.
Cheteshwar Pujara (2010-2023) - 7,195 Test runs
In 2010 and 2011, Indian management was looking for a stable number three as the former batting great Rahul Dravid was nearing retirement. However, the management’s search ended quite early with Cheteshwar Pujara, who brilliantly carried Rahul Dravid’s legacy at number three.
After his debut in 2010, Pujara went on to represent India in 103 Tests over the next 13 years, until 2023. He scored 7,195 runs in 176 innings, with an average of 43.60, hitting 19 centuries and 35 half-centuries. Cheteshwar Pujara ranks eighth in the list of top 10 batters with the most Test runs.
Dilip Vengsarkar (1976-1992) - 6,868 runs
The former batter, Dilip Vengsarkar, was one of the vital cogs in the wheel of India’s batting attack in the late 70s and 80s. He played 116 Tests for India in his 16-year-long career from 1976 to 1992.
He amassed 6,868 runs in 185 innings, averaging 42.13, with 17 centuries and 35 fifties. Vengsarkar is ninth among Indian Test run-scorers. Besides that, he also led Team India in 10 Tests, winning two and losing five, alongside three draws.
Mohammad Azharuddin (1984-2000)
The former skipper and one of the prominent batters, Mohammad Azharuddin, left the entire cricketing world awestruck with three centuries in the first four innings of his Test career, including one in the first-ever appearance in the Tests.
Furthermore, he went on to play 99 Tests for India, scoring 6,215 runs in 147 innings at an average of 45.03, with 22 centuries and 21 half-centuries. He ranks tenth in the list of the top 10 Indian batters with the most Test runs.
Besides his batting brilliance, Azharuddin also led Team India in 47 Tests, winning 14 and losing 24. He was also the one of the most successful Test captains for India, before the likes of Sourav Ganguly, MS Dhoni, and Virat Kohli overtook him.

.jpg?type=mq)


