The economist who wrote the book on sports finance has a number for FIFA’s World Cup haul: $15 billion
At soccer’s World Cup, the top scorer gets the “golden boot,” and the best goalkeeper is handed the “golden gloves.” This year’s tournament will also provide organizer FIFA with a golden opportunity to create billions in additional ticket revenues. Ticket prices are so high that even President Donald Trump, a billionaire ally of FIFA President Gianni Infantino, said he wouldn’t pay. The concern is that FIFA is pricing out many of the sport’s most devoted fans. In the 2022 Qatar-hosted World Cup, group-stage Category 1 tickets – the best seats – cost about $220, while Qatari residents could purchase tickets for $11 in some group-stage matches. Category 1 tickets to the final were about $1,600. For the 2026 World Cup, dynamic pricing, which deliberately makes pricing opaque and subject to real-time changes, is being used for the first time. It means ticket prices may vary dramatically both across games and even for a given game over time. The initial baseline for Category 1 tickets during World Cup 2026 was about $600 when they first went on sale in the fall of 2025 but now they generally sell for over $1,000 and sometimes much higher. The price for Category 1 tickets for the opening game in Mexico City is currently over $2,500, and even Category 3 tickets, the lowest available tier, are over $1,000. For the final, Category 1 tickets initially cost over $6,000 and had exceeded $32,000 by early May. As an emeritus professor of finance and author of “Keeping Score: The Economics of Big Time Sports,” I’ve done some number crunching and predict that increased ticket receipts will help FIFA exceed $15 billion in revenue this world cup cycle – which would be a record-breaker for soccer’s governing body and significantly more than its 2022 stated goal of $11 billion. (function(){function e(){window.addEventListener(`message`,function(e){if(e.data[`datawrapper-height`]!==void 0){var t=document.querySelectorAll(`iframe`);for(var n in e.data[`datawrapper-height`])for(var r=0,i;