There have been 58 centuries scored in the 12 seasons of the IPL - ranging from Chris Gayle's 175 not out to Virat Kohli's 100 - and 20 five-wicket hauls. However, all runs scored and wickets taken in cricket are not the same: a five-wicket haul might include the wickets of three tailenders, taken when the match was already in the bag. So how does one pick out the performances that were the most impactful?

Enter Smart Stats, a set of metrics developed by ESPNcricinfo, which takes into account the context of each batting and bowling performance in calculating the impact.

Based on these impact values, let us look at the top batting and bowling displays in IPL history, and the most impactful match performances in all 12 editions of the tournament.

Top bowling performances
The most impactful bowling performance in IPL history was Lungi Ngidi's 4 for 10 for the Chennai Super Kings against the Kings XI Punjab in the 2018 season, which had a total bowling impact of 185.85. In a match where the average run rate was 7.97, Ngidi conceded only 2.5 runs per over. He bowled three overs in the Powerplay, dismissing Chris Gayle for a duck and KL Rahul for 7, and then returned in the 18th over to take a couple of lower-order wickets, which did not greatly affect his smart wickets value of 4.74, because he dismissed two top-class batsmen early in their innings. His Smart Economy rate was in the negative: -2.68, which is reflective of the number of runs he saved for his team.

A couple of performances from the knockout games feature in the top five, though they came in defeats: Dhawal Kulkarni's 4 for 11 for the Gujarat Lions in the 2016 qualifiers against the Royal Challengers Bangalore, and Anil Kumble's 4 for 16 versus Deccan Chargers in the 2009 final. The top five performances are all four-wicket hauls.

ALSO READ: Smart Stats: Why David Warner topped Virat Kohli in IPL 2016

Top batting performances
The top two individual scores in the IPL are also the top batting performances, in terms of batting impacts. They are also the only innings with impact scores of over 300: Gayle's unbeaten 175 in 2013 had a score of 373.33, and Brendon McCullum's 158 not out in the first ever IPL match in 2008 scored 343.02.

The next best is David Warner's 126 off 59 against a high-quality Kolkata Knight Riders attack in 2017. He was clearly superior to the other batsmen in the match. While Warner scored his runs at a strike rate of 213.55, the other batsmen across both teams managed a strike rate of just 127.62.

In fourth and fifth positions are two hundreds by explosive batsmen but scored under different circumstances. AB de Villiers' 129 not out against the Lions in 2016 came off just 52 balls, at a strike rate of 248.07; at the other end, Kohli scored 109 off 55. The two added 229 for the second wicket, which remains the highest partnership in IPL history. Virender Sehwag's 119 off 56 against the Deccan Chargers in 2011, on the other hand, came in a chase of 176 in an innings where the next highest score was 17.

ALSO READ: Andre Russell, the IPL's most destructive, impactful and valuable player

Top match performances
The top two slots here go to the two best batting performances in IPL history: the unbeaten hundreds by Gayle and McCullum were so special that no all-round or bowling performance has matched it. In third place is Chris Morris' all-round performance of 2 for 35 in four overs and 82 not out off 32 balls for the Daredevils against the Lions in 2016. He dismissed McCullum and Suresh Raina, and then, coming in at 57 for 4 in the 11th over in a chase of 173, Morris nearly took the Daredevils home, partnering with JP Duminy to add 87 off 21 balls.

Gayle the batsman takes top spot, but Gayle the allrounder comes in at No. 4. Against the Kings XI in 2011, Gayle smashed 107 off 49 to lift the Royal Challengers to 205, and then, not satisfied with the carnage he had inflicted with bat, also chipped in figures of 3 for 21 in four overs. It remains the only instance of a player scoring a century and taking three or more wickets in an IPL match. Another all-round performance comes in at No. 5: Yuvraj Singh's 83 off 38 and 4 for 35 against the Rajasthan Royals in 2014. There have only been five instances of a player making a 50-plus score and taking three or more wickets in IPL history; Yuvraj features twice.

Best innings of 10 or fewer balls
These are the innings which define the specialists in this format: a handful of deliveries at the crease is enough for these batsmen to change the complexion of the game completely. Only one such innings has a batting impact score of more than 100: Morris' incredible 38 off 9 for Daredevils against Rising Pune Supergiants in the 2017 season. Morris struck four fours and three sixes off those nine balls. In second place is Rashid Khan's 10-ball 34 in the second qualifier in 2018, a knock which helped Sunrisers add 40 runs in the last 13 balls of their innings. Those runs proved to be vital, as they eventually won by just 16 runs.