Barcelona and Argentina forward Lionel Messi is the world’s highest paid athlete, earning $127m in the past 12 months, according to the Forbestop 100 rankings.
Juventus’s Portugal forward Cristiano Ronaldo is second on $109m, with Paris St-Germain’s Brazil forward Neymar in third on $105m.
Last year’s highest earner, boxer Floyd Mayweather, has dropped off the list.
Serena Williams is the only woman in the top 100, earning $29.2m.
Five-time Formula 1 world champion Lewis Hamilton and former heavyweight world champion Anthony Joshua are the highest-earning British athletes, sitting at 13th on $55m.
The American business magazine calculated the athletes’ earnings by adding up their prize money, salaries, and endorsements between June 2018 and June 2019.
The top 100 includes athletes from 25 countries and their $4bn (£3,1bn) combined earnings are up five per cent from the previous year when Mayweather was first with $285m.
The American boxer’s only fight since August 2017 was an exhibition boxing bout against Japanese kickboxerTenshinNasukawa in December.
Athletes had to earn a minimum of $25m to make this year’s list.
Messi is only the second footballer to top the rankings after Ronaldo, and only the eighth different athlete to take the number one spot since the rankings began in 1990.
It is also the first time that footballers have ranked as the top three earners in sports.