Pakistani cricketer Shahid Afridi holds the unofficial record for the longest six in cricket history by hitting 153 meters in the third ODI against South Africa in Johannesburg on 17 March 2013.