Crunching 70,208 deliveries
📊 Data Story · 2015–2019 · Made by Shriyans Raj

IPL by the Numbers

70,208 deliveries · 298 matches · 5 seasons analysed

"Everyone has IPL opinions. We used numbers."

🏆
Toss Winner Win Rate 0%
🎯
Toss Loser Win Rate 0%
🏏
Total Matches 0 Across 5 seasons
Peak Over Avg 0 Over 19 — the highest (Runs Per Ball)
⚡ Powerplay (Overs 1–6)
Runs
Wickets
🎯 Middle Overs (7–15)
Runs
Wickets
🔥 Death Overs (16–20)
Runs
Wickets

How the Data Pipeline Works

From raw CSV to interactive charts — here's the journey your data takes.

📄

Load CSV

Reads 17 MB of ball-by-ball delivery data spanning 2015–2019 using Pandas.

🐼

Clean & Validate

Checks all 20 required columns, coerces numeric types, and drops malformed rows.

⚙️

Compute Metrics

Aggregates 8 analytical dimensions — toss impact, phases, top performers, venues, and more.

📊

Export JSON

Writes validated results to dashboard_data.json, consumed by Chart.js in the browser.

Visual Analysis

Interactive charts powered by Chart.js, rendered from the computed metrics.

🪙 Toss Outcome vs Match Result

📈 Phase-wise Run Comparison

🏏 Top 5 Run Scorers

🎳 Top 5 Wicket Takers

🥧 Dismissal Type Breakdown

📉 Seasonal Run Trend

🏟️ Top 5 Venues by Match Count

🚀 Scoring Acceleration by Over

Franchise Leaderboard

Total match wins across all 5 seasons.

Season Spotlight

Drill into any individual season — see the champion, award winners, and key stats.

Deep Dive: Your Questions Answered

Data-backed answers to the four big IPL questions.

Q1
Do teams that win the toss actually win more matches?
⚖️
Yes, but the edge is modest. Teams that won the toss went on to win the match 54.0% of the time — 161 out of 298 matches. Losing the toss still yielded a 46.0% win rate (137 wins). That 8-percentage-point gap is statistically real, but it means nearly half the time, the team that lost the toss still won. The toss gives a tactical starting advantage — choosing to bat or bowl based on pitch/conditions — but skill and execution clearly matter far more than the coin flip.
54%
Toss Winner
46%
Toss Loser
161
Wins w/ Toss
298
Total Matches

How we computed this: The Python script de-duplicated matches by match_id, then compared each match's toss_winner to winner. Matches where they're the same count as "toss-winner wins".

Q2
Which phase impacts victory the most — Powerplay, Middle Overs, or Death Overs?
🎯
The Middle Overs (6–14) create the biggest gap. Winning teams averaged 73.70 runs in the middle phase versus 65.95 for losing teams — a gap of 7.75 runs. In comparison, the Powerplay gap was 6.52 runs (51.13 vs 44.61) and the Death Overs gap was just 2.42 runs (47.26 vs 44.84). Middle overs are where matches are truly shaped: teams that rotate strike, build partnerships, and keep the scoreboard ticking during overs 6–14 lay the foundation for victory.
7.75
Middle Gap
6.52
Powerplay Gap
2.42
Death Gap
73.70
Winner Middle Avg

How we computed this: Each delivery's over number was binned into phases (0–5 = Powerplay, 6–14 = Middle, 15–19 = Death). We summed runs per innings per phase, then averaged across matches, splitting by whether the batting team won that match.

Q3
Who are the top batters and bowlers across the five seasons?
👑
Virat Kohli leads batting; Bhuvneshwar Kumar tops bowling. Kohli amassed 2,780 runs, narrowly edging Warner at 2,743 — a gap of just 37 runs across 5 years. Behind them, Dhawan (2,351), AB de Villiers (2,338), and Rahane (2,165) complete the top 5. For bowlers, Bhuvneshwar Kumar took 89 wickets, just one more than Chahal's 88. Bumrah (75), McClenaghan (71), and Imran Tahir (70) round out the leaders. The remarkably tight margins between the top 2 in each category underscore the elite consistency needed to dominate IPL across multiple seasons.
2,780
Kohli Runs
2,743
Warner Runs
89
B Kumar Wkts
88
Chahal Wkts

How we computed this: Batting: grouped by batter, summed runs_batter. Bowling: filtered wickets to bowler-credited kinds (caught, bowled, lbw, stumped, caught and bowled, hit wicket — excluding run-outs), then grouped by bowler and counted.

Q4
What hidden patterns or surprises can you discover from the data?
🔍
Several fascinating patterns emerge:

1. The Over-19 Explosion: The average scoring rate per ball follows a distinctive U-curve across the innings, dipping from 1.43 in over 2 to 1.11 in over 6, then steadily climbing to a peak of 1.81 RPB (Runs Per Ball) in over 19 — a 63% surge from the mid-innings trough. Death over slogging is not just a feeling; the data proves it.

2. Catching is King: A staggering 62.7% of all dismissals are catches. Combined with caught-and-bowled (3.0%), nearly two-thirds of wickets fall to a fielder's hands. Bowled (16.3%) is a distant second.

3. 2018: The Run Feast: Season 2018 produced 19,901 total runs — the highest across all five seasons, roughly 1,500 more than 2015. Yet 2019 saw a slight pullback to 19,434, hinting at evolving strategies or conditions.

4. Mumbai's Dominance: Mumbai Indians led the franchise leaderboard with 44 wins, followed by Sunrisers Hyderabad (42) and KKR (39). MI's consistency made them the team to beat across the era.
1.81
Over 19 RPB (Runs Per Ball)
62.7%
Caught %
19,901
2018 Total Runs
44
MI Wins

How we discovered this: Over scoring was computed by grouping every delivery by over number and averaging runs_total. Dismissal distribution used value_counts() on wicket_kind with percentage normalisation. Season trends summed runs_total grouped by season.

Key Takeaways

  • Toss winners converted the advantage into match wins 54% of the time — a real but modest edge that proves execution trumps luck.
  • Middle overs (6–14) created the largest winner-loser gap at ~7.75 runs, making them the phase that truly separates champions from contenders.
  • V Kohli led the 5-year batting chart with 2,780 runs, while B Kumar topped wickets with 89 — both winning their races by razor-thin margins.
  • The scoring rate curve forms a distinctive U-shape: high in powerplay, dips in the middle, then rockets to 1.81 RPB (Runs Per Ball) in over 19.
  • Nearly two-thirds (62.7%) of all dismissals are catches — fielding quality is the single biggest factor in taking wickets.
  • Eden Gardens hosted the most matches (37), edging Wankhede (36), making Kolkata the unofficial IPL capital of this era.