Who is the best batter in IPL history?

AB de Villiers is the best batter in IPL history for his culmination of record strike rate and solid consistency.

Among top 38 leading scorers in the league, de Villiers is the only one to maintain his strike rate above 150. The still standing all-time record of 25 POTM awards have come for AB down the order and in much fewer innings than his contemporaries.

How we ranked the best IPL batters

We will be dealing with 4 metrics to get the final impact score made by each batter with minimum 3000 runs in the league.

Absolute SR and Average are heavily distorted by run inflation hence they have been taken with respect to team/conditions to normalize belters in recent seasons.

  1. Relative Strike Rate (50% weighting)
  2. Relative Average (30% weighting)
  3. Contribution (10% weighting)
  4. Runs in Playoffs (10% weighting)

All the above 4 metrics will have to be dialled down into a 0-100 score to incorporate the weightings later.

  • SR Factor: S = (Batter SR/Team SR) x 100
  • Average Factor: A = (Batter Average/Team Average) x 100
  • Contribution: C = (Runs/Team Runs) x 100
  • Playoff Factor: P = (Playoff Runs/Career Runs) x 100

(Please note Playoff factor will have significantly lesser impact than other factors due to including career runs as reference. It is intended this way to not give too much advantage to the batters in strong teams)

After including the weightings:

Final Score = 0.5S + 0.3A + 0.1C + 0.1P

All the batters with a minimum 3000 runs were considered in this analysis.

Top 10 best batters in IPL history

Using the above calculations, we arrived at the list below of top 10 batters in IPL history.

BatsmanCareer RunsStrike Rate FactorAverage FactorContribution FactorPlayoff FactorFinal Score
AB de Villiers5,162115.8156.620.35.7107.5
David Warner6,565109.2163.624.13.9106.5
KL Rahul5,815101.3170.824.21.5104.5
Chris Gayle4,965110.8141.423.35100.7
Jos Buttler4,646106.1143.420.96.398.8
Virat Kohli9,33698.8152.6225.597.9
Yusuf Pathan3,204113.3125.814.59.396.7
Shubman Gill4,598100.9142.521.512.996.6
MS Dhoni5,439103.4138.414.49.695.6
David Miller3,288102.6138.514.34.694.7

1. AB de Villiers

  • Runs: 5162
  • Innings: 170
  • Average: 39.7
  • SR: 151.7
  • Fifties: 40
  • POTM: 25

AB de Villiers clears the rest of the top 10 leading scorers with highest strike rate of 151.7 and 4th best average of 39.7 alongside record 25 POTM awards in the history of the league.

His game-changing middle-order mastery made him the ultimate finisher and a key reason why IPL betting apps paid out so many winning RCB bets over the years. He played risk-taking shots much more frequently and with more success than others evident from his Strike Rate Factor.

With 25 POTM awards inside 200 games makes him supremely ahead of the rest for his denting impact in wins.

His 89 against SRH in 2020 Eliminator was a true testament to how his career has been spent in saving RCB’s rather fragile batting line-up from collapses and under par scores.

2. David Warner

  • Runs: 6565
  • Innings: 184
  • Average: 40.5
  • SR: 139.8
  • Centuries: 4
  • POTM: 18

David Warner contributed massively at a brisk rate for SRH’s modest line up when Uppal used to be sluggish. Among top 10 leading run getters, his average of 40.5 is only behind KL Rahul and strike rate of 139.8 is 3rd best - a rare combo of impact.

Warner was that force at the top which franchise owners search for years. He adapted to Indian sluggish pitches (especially Uppal) quite quickly and became the prime contributor for SRH for more than half a decade.

His contribution to team runs is only second to KL Rahul overall as shown in the table.

He registered 66 top scores for the team in IPL which was a record at the time of his retirement. With the most IPL orange cap wins and most runs as an overseas batter, it is difficult to leave out Warner in the IPL GOAT debate.

3. KL Rahul

  • Runs: 5815
  • Innings: 150
  • Average: 46.2
  • SR: 139.1
  • Centuries: 6
  • POTM: 17

KL Rahul is the most consistent batter in IPL history with highest average of 46.2 among leading scorers. His strike rate is slightly on the lesser side at 139 but his remarkable contribution to team runs and a healthy average outweighs that enough to land him in top 3.

His graph went through the roof after he started opening regularly in the league. It went even higher after his explosive 2018 season where he amassed runs in bulk at a very high strike rate (158) for that season.

Rahul also has a knack of playing big knocks, evident from his 132 against RCB in 2020 which is the highest score ever by a captain and his 152 against PBKS last season which is the highest score by an Indian or a wicketkeeper.

His unmatched consistency and contribution to team runs places him well above the rest of Indians in this analysis.

4. Chris Gayle

  • Runs: 4965
  • Innings: 141
  • Average: 39.7
  • SR: 149.0
  • Centuries: 6
  • POTM: 22

Gayle missed out on the top 3 spot of this list due to his dip in the penultimate seasons but his 2011-13 peak for RCB repairs most of his numbers. His record of most sixes (357) in the league stands to this day.

Chris Gayle cemented IPL’s glory through his brute swing in early seasons. He hit a peak so magnificent in 2011-13 that no batter till date has managed to match his average and strike rate on an era adjusted scale.

Over 700 boundaries in only ~140 innings speaks of his destructive ability especially if you consider that half of these boundaries were sixes. 22 POTM awards in under 150 games easily puts him among top IPL batters of all time.

5. Jos Buttler

  • Runs: 4646
  • Innings: 136
  • Average: 39.7
  • SR: 149.7
  • Centuries: 6
  • POTM: 14

Buttler has an average of ~40 while striking close to 150 with 15th most runs in the league. Exceptional numbers for a batter who is known for his acceleration.

Jos Buttler has been a reliable force top of the order for Rajasthan Royals and Gujarat Titans. His explosive batting has had true impact since it comes with a hefty average of 40.

Buttler is one of the rare batters to have managed to do well across all parameters of our analysis unlike others who rely heavily on one set of parameters - either consistency or striking.

He peaked in 2022 where he won the MVP award while taking Rajasthan Royals to the finals. His 107 off 60 against KKR in 2024 featuring a last ball chase and a helmet drop celebration is his finest knock showcasing his unparalleled acceleration in context of the innings.

6. Virat Kohli

  • Runs: 9336
  • Innings: 275
  • Average: 40.4
  • SR: 134.8
  • Centuries: 9
  • POTM: 22

Kohli has been ever green for RCB with over 9000 record runs. He averages 40.4 while proving solid platforms at a strike rate of 135.

When it comes to longevity with consistency, there is no match to Kohli in IPL. Over 9000 runs and 20 POTM for one single franchise, Kohli has established his credentials in the league of legends.

He is ranked lower than expected in our analysis since his strike rate took a hit courtesy his anchoring role, which he plays perfectly.

Kohli’s peak came in 2016 where he powered RCB to the Finals with his record 973 runs while averaging above 80. His best knock is widely regarded as his 113 off just 50 balls against Kings XI Punjab in same season where he played with 5 stitches in his hands, utilising his purple patch to his explosive best.

7. Yusuf Pathan

  • Runs: 3204
  • Innings: 154
  • Average: 29.1
  • SR: 143.0
  • Fifties: 14
  • POTM: 16

Yusuf Pathan has played key role down the order for RR & SRH both in lifting the trophy with power-packed impactful knocks. He has 16 POTMs in just 174 matches.

Pathan has been getting underrated shouts by IPL fans for year for his immense impact down the order. A POTM award every 10 games while batting mostly below 5 is an achievement not celebrated enough.

Pathan is only behind ABD in era-adjusted Strike Rate Factor which carries 50% weightage in our formula.

He played a key role in Rajasthan Royals’ legendary run in the inaugural season and in 2012 where he helped KKR lift their maiden trophy.

8. Shubman Gill

  • Runs: 4598
  • Innings: 131
  • Average: 40.3
  • SR: 142.1
  • Centuries: 5
  • POTM: 14

Shubman Gill has an exceptional frequency at top scoring for Gujarat Titans alongside 2nd most runs (591) in IPL Playoffs history, only behind Raina.

Shubman has migrated to new plane since his arrival at GT from KKR where he took the opening role. He has top-scored for the team 40 times in just 113 innings as opener - most frequent in history.

The breakthrough season for this stylish batter came in 2023 when he amassed 890 runs while leading the side to the Finals.

He also played a key role in the previous season helping GT lift the title.

His 129 off just 60 balls against Mumbai Indians in Qualifier 2 of 2023 season remains his most cherished knock by the fans.

9. MS Dhoni

  • Runs: 5439
  • Innings: 242
  • Average: 38.3
  • SR: 137.5
  • Fifties: 24
  • POTM: 18

The best IPL captain of all time misses out on a higher position based on contribution to team runs but has been rock solid lower down the order for CSK for seasons. His POTM tally of 18 awards is only behind Rohit & Kohli among Indians.

The ultimate finisher has close to 3000 runs in death overs alone at an impressive strike rate of 188. MSD has time and again chipped in short but impactful knocks especially in chases.

He boasts a solid combo of absolute average and SR and trumps the likes of Raina and Rohit on era-adjusted scale too.

His 84 off just 48 balls against RCB in 2019 where he fell short by a single run remains his most heroic knock in IPL.

10. David Miller

  • Runs: 3288
  • Innings: 145
  • Average: 35.7
  • SR: 139.5
  • Fifties: 14
  • POTM: 5

Miller is an impressive inclusion to the list over the likes of Raina, Rohit and other veterans. He recently completed 3000 runs at average ~36 at strike rate of ~140 while adapting to middle-overs and death over strategies of several franchises over the seasons.

One of the most reliable finishers in IPL has now over 3000 runs (our cut-off) at an impressive strike rate of 140 while specializing in high-pressure middle-order roles.

Miller is the only batter apart from ABD and MSD to average 30+ in middle overs and he has maintained that average with strike rate above 175.

He contributed 481 runs from the middle order in GT’s maiden title win in 2022 alongside many productive seasons with Punjab Kings.

Miller considers his 101 off 38 balls against RCB the most rewarding knock of his IPL career.

Most runs in IPL history

Virat Kohli has most runs in IPL history:

BatsmanInningsRunsAverageStrike RateHighest Score50+ scoresCenturies
Virat Kohli2759,33640.4134.8113779
Rohit Sharma2767,32929.9132.9109512
Shikhar Dhawan2216,76935.3127.1106532
David Warner1846,56540.5139.8126664
KL Rahul1505,81546.2139.1152516
Suresh Raina2005,52832.5136.7100401
MS Dhoni2425,43938.3137.584240
Ajinkya Rahane1975,36730.2125.6105372
Sanju Samson1865,18131.8141.1119325
AB de Villiers1705,16239.7151.7133433

Most runs in IPL 2026

Vaibhav Suryavanshi scored the most runs in IPL 2026 winning a sensational orange cap at age 15.

BatsmanInningsRunsAverageStrike RateHighest Score50+ scoresFoursSixes
Vaibhav Sooryavanshi1677648.5237.310366372
Shubman Gill1673245.816310477433
Sai Sudharsan1772245.115810097530
Virat Kohli1667556.3165.810567325
Heinrich Klaasen15624481606964831
Ishan Kishan1560240.1182.49166032
KL Rahul1459345.6174.415265631
Abhishek Sharma1556340.2204.713555043
Mitchell Marsh1356343.3163.211145136
Jos Buttler1752637.6152.56045126

Most runs in an IPL season

Virat Kohli is the highest scorer in an IPL season with 973 runs.

BatsmanSeasonInningsRunsAverageStrike RateHighest Score50+ scores
Virat Kohli20161697381.115211311
Shubman Gill20231789059.3157.81297
Jos Buttler20221786357.5149.11168
David Warner20161784860.6151.4939
Vaibhav Sooryavanshi20261677648.5237.31036
Sai Sudharsan20251575954.2156.21087
Virat Kohli20241574161.8154.71136
Kane Williamson20181773552.5142.4848
Chris Gayle20121473361.1160.71288
Mike Hussey20131773352.4129.5956

Highest individual score in IPL history

Chris Gayle has the highest score record in IPL with 175 runs.

BatsmanTeamOpponentSeasonRunsBallsFoursSixes
Chris GayleRoyal Challengers BangalorePune Warriors2013175661317
Brendon McCullumKolkata Knight RidersRoyal Challengers Bangalore2008158731013
KL RahulDelhi CapitalsPunjab Kings202615267169
Abhishek SharmaSunrisers HyderabadPunjab Kings2025141551410
Quinton de KockLucknow Super GiantsKolkata Knight Riders2022140701010
Abhishek SharmaSunrisers HyderabadDelhi Capitals2026135681010
AB de VilliersRoyal Challengers BangaloreMumbai Indians201513359194
KL RahulPunjab KingsRoyal Challengers Bangalore202013269147
AB de VilliersRoyal Challengers BangaloreGujarat Lions2016129521012
Shubman GillGujarat TitansMumbai Indians202312960710

Best batting average in IPL history

Sai Sudharsan has the best average in IPL for a minimum 2000 runs.

BatsmanInningsRunsAverageStrike RateRuns per Innings
Sai Sudharsan572,51548.4149.244.1
KL Rahul1505,81546.2139.138.8
Heinrich Klaasen602,10442.1166.735.1
David Warner1846,56540.5139.835.7
Virat Kohli2759,33640.4134.833.9
Shubman Gill1314,59840.3142.135.1
Shaun Marsh692,47740132.735.9
JP Duminy772,02939.812426.4
Chris Gayle1414,96539.714935.2
Jos Buttler1364,64639.7149.734.2

Highest strike rate in IPL history

Andre Russell has the best IPL strike rate for a minimum 2000 runs.

BatsmanInningsRunsAverageStrike RateTeam SRFoursSixes
Andre Russell1152,65128.2174.2140.3186223
Abhishek Sharma892,37929.4171.3146.5224144
Heinrich Klaasen602,10442.1166.7154.3146120
Nicholas Pooran1012,52731.6164.1139.7168186
Virender Sehwag1042,72827.6155.4126.9334106
Glenn Maxwell1352,81923.9155.1136.5237161
Yashasvi Jaiswal822,59333.7152.8147.4310110
AB de Villiers1705,16239.7151.7130.9413251
Jos Buttler1364,64639.7149.7141.1458211
Sai Sudharsan572,51548.4149.2148.625882

Most centuries and fifties in IPL history

Virat Kohli has the record of most fifties in IPL.

BatsmanInningsRunsFiftiesInnings per fiftyTop ScoresCenturies
Virat Kohli2759,336684719
David Warner1846,565623664
Shikhar Dhawan2216,769514.3562
Rohit Sharma2767,329495.6602
KL Rahul1505,815453.3486
AB de Villiers1705,162404.3413
Faf du Plessis1474,773393.8420
Suresh Raina2005,528395.1391
Gautam Gambhir1524,217364.2400
Ajinkya Rahane1975,367355.6422

Virat Kohli also has the record for most centuries in IPL history.

BatsmanInningsRunsCenturiesInnings per TonFiftiesTop Scores
Virat Kohli2759,336930.66871
Jos Buttler1364,646719.42834
Chris Gayle1414,965623.53144
KL Rahul1505,8156254548
Sanju Samson1865,181537.22737
Shubman Gill1314,598526.23241
David Warner1846,5654466266
Shane Watson1413,874435.32126

Most sixes in IPL history

Chris Gayle has hit most sixes in the history of this league.

BatsmanInningsRunsSixesBalls per SixFoursBoundaries
Chris Gayle1414,9653579.3404761
Rohit Sharma2767,32932317.1661984
Virat Kohli2759,33631621.98441,160
MS Dhoni2425,43926415375639
AB de Villiers1705,16225113.6413664
Sanju Samson1865,18124315.1432675
KL Rahul1505,81523917.5508747
David Warner1846,56523619.9663899
Andre Russell1152,6512236.8186409
Kieron Pollard1713,41222310.4218441

Best Indian batter in IPL history

BatsmanInningsRunsAverageStrike RateTop Scores50+ scoresFinal Score
KL Rahul1505,81546.2139.14851104.5
Virat Kohli2759,33640.4134.8717797.9
Yusuf Pathan1543,20429.1143251496.7

KL Rahul

KL Rahul boasts highest average of 46.2 and highest contribution of 24.2% team runs among leading scorers in IPL. Only Kohli is close to his unmatched consistency but falls slightly short to KL’s absolute and adjusted strike rate.

KL’s 2018 season where he amassed 659 runs at an incredible strike rate of 158, changed his fortunes in the league.

Since then, he has taken the responsibility of making bulk of the runs at the top of the order at brisk pace for his team which is evident by 48 top scores in just 150 innings.

Virat Kohli

Virat Kohli has improved his numbers and scoring pace since the massive run inflation in 2024.

He is not only contributing with same consistency but has also upped his game in stroke making more frequently, helping RCB win back-to-back titles.

His records of most runs, fifties and centuries are here to stay for long as others are at a fair distance.

Playing on the batting paradise of Chinnaswamy even before inflation has impacted his adjusted numbers but his consistency makes up for most of it.

Yusuf Pathan

Yusuf Pathan’s clutch knocks down the order for champions Rajasthan Royals in the inaugural season hadn’t faded from the memories of the fans when he repeated the feat 8 years later for a different franchise.

Pathan’s 37-ball ton against a raging Mumbai Indians attack in an impossible chase established him as one of the greatest Indian hitters in 2010.

He has been contributing quite fairly with his quick and impactful 30s and 40s which has proved to be the point of difference between the two teams.

Best overseas batter in IPL history

BatsmanInningsRunsAverageStrike RateTop Scores50+ scoresFinal Score
AB de Villiers1705,16239.7151.74143107.5
David Warner1846,56540.5139.86666106.5
Chris Gayle1414,96539.71494437100.7

AB de Villiers

AB de Villiers’ bulk with blitz surpasses Warner’s lone warrior efforts and Gayle’s box office knocks on a whole.

While Warner & Gayle’s numbers also took a hit in their penultimate seasons due to dipping form, AB bowed out of IPL at peak with exceptional seasons behind him ensuring his numbers stayed supreme

With 16 POTM awards out of his home ground Chinnaswamy, ABD dominated away and at home alike.

David Warner

David Warner top scored 10 times for SRH in 2016 while winning the trophy as captain – a feat close to Messi’s supernatural run in 2022 Fifa World Cup.

Apart from winning the league single-handedly, Warner has been a consistent batter at the top with swift scoring in powerplay across seasons.

His 66 top scores for the team in the league was a record till Kohli broke it in last season.

Chris Gayle

IPL has Chris Gayle to thank for establishing the league on world map through sheer entertainment and power-hitting never seen before.

From 2011 to 2013, Gayle scored 2049 runs at average 62 while striking at 165 - which is exceptional for those low scoring seasons.

If not for the dip after age 35, Gayle would have finished with numbers as good as ABD.

Who are the big 3 in IPL?

The IPL 'Big 3' usually refers to MS Dhoni, Virat Kohli and Rohit Sharma.

MS Dhoni is easily one of the biggest names in the league. His popularity hit peak from 2007-2011 where he won a T20 World Cup, an ODI World Cup and two back-to-back IPL titles as captain, leaving him one of the richest buys in IPL.

Providing brute support down the order for CSK for years, Dhoni has made death overs his own arena. He has 2958 runs in death overs at average of 34 and strike rate of 188. Pollard - next on the list - is over 1000 runs short of MSD.

Dhoni's strategies as skipper and finishing as batter places him well over others in terms of overall impact on fans.

Virat Kohli has now backed his record tally of runs with 2 back-to-back titles. With top contribution in these wins, Kohli now has more than enough credentials to be acknowledged among top 3 batters with most impact among fans.

His lone-warrior knocks for RCB have always won hearts and now the trophy has taken his legacy to a whole new level. Kohli has 22 POTM awards and is only behind ABD in all-time tally.

Rohit Sharma turned around the fate of Mumbai Indians as skipper after breaking their trophyless streak of 5 years and creating a new one where he won 5 titles as skipper in just 8 seasons.

He was also the POTM in 2015 Finals for his 26-ball fifty against CSK. Rohit has blown hot and cold with his batting form but his popularity kept soaring thanks to his strategic brilliance on the field as skipper where he defended under par totals and managed to pitch in a few great knocks in clutch moments.

Most runs in IPL playoffs and finals

Suresh Raina has score the most IPL playoff runs in history.

BatsmanInningsRunsAverageStrike Rate50+ scores
Suresh Raina2471437.6155.27
Shubman Gill1459145.5149.23
MS Dhoni2352334.9132.12
Virat Kohli1951432.1130.53
Suryakumar Yadav1240636.9138.63
Rohit Sharma2440517.6115.43
Faf du Plessis1539027.9130.43
Shane Watson1238935.4151.44
Mike Hussey1138838.8124.44
Murali Vijay1036436.4147.42

Suresh Raina also has the most runs in IPL finals.

BatsmanInningsRunsAverageStrike Rate50+ scores
Suresh Raina824935.61502
Shane Watson423678.7163.92
Virat Kohli521453.5140.82
Rohit Sharma618330.5129.82
Murali Vijay418145.3147.21
Kieron Pollard618045195.71
MS Dhoni918030134.31
Wriddhiman Saha317487172.32
Shubman Gill414548.3127.21
Ambati Rayudu714228.4118.30

Highest partnerships in IPL history

  • 229: de Villiers/Kohli (RCB vs GL in 2016)
  • 220: KL Rahul/Rana (DC vs PBKS in 2026)
  • 215: de Villiers/Kohli (RCB vs MI in 2015)
  • 210: de Kock/KL Rahul (LSG vs KKR in 2022)
  • 210: Shubman/Sudharsan (GT vs CSK in 2024)
  • 206: Gilchrist/S Marsh (PBKS vs RCB in 2011)

astest to 1,000 IPL runs

Shaun Marsh (21 innings)

Marsh took IPL by storm in the inaugural season after arriving late and registered 8 top scores for the team in his first 10 innings itself while also creating the all-time record of contributing 37% team runs in 2008 season.

This consistency continued next few seasons where he reached the 1000-run mark in just 21 innings. This incredible record stands to this day.

Lendl Simmons (23 innings)

Simmons scored 900+ in his first 2 IPL seasons in 2014-15 while averaging close to 50.

His start to the IPL journey went to record books 2 season and 2 innings later in 2017 when he became the 2nd fastest to 1000 runs in the league after Shaun Marsh. His 2015 season peak also helped Mumbai Indians lift their second title.

Vaibhav Sooryavanshi

The 15 year old with a knack of creating records with his explosive batting also dominated the run-scoring area in his sensational start to the league.

In just 23 innings and just 440 balls, Vaibhav became the youngest and joint 2nd fastest to the milestone. He remains fastest to 1k IPL runs by deliveries.

Best batter in IPL history FAQs