IPL Series : Part 1 - Teams, stadiums, and players
First in a series analysing cricket data from the Indian Premier League
Introduction
The Indian Premier League is a city based franchise cricket tournament primarily held in India. As I write this, the eighteenth season is ongoing in 2025, with the first season held in 2008. This is my attempt at doing something for fun with the data from the past 17 seasons. This first post will look at the teams across the 17 seasons.
The Teams
The league currently has ten teams. Some of these have been in place since the beginning, some have changed names, and some have come and gone. For the purposes of our analysis, these are the teams we are looking at —
Higher opacity represents more games played by the team that season
Initially starting off with 8 teams, these are the changes that have occurred since then
In 2011, for the first time new teams were added, Kochi Tuskers Kerala and Pune Warriors. Kochi lasted a single season before folding up due to lack of payment the IPL and the players.1
In 2012, the Deccan Chargers sold their team, and the team was rechristened to the Sunrisers Hyderabad. Even though they initially took over the entire same set-up and the city, they are treated as two separate teams.
In 2016, due to the owners betting on their team’s games, the Rajasthan Royals and the Chennai Super Kings were suspended by the Supreme Court for 2 seasons with two new teams2 - the Gujarat Lions and Rising Pune SuperGiants taking their place. The new teams had their contracts for only two years and were dissolved when RR and CSK came back in 2018.
Finally, in 2022 two new team were added again, the Gujarat Titans and the Lucknow Super Giants.
So far Pune have had two separate teams at two different points in time. Also the same ownership group that bought the temporary team Pune SuperGiants, bought the Lucknow Super Giants on a permanent contract.3
Gujarat as well, seems to have had two teams, however the Gujarat Lions were representing Rajkot, and Gujarat Titans represent Ahmedabad, two separate cities in Gujarat.
Delhi Capitals were formerly known as the Delhi Daredevils, and Punjab Kings were formerly known as the Kings XI Punjab. They only changed their name, and their current names are used.4 Royal Challengers Bengaluru changed their name from Royal Challengers Bangalore, after the city formally changed its name5, and between 2016 and 2017, Pune changed from “SuperGiants” to “SuperGiant”.
Each team plays 14 league games a year, barring cancellations due to rain. For 8 team seasons, that is 2 games against every team, home and away. For 10 team seasons, that is 2 games against 5 teams, home and away; and 1 game either home/away against the remaining 4 teams. All teams play each other at least once every year.
Post this, there is the play-off stage, where teams might play up to 3 games.
How well does each team play?
Chennai Super Kings and Mumbai Indians have won the most titles (5 each), and it shows. Chennai has only had 2/15 losing seasons, and Mumbai 5/17 (with 2 coming in the last 3).
Punjab Kings on the other end of the scale, one of the only 3 original teams to have never won the title, have only had 2 winning seasons ever — the first one ever in 2008, and 2014. They have had a 50/50 or losing season every season for the past 10 seasons!
Lucknow, the recent entrants, have had at least a 50/50 record for all 3 of their seasons, and are yet to win a title, whereas their sibling Gujarat Titans won the league in their first year!
Pune Warriors and Kochi Tuskers Kerala never had a winning season as long as they played. Pune Warriors specifically are remembered as one of the worst teams in the history of the league, as evidenced by the three large red dots.
The Stadiums
While no teams own their stadiums, most games in most seasons have been held in the stadiums within each city. The few big exceptions to this are -
Due to General Elections in India, and the police saying they will not be able to provide security for the games, in 2009 the entire tournament was held in South Africa, and in 2014, the first half was held in the United Arab Emirates.67
Due to the pandemic, the 2020 season was initially delayed, and both the 2020 season and the 2021 season (in two halves) were played in the United Arab Emirates.89 In 2022, while the tournament was held in India, it was held only in Mumbai and Pune.10
Correspondingly, Mumbai has held the most IPL games of any City, at a whopping 173 games (Wankhede - 118, DY Patil - 28, Brabourne - 27), with Bengaluru a distant second at 94 games, all at the M Chinnaswamy Stadium.
However, what is interesting is all the other stadiums where teams have played games.
Historically, Mumbai Indians have played in all 3 stadiums in Mumbai, and Punjab Kings have played in Mohali, Dharamsala, and starting recently in Mullanpur. Sunrisers Hyderabad and Deccan Chargers, both used Vishakhapatnam as an alternate home ground to Uppal. Barring these, every other team has only had one ground which could be considered their “true home”. Removing these games, all play-off games, and the seasons which were thrown off (2009, 2020, 2021, 2022, and first half of 2014), we get following “unusual homes”.
Rajasthan Royals and Punjab Kings love moving their home, and have called 3 separate stadiums home.
For Punjab Kings, this is in addition to their 3 normal stadiums, meaning a total of 6 Indian grounds they have called home in 18 years!
The Ahmedabad ground has hosted the most number of non-home home games, but all for Rajasthan Royals. This has been due to having to move there for parts of some seasons. (TODO: check).
Barabati Stadium in Cuttack is everyone’s second home, having hosted home games for 3 separate teams!
Who wins where?
We define an extreme losing/winning record as winning less than 25%/more than 75% of their games in a particular stadium.
Over 5 or more games, more teams have extreme losing records than extreme winning record. Kolkata Knight Riders bookend this graph, losing all games ever at Brabourne, and winning almost all games in Pune. Chennai Super Kings at DY Patil are the only other team to have an extreme winning record in a particular stadium.
Sunrisers Hyderabad have a strong losing record in 3 separate grounds, but Punjab Kings tops them here as well, having losing more than 3/4 of their games in Dubai, Pune, Mullanpur (their new home!) and Jaipur.
When we tighten the number of games played to 10 or more, and relax the extremities to 60/40 (or 40/60) records, we get the following —
Pune Warriors were one of the worst teams in the league, and it shows once again, having the worst losing record at home. Deccan Chargers, and Punjab Kings join them as other teams with losing records at home.
A fair few teams have winning home records, but none as good as Chennai Super Kings. They manage to have a strong winning home record, AND a strong losing record for FIVE more teams at their home — truly making Chepauk a fortress.
Mumbai Indians have done something similar but at Kolkata Knight Riders home! While Eden Gardens seems to be a good ground for Kolkata generally, they really roll out the red carpet for Mumbai when they show up.
The Feroz Shah Kotla, an actual honest fortress turned into a stadium, is the opposite, welcoming everybody with Chennai, Bengaluru, and Hyderabad all having winning records there!
The players
Who plays for each team?
Normally a cricket team has 11 players in a side — at least 5 bowlers, and 1 wicket-keeper with all 11 of them batting if needed. In the last couple of years, IPL has introduced an “impact player” rule, essentially allowing 1 substitution in the game.
These teams have been around for a while, and IPL has a policy of wiping the teams clean every 3-5 years, to stop dynasties from lasting too long. Which teams have been able to get around this, and have a strong core that represents them well?
The average team has one strong talisman — that one player involved in over 70% of their games! Following this, we there are about 4 players above 40% — we’ll call this their core, and 8 right at about 30% — the team players.
Let’s see how the current teams fare in this regard —
The two new teams. clearly stand out over the rest, a function of not having faced a single big shuffle yet. Gujarat Titans is still unique though, with 3 separate players — Shubman Gill (current captain), Rashid Khan, and Rahul Tewatia having played all 45 games for the team!
Punjab Kings is the team that chops and changes the most often, with NO talismans, NO core, and 2 team players — Piyush Chawla and David Miller! Clearly, none of this has helped in their results — being the worst performing original team from 2008.
Slightly better is Delhi Capitals, the second original team to have never won a title, with one player qualifying as their “core” — Rishabh Pant, now the captain of Lucknow, and 6 further team players — Amit Mishra, David Warner, Shreyas Iyer (current Punjab captain), Axar Patel (current Delhi captain), Prithvi Shaw, and Virender Sehwag.
Chennai and Mumbai are at the other end of the spectrum, with 3 and 2 talismanic players each — keeping teams together pays off!
Chennai have MS Dhoni having played a whopping 98% of their matches, with Suresh Raina and Ravindra Jadeja their other talismanic players. Dwayne Bravo, and Ravi Ashwin are their core, with S Badrinath, Faf du Plessis, Ambati Rayudu, Albie Morkel, and Deepak Chahar being the team players! Adding Murali Vijay (29.5%) turns this into a proper playing XI that CSK could have fielded out! In fact, in their top 15 players with the most appearrances, ALL make more than the league average share of appearances!
Mumbai similarly, have Rohit Sharma and Keiron Pollard being their talismen, with Harbhajan Singh, Jasprit Bumrah, Lasith Malinga, Ambati Rayudu (again!), and Hardik Pandya being the core — to say nothing of Suryakumar Yadav, Ishan Kishan, and Krunal Pandya rounding out the team players. To make an XI, the next in line is the legend Sachin Tendulkar (29.8%) which tells you how strong of a core they have managed to build and keep over the years! All 11 of them make more than the league average share of appearances!
Kolkata Knight Riders, Rajasthan Royals, and Sunrisers Hyderabad are the average franchises, with all following the formulae exactly with 1 talisman, 4 core, and 8 total players each.
Royal Challengers Bengaluru are quite unique in that Virat Kohli has played 98.5% of all their games — a clear talisman. Now, earlier, we saw that teams with strong talisman perform well, have a stronger than average core, whereas teams who struggle to maintain players perform badly. RCB has managed one strong talisman so far, so we could expect them to follow suit? And they do meet all the next numbers exactly like an average team — 3 core, and 4 more team players — BUT except AB de Villiers in second place, every other player is less common than the average player! They are also one of the three original teams that has never won a title, but also have been to three finals — the most without winning a season! A truly mercurial team — I would say IPL’s very own Pakistan, with Virat Kohli standing tall over all the comings and goings like Imran Khan — except Imran did win the 1992 World Cup.
The canonical playing XI
We can further extend this to look at the 11 players (+1 impact sub) for each team that has played the most games for them, creating the canonical playing XI for each team
Suprisingly, these look like pretty good teams for the most part! It is interesting to see 29 players show up for multiple teams, with Dinesh Karthik the only one showing up a whopping three times, for Royal Challengers Bengaluru (#8), Kolkata Knight Riders (#10), Delhi Capitals (#10)!
Rashid Khan is special in being the only core player for two separate teams, appearing in over 40% of the games for both Gujarat Titans (#1) and Sunrisers Hyderabad (#5).
The Pandya brothers, Hardik and Kunal, along with Ambati Rayudu, David Warner, and David Miller are team players across two teams.
Its nice to also draw attention to Rahul Dravid, who retired in 2013 — over a decade ago — and still makes the 12 for two teams!
The average player
The median player plays 13 games over 3 seasons for 1 team — 3-4 appearances a season, stick around for 2-3 seasons with a team, and that’s it — a season’s worth of IPL games is the median player’s IPL career.
Most median players are probably not remembered all that well. In our data, we find 3 exactly median players, and while I do remember the Sri Lankan Chaminda Vaas, the names of Ankeet Chavan and KP Appanna are just passing memories.
The mean player fares a little better, 33 games over 4 seasons with 2 teams. The two closest to mean players within our dataset are Daniel Vettori, now an IPL coach, and Pravin Tambe, arguably an IPL myth for his story.
Removing the 63 players in our dataset that played 1 game for 1 team in 1 season, the median player also does better, now making 16 games over 3 seasons for 2 teams, with the mean player now playing 36 games over 4 seasons for 2 teams.
The Travellers
The Australian Aaron Finch is special, having played for 9 separate teams - a true kit collector. Following closely on his heels are Jaidev Unadkat, with 8 teams, and Manish Pandey with 7.
There are 7 players that have played for 6 teams, and the most noteworthy of those is Dinesh Karthik, who makes the Top 12 list for 3 of those 6 teams!
Only 4 players have played over 50 games for 2 teams, Suryakumar Yadav (Mumbai, Kolkata), David Warner (Hyderabad, Delhi), Ambati Rayudu (Mumbai, Chennai), and Axar Patel (Delhi, Punjab).
The Comeback stories
Very few players are able to spend a few years on outside, and then make it back in.
Of all the players to have played in the IPL, only two have a gap of 10 seasons or more between consecutive appearrances. The first of these is Matthew Wade, the Australian wicketkeeper. He is the archetype of the long-gap IPL player — a foreigner who is plays quite well, and has enough other cricket to stay involved, but either likes taking the IPL off, feels like they deserve more than their IPL auction price, or just isn’t top tier or available enough for the teams to spend their precious few foreign slots on. All 8 other players who made a comeback after 7 or more seasons is a foreigner in the same archetype.
The second, however, is Madhya Pradesh’s Harpreet Singh, who last played for Pune Warriors in 2012, before coming back to play 3 games for Punjab Kings in 2023. An astounding story, his comeback probably has roots in the new look Madhya Pradesh side, with captain Rajat Patidar (current RCB captain), and Venkatesh Iyer, led by Chandrakant Pandit, have done extremely well in the last couple of years. His years in the wilderness, while in and around IPL teams, also involved a regrettable mix up of names that led to teams assuming he’d falled afoul of the law.11
Mitchell Starc and Travis Head are unique in that it was certainly their choice to sit out for 8 and 6 seasons respectively, as they played an average of 10 games a season over both their last season in the league (2015 RCB, and 2017 RCB) before their hiatus and their first season back in (2024 KKR, and 2024 SRH).
Anureet Singh and Shreevats Goswami are the only Indians to have played at least half a season’s worth of games (7) over their last season and comeback season, with at least a gap of 4 seasons.12 Colin Ingram, Ravi Bopara, and Wayne Parnell round out this list.
Multiple comebacks
It’s really hard to make one comeback, even harder to make two! There are 7 different players that have missed at least 2 seasons and then come back in the playing XI twice!
A fascinating list, its members are as follows —
Adam Zampa - The Australian spinner has often been considered just good enough to sneak in, but never good enough to play a whole season. He turned out for Pune in 2016 (5 games) and 2017 (6 games), before playing 3 games for Bengaluru in 2020, and 6 for Rajasthan in 2023.
Daniel Christian - Another Australian, he has played in 6 seasons, including starting 14 games for Deccan Charger in his first time around in 2011. He is also one of the most succesful comeback players — only playing 2 for Bengaluru in 2013, before coming back to play 13 for Pune in 2017, and then another 9 for Bengaluru in 2021.
Karn Sharma - An IPL omnisicence, having played in 11 seasons, it is surprising to see him on this list! Marking his IPL debut with a sole appearance for Bengaluru in 2009, is what makes him eligible for this list, making his next appearance for Hyderabad in 2013. With an average 14 appearance in the next 3 seasons, and at least one appearance every year till 2020, he seemed set to be in a squad. But unfortunately he was left out till 2023, before coming back for Bengaluru.
Mitchell Marsh - ANOTHER Australian, is next in line, having played 8 seasons. Initially a medium pace bowling all-rounder, he is now a top order bat. His abscenses have been a result of bad form, injury, and choice.
Pradeep Sangwan - While Pradeep Sangwan’s name is always remembered with the “what if” of Virat Kohli13, he has had an IPL career that while not voluminous, is lengthy. Starting with Delhi from 2008-2010, he has plied his trade for Kolkata (2012-2013), Gujarat Lions (2016-2017), Mumbai Indians (2018), and Gujarat Titans (2022).
Sachin Baby - Being named after Sachin Tendulkar has its own pressures, especially when all it took was Tendulkar’s FC debut century as a 15 year old convince Baby’s parents. Unfortunately for Sachin Baby, his IPL career has fallen well short of his namesake, managing 19 appearances in 4 seasons spread over 9 years.
Up next
In the next piece, we will look at how often a teams change players, and how often players and teams win.
Data and analysis
The analysis was performed in python
using polars
, altair
, and marimo
. You can find the analysis files on github here.
The data used is kindly provided by cricsheet.
https://indianexpress.com/article/sports/cricket/players-still-owe-35-of-their-money-earned-from-kochi-tuskers-ipl-brad-hodge-7328578/
https://www.hindustantimes.com/cricket/chennai-super-kings-rajasthan-royals-back-in-ipl-fold-after-serving-2-year-ban/story-gxyrVAHb8iMI4qOMF5DJdK.html
https://www.sportspro.com/news/ipl-expansion-franchise-cvc-rspg-glazers-lucknow-ahmedabad-bcii/
Sort of, Delhi did also change their ownership structure slightly, selling a stake to JSW with each group running the team in 2 year cycles.
https://www.bbc.com/news/world-asia-india-29845215
https://www.espncricinfo.com/story/south-africa-to-host-ipl-396617
https://www.theguardian.com/sport/2014/mar/12/ipl-uae-kevin-pietersen-delhi-daredevils
https://www.espncricinfo.com/story/ipl-2020-in-the-uae-it-s-a-big-deal-and-here-s-why-1232598
https://www.aljazeera.com/news/2021/9/15/cricket-ipl-2021-uae-fans-stadiums-covid
https://indianexpress.com/article/sports/cricket/ipl-2022-begins-on-march-26-mumbai-pune-to-host-7789645/
https://www.espncricinfo.com/story/rcb-replace-injured-sarfaraz-khan-with-harpreet-singh-1093552
Anureet Singh, also had a good comeback season in 2015 for Punjab Kings, playing all 14 games and taking 15 wickets, while only managing 2 wickets in his second best season. We will probably run into him again, in our “one season wonders” deep dive.
Prior to the 2008, there was a draft held for India U19 players. Virat Kohli was the captain of the team, and from Delhi - and Delhi had the first pick. Delhi however wanted a fast bowler and picked Sangwan instead. Bengaluru were next, and snapped up Virat - leading to the longest player/team partnership in IPL, the only one to have played all 18 seasons for the same team!