Former Sri Lanka captain Mahela Jayawardene tops the list for most catches in ODI history. Between 1998-2015, the legendary batsman took 218 catches in 448 One Day Internationals, becoming the only player to have claimed more than 200 catches in the 50-over format.

Jayawardene’s return of 218 catches is significantly more than the tally of second-placed Ricky Ponting. The World Cup-winning Australia captain, who also happens to be the most successful ODI captain, has 160 catches to his name in 375 ODIs. During his 17 years in ODI cricket, Ponting averaged 0.43 catches per innings.

Former Indian cricket team captain, Mohammad Azharuddin sits third in the list. Azharuddin, who is the only Indian captain to have led the country in three World Cups, played 334 ODIs in his 15-year career, taking 156 catches. Another Indian in Sachin Tendulkar follows his former captain on the list. The batting legend, whose career spanned between 1989-2012 took 140 catches in 463 ODIs.

New Zealand batter Ross Taylor, who recently announced his retirement from all formats, completes the top five list for most catches in ODI history. The 37-year-old took 139 catches in 233 ODIs between 2006-2021. Amongst players with more than 100 catches in the 50-over format, Taylor has the best average of 0.6 catches per innings.

As far as the current players are concerned, Virat Kohli, who recently completed 100 catches in Test cricket, tops the chart with 132 catches in 254 ODIs and is followed by Chris Gayle with 124 catches. They are the only active players who have claimed more than 100 catches in the 50-over format and are followed by New Zealand batter Martin Guptill with 93 catches.

Most catches in ODI history

Player Span Matches Catches
Mahela Jayawardene 1998-2015 448 218
Ricky Ponting 1995-2012 375 160
Mohammad Azharuddin 1985-2000 334 156
Sachin Tendulkar 1989-2012 463 140
Ross Taylor 2006-2021 233 139

Featured photo: AFP / Ishara S. Kodikara