One Day International (ODI) cricket has seen many flamboyant batters emerge over the years. With the demand for a higher scoring rate compared to Tests, many swashbuckling cricketers have taken on the mantle to provide the impetus with their six-hitting abilities. 

Former Pakistan cricket team captain Shahid Afridi holds the record for hitting the most sixes in the ODIs with 351 sixes

West Indies' Chris Gayle, Sri Lanka's Sanath Jayasuriya, England’s Eoin Morgan, South Africa’s AB de Villiers, New Zealand’s Brendon McCullum and legendary Indian cricketers Rohit Sharma, MS DhoniSachin Tendulkar and Sourav Ganguly feature in the top 10 list for most sixes in ODI cricket.

Most sixes in ODI

Player Matches Innings Sixes Runs Average  SR
Shahid Afridi 398 369 351 8064 23.57 117.00
Chris Gayle 301 294 331 10480 37.83 87.19
Rohit Sharma 241 234 273 9782 48.91 89.89
Sanath Jayasuriya 445 433 270 13430 32.36 91.20
MS Dhoni 350 297 229 10773 50.57 87.56
Eoin Morgan 246 228 220 7701 39.69 91.25
AB de Villiers 228 218 204 9577 53.50 101.09
Brendon McCullum 260 228 200 6083 30.41 96.37
Sachin Tendulkar 463 452 195 18426 44.83 86.23
Sourav Ganguly 311 300 190 11363 41.02 73.70

Shahid Afridi - 351 sixes in ODI cricket

Considered to be one of the most destructive cricketers that have graced the sport, Shahid ‘Boom Boom’ Afridi smashed 351 maximums in 398 matches between 1996 and 2015. 

Apart from Pakistan, the swashbuckling batter also featured for Asia XI and ICC XI. Afridi amassed 8,064 ODI runs in 369 innings at a strike rate of 117 with six hundreds and 39 fifties to his name.

Chris Gayle - 331 sixes in ODI cricket

Second on the list for most sixes in ODI is former West Indies opening batter Chris Gayle. Having made his ODI debut in 1999 against India, the self-proclaimed ‘Universe Boss’ clobbered 331 sixes in 301 matches.

Gayle also played for ICC XI and aggregated 10,480 runs in 294 ODI innings at an average of 37.83. He made 25 tons and 54 half-centuries during his ODI career.

Rohit Sharma - 273 sixes in ODI cricket

India's charismatic opener Rohit Sharma is third on the list for most sixes in ODI. The Indian captain has hit 273 sixes in 241 matches since 2007. Rohit has accumulated 9,782 ODI runs in 234 innings. He has slammed 30 tons in ODIs, the third-most centuries in One Day International cricket.

Meanwhile, Sanath Jayasuriya and MS Dhoni complete the top five list for most sixes in ODI. Jayasuriya has smashed 270 sixes in 445 matches while Dhoni hammered 229 sixes in 350 matches.

While Jayasuriya has scored 13,430 runs in 433 innings, Dhoni amassed 10,773 runs in 297 innings in 50-over cricket.


Photo credits: WILLIAM WEST / AFP