Skip to content
CricketTaken

IPL Most Runs: All-Time Records

By CricketTaken EditorialPublished Cricket in the Indian Premier League13 min read

How this is written and checkedReport an error

One batter has scored more than 9,000 runs in the Indian Premier League and there is nobody within 2,000 of him. Virat Kohli has 9,336 from 275 innings, every one of them for the same club, and the gap to Rohit Sharma in second place is larger than the entire career aggregate of most players who have opened in this competition. Kohli reached 8,000 in 2024, passed 9,000 during 2026, and finished the nineteenth season still batting in the top three of the order.

That kind of lead is unusual in a Twenty20 league, where squads turn over every three years and overseas players rotate in and out of availability. It exists because Kohli was signed at nineteen and never left. Length of service, not superiority of method, is the single largest variable on this leaderboard — which is why the list below carries strike rate and average next to the aggregate, and why the sections that follow break the same runs down by season, by club and by era.

Every figure here is counted from ball-by-ball records of all 1,243 Indian Premier League matches from April 2008 to the 2026 final.

The all-time IPL run-scorers

# Player Mat Inns Runs HS Ave SR 100 50 Span
1 Virat Kohli 282 275 9,336 113* 40.42 134.80 9 68 2008-2026
2 Rohit Sharma 281 275 7,329 109* 30.04 132.92 2 49 2008-2026
3 Shikhar Dhawan 222 221 6,769 106* 35.26 127.14 2 51 2008-2024
4 David Warner 184 184 6,565 126 40.52 139.77 4 62 2009-2024
5 KL Rahul 160 149 5,815 152* 46.52 139.15 6 45 2013-2026
6 Suresh Raina 204 200 5,528 100* 32.52 136.73 1 39 2008-2021
7 MS Dhoni 277 241 5,439 84* 38.30 137.45 0 24 2008-2025
8 Ajinkya Rahane 212 197 5,367 105* 30.15 125.60 2 35 2008-2026
9 Sanju Samson 190 185 5,181 119 31.98 141.13 5 27 2013-2026
10 AB de Villiers 183 170 5,162 133* 39.71 151.69 3 40 2008-2021
11 Chris Gayle 141 141 4,965 175* 39.72 148.96 6 31 2009-2021
12 Robin Uthappa 205 197 4,952 88 27.51 130.35 0 27 2008-2022
13 Dinesh Karthik 257 233 4,842 97* 26.32 135.36 0 22 2008-2024
14 Faf du Plessis 154 147 4,773 96 35.10 135.79 0 39 2012-2025
15 Jos Buttler 138 136 4,646 124 39.71 149.73 7 28 2016-2026
16 Shubman Gill 134 130 4,598 129 40.33 142.09 5 32 2018-2026
17 Suryakumar Yadav 179 164 4,581 103* 33.68 148.59 2 31 2012-2026
18 Ambati Rayudu 204 185 4,348 100* 28.61 127.54 1 22 2010-2023
19 Shreyas Iyer 147 144 4,229 101* 35.84 136.73 1 32 2015-2026
20 Gautam Gambhir 154 151 4,217 93 31.24 123.88 0 36 2008-2018
21 Manish Pandey 180 163 4,012 114* 29.50 121.83 1 22 2008-2026
22 Shane Watson 145 141 3,874 117* 30.99 137.91 4 21 2008-2020
23 Rishabh Pant 139 136 3,865 128* 33.61 146.79 2 20 2016-2026
24 Ishan Kishan 134 127 3,600 106* 30.51 143.54 1 23 2016-2026
25 Ravindra Jadeja 267 205 3,526 77* 29.14 130.64 0 5 2008-2026

Twenty-five names, and only four of them have a career average above 40: Kohli, Warner, Rahul and Gill. Fourteen have averages in the twenties or low thirties, which is the honest shape of a competition where a top-order batter is expected to take risks from the fourth over.

What Kohli's lead is actually made of

Kohli's 9,336 came in 282 appearances for Royal Challengers, a club that won its first title in 2025. The aggregate divides into two very different careers. Between 2008 and 2019 he scored at a strike rate in the low 130s, anchoring an order built around him and AB de Villiers. From 2023 the rate climbed past 150, and his 2026 season — 675 runs at 165.85 — was the fastest scoring of his life.

Only three of his nine hundreds came after 2016, and four came in that one season. The 2016 figure of 973 runs is the largest total anyone has made in an IPL season and it is not close: the second-largest, Shubman Gill's 890 in 2023, is eighty-three short, and no other player has passed 900.

Rohit Sharma's 7,329 is a differently constructed pile. He has 275 innings, exactly the same as Kohli, and 2,007 fewer runs, because his average is ten lower. He opened, captained Mumbai Indians to five titles, and moved down the order in his later years. Two hundreds in 281 matches is a striking number for a batter with 324 sixes — he converted almost nothing, and the individual-score list barely features him.

Every Orange Cap season

Season Player Team Inns Runs Ave SR
2008 Shaun Marsh Kings XI Punjab 11 616 68.44 139.68
2009 Matthew Hayden Chennai Super Kings 12 572 52.00 144.81
2010 Sachin Tendulkar Mumbai Indians 15 618 47.54 132.62
2011 Chris Gayle Royal Challengers Bangalore 12 608 67.56 183.13
2012 Chris Gayle Royal Challengers Bangalore 14 733 61.08 160.75
2013 Michael Hussey Chennai Super Kings 17 733 52.36 129.51
2014 Robin Uthappa Kolkata Knight Riders 16 660 44.00 137.79
2015 David Warner Sunrisers Hyderabad 14 562 43.23 156.55
2016 Virat Kohli Royal Challengers Bangalore 16 973 81.08 152.03
2017 David Warner Sunrisers Hyderabad 14 641 58.27 141.81
2018 Kane Williamson Sunrisers Hyderabad 17 735 52.50 142.44
2019 David Warner Sunrisers Hyderabad 12 692 69.20 143.87
2020 KL Rahul Kings XI Punjab 14 670 55.83 129.34
2021 Ruturaj Gaikwad Chennai Super Kings 16 635 45.36 136.27
2022 Jos Buttler Rajasthan Royals 17 863 57.53 149.05
2023 Shubman Gill Gujarat Titans 17 890 59.33 157.80
2024 Virat Kohli Royal Challengers Bengaluru 15 741 61.75 154.70
2025 B Sai Sudharsan Gujarat Titans 15 759 54.21 156.17
2026 Vaibhav Suryavanshi Rajasthan Royals 16 776 48.50 237.31

Warner's three caps are the most by any player. Read the strike-rate column downwards and the competition's history is legible in one column of numbers: the 2013 winner scored at 129, the 2020 winner at 129, and the 2026 winner at 237.

The 2026 entry deserves a note of its own. Vaibhav Suryavanshi's 776 runs came off 327 balls — the lowest ball count of any 700-run season by a margin of well over a hundred deliveries. He hit seventy-two sixes on the way, thirteen more than any previous season by any batter.

Leading run-scorer at each franchise

Franchise Leading scorer Runs Inns
Chennai Super Kings MS Dhoni 4,865 214
Mumbai Indians Rohit Sharma 6,159 231
Royal Challengers (Bangalore era) Virat Kohli 7,263 229
Royal Challengers (Bengaluru era) Virat Kohli 2,073 46
Kolkata Knight Riders Gautam Gambhir 3,035 107
Rajasthan Royals Sanju Samson 4,027 143
Sunrisers Hyderabad David Warner 4,014 95
Kings XI Punjab Shaun Marsh 2,477 69
Punjab Kings Prabhsimran Singh 1,834 62
Delhi Daredevils Virender Sehwag 2,174 79
Delhi Capitals Rishabh Pant 2,036 72
Gujarat Titans Shubman Gill 3,181 76
Lucknow Super Giants Nicholas Pooran 1,615 57
Deccan Chargers Adam Gilchrist 1,220 46
Pune Warriors Robin Uthappa 1,103 45
Gujarat Lions Suresh Raina 841 29
Kochi Tuskers Kerala Brendon McCullum 357 13

Rebranded clubs are shown separately because the ledger genuinely splits: Punjab's Kings XI years produced a leading scorer who left in 2017, and the Punjab Kings figure belongs to a wicketkeeper who was uncapped when the name changed. Only two men top a franchise list at a club they were still contracted to in 2026 — Samson at Rajasthan until his move to Chennai, and Gill at Gujarat Titans.

Note also how few innings the highest figures took. Warner made 4,014 for Sunrisers in 95 innings; Dhoni needed 214 to make 4,865 for Chennai, because a finisher rarely bats twelve overs.

The scoring inflation that reshaped the list

Season Innings Runs per over Average innings total 200+ totals Sixes
2008 116 8.31 154.6 11 623
2013 152 7.68 148.3 4 675
2018 120 8.65 165.8 15 872
2022 148 8.54 164.8 18 1,062
2023 147 8.99 174.7 37 1,124
2024 142 9.56 182.9 41 1,261
2025 146 9.63 181.5 52 1,301
2026 147 9.88 186.7 65 1,426

The competition's slowest season was 2013, at 7.68 an over. Thirteen years later a side needs 187 to post a par total and sixty-five innings a season pass 200. That shift is why the leaderboard is not a clean ranking of ability across eras. Gautam Gambhir's 4,217 runs at 123.88 were made almost entirely before 2016 and were highly valued at the time; the same strike rate today would not survive a season.

It also explains why several of the newest names climb so fast. Sai Sudharsan reached 2,515 runs in 57 innings, Rishabh Pant 3,865 in 136 and Ishan Kishan 3,600 in 127 — totals that would have taken a decade in the first half of the competition's life. The 2016 season, which produced Kohli's 973 and de Villiers' 687 in the same batting order, sits awkwardly between the two eras: extreme individual output, unremarkable collective run rate.

Volume against rate

The aggregate list rewards availability. Sorting the same players by runs per ball faced tells a different story. Three examples make the point.

  • Kohli has 9,336 runs from 6,926 balls. De Villiers made 5,162 from 3,403 — barely half the deliveries, at a strike rate seventeen points higher, in the same order for a decade.
  • Chris Gayle scored 4,965 from 141 innings with 357 sixes, the largest six count in the competition's history. He is eleventh on the run list and first by a distance on impact per ball faced among players with more than 3,000 runs.
  • MS Dhoni's 5,439 came with ninety-nine not-outs, a figure no other batter approaches. His average of 38.30 is inflated by a role that specifically avoided dismissal, and his twenty-four fifties in 241 innings show what the role cost him in aggregate.

Career averages and rates on their own qualification bars are set out on the IPL best batting averages and IPL best batting strike rates pages, which is the right place to read this table against.

Four things the run list shows

Longevity beats method, up to a point. The top eight all played ten seasons or more. The only players inside the top twenty with fewer than nine seasons are Buttler, Gill and Sudharsan, all of whom scored at over 142.

Indian batters dominate by number, overseas batters by rate. Of the top twenty-five, eighteen are India-qualified, but the highest strike rates in that group belong to de Villiers, Buttler, Gayle and Suryakumar Yadav — three of the four overseas.

Hundreds are not how big aggregates are built. Dhoni, Uthappa, Karthik, du Plessis and Gambhir are all inside the top twenty with no century between them; between them they have 5,439, 4,952, 4,842, 4,773 and 4,217 runs. Fifties and thirties, repeated for a decade, do the work. The full century record is on the IPL most centuries page.

The next 9,000 will arrive faster. Kohli needed nineteen seasons to reach 9,336 at 40.42. Sudharsan's first five seasons produced 2,515 at 48.37, and 2026 alone put 27,450 runs on the board across 147 innings — roughly 50 per cent more scoring than the 2013 baseline from a similar number of innings. Aggregate records set in this decade will be measured against far more permissive conditions than the ones the list's founding names batted in.

For the wider context of how the tournament grew from eight teams to a ten-team, seventy-four-match season, and where its records sit inside the domestic game, start from cricket in India.

Sources and method

All batting figures on this page are computed from the public ball-by-ball archive published by Cricsheet (cricsheet.org, ODC-BY 1.0), covering every one of the 1,243 IPL matches played between 18 April 2008 and the final on 31 May 2026. Nothing here is estimated.

Runs are runs off the bat. Balls faced exclude wides but include no-balls, which is the convention used on published scorecards, so the strike rates here should reconcile with them. Super-over deliveries are excluded from every total, since they do not count towards career aggregates. Matches are appearances in a named XI; innings are occasions the player came to the crease, which is why the two columns differ most for finishers and least for openers.

Averages divide runs by completed innings, with retirements treated as not out. Franchise names are given as they stood at the time of the match, and rebranded clubs are listed separately where the split changes the answer, since Kings XI Punjab and Punjab Kings did not field the same squads. Orange Cap winners were derived by taking the leading run-scorer for each season from the same archive and cross-checked against the published season records.

Season labels follow the year the tournament was played rather than the split-year notation used in the source data, so 2007/08 is shown as 2008, 2009/10 as 2010 and 2020/21 as 2020. Records of this kind move with every season; the figures above are current to the end of the 2026 tournament and no later.