Error message

  • Deprecated function: Return type of Aws\HandlerList::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 32 of /var/www/html/vendor/aws/aws-sdk-php/src/HandlerList.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of & Aws\Endpoint\Partition::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Aws\Credentials\Credentials implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in include() (line 8 of /var/www/html/vendor/aws/aws-sdk-php/src/Credentials/Credentials.php).
  • Deprecated function: Return type of Aws\Command::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of & Aws\Command::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Result::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of & Aws\Result::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Warning: Undefined array key "nid" in views_handler_field_term_node_tid->pre_render() (line 98 of /var/www/html/docroot/sites/all/modules/views/modules/taxonomy/views_handler_field_term_node_tid.inc).
  • Warning: Undefined array key "nid" in views_handler_field_term_node_tid->pre_render() (line 98 of /var/www/html/docroot/sites/all/modules/views/modules/taxonomy/views_handler_field_term_node_tid.inc).
×

News

Why MLS Expansion Fees Are So Damn High But Also Kind Of A Great Deal

Major League Soccer announced Charlotte as Major League Soccer’s 30th club on Tuesday. Awarded to Carolina Panthers owner David Tepper, the team will begin play in 2021.

In 2020, Inter Miami and Nashville SC will boost MLS to 26 teams. Austin FC will also join in 2021 followed by St. Louis and Sacramento in 2022. 

More surprising than MLS revealing yet another new franchise — the third such announcement this year — is the price Charlotte is reportedly paying to join the league. 

According to multiple outlets, Tepper ponied up $325 million to start the new MLS franchise, far more than any club has ever paid. 

And that number is somewhat justified. 

Kind of. 

Maybe.

The cost of entry to MLS has increased exponentially in the last decade. In 2007, Toronto FC paid a mere $10 million to join the league. David Beckham got a steal with his predetermined $25 million expansion fee for Inter Miami but otherwise the price of admission has skyrocketed.

NYCFC paid $100 million to enter the league in 2015. MLS charged FC Cincinnati (2019), Nashville (2020) and Austin FC (2021) each $150 million. St. Louis and Sacramento, both announced earlier this year, had MLS expansion fees of $200 million apiece.

So why is the MLS expansion fee so high? Why are owners willing to pay this much to join the league? And, most importantly, is this a good thing for the league?

Why Are MLS Expansion Fees So High?

First, let’s examine why the MLS expansion fees have exploded over the last decade. 

Major League Soccer is a single-entity league, wherein every team is owned by the league. The league has a $90 million broadcast rights package and MLS average attendance ranks third among U.S. sports behind only the NFL and MLB. 

In 2019, the average MLS club was valued at $313 million, according to Forbes, up 30 percent year-over-year. Atlanta United led the rankings, valued at $500 million; Colorado Rapids were last at $190 million. (Values do not include stadiums and real estate.)

Those numbers alone suggest the value of an MLS club is high, especially if run well like Atlanta, the two LA clubs and the Sounders. 

Embed from Getty Images

But not every club is raking in money. 

By those same Forbes valuations, 16 of the league’s 24 clubs had a negative operating income in 2018. 

The easiest way for those clubs to make money, then, is sharing the spoils of MLS expansion fees. 

In 2018, MLS clubs generated about $800 million in total revenue. MLS has made half that in expansion fees in 2019 before you even add Charlotte’s reported $325 million. As a single-entity league, that’s a giant source of revenue. 

Are MLS Expansion Fees Justified?

Just because MLS can find rich folks willing to pay obscene fees to join the league doesn’t mean they’re completely justified. Do these high costs of entry make sense to the teams themselves?

In a way, yes.

If you look back at Forbes’ estimated values for clubs, the best teams will be worth more than the worst NHL teams. (The Arizona Coyotes, who I just learned five years late are no longer the Phoenix Coyotes, were valued at $300 million in 2019.) That’s not bad for a league that continues to grow at a rate higher than all others in the country. 

If someone wants to own a sports team in the U.S. right now, they can either buy an existing team — which will cost the team’s value, plus stadium costs and then some — or start their own. But the only major pro league (outside of eSports) currently expanding is Major League Soccer. The cheapest way to get a sports team in the U.S. right now then is paying whatever MLS asks for, even if it’s a third of a billion dollars.

Even back in 2016, SBNation was calling the $200 million expansion fee a bargain, and today it’s hard to argue. Owning a team isn’t about making money year to year, it’s about an investment in one of the most steady commodities in the country.

“I think it will continue to go up, and the reason for it is that there’s really a small number of teams around North America,” Steve Ryan, a former MLIS commissioner told FOX Business after the St. Louis expansion earlier this year. “In order to get into the ‘club,’ the demand is outstripping the supply now, and that’s going to force the prices to continue to go up, as it has in all of sports. The valuations on teams have, over the last four of five years, incredibly accelerated. One of the beneficiaries has been Major League Soccer.”

Charlotte’s fee of $325 million might seem like a massive increase over the last round of expansion but remember the city will become the 30th MLS franchise. There’s no guarantee the league will continue expanding after 30, a nice round number that’s proven to be good enough for the NBA, NHL and MLB. 

Of course, I don’t think MLS will stop at 30 when it can keep bringing in exorbitant expansion fees. Instead, it provides the league with an extra bargaining chip to ask for even higher fees when the next round of expansion does come. 

And if you do think MLS will stop at 30, just look what’s happened in the USL, which has just shy of two billion clubs slated for the 2020 season, if my math is right. 

Is MLS Expansion Good For The League?

The biggest question MLS should be asking itself right now is if all this expansion is actually good for the growth of the league in the long term.

Less than 20 years ago, MLS contracted two teams from the league. While soccer has grown exponentially in the U.S. since, there’s still a worry the league is expanding too much too quickly. 

Having more teams in more markets will only increase the league’s ability to produce richer broadcast contracts, which are key to growing the league and producing revenue. More teams also mean more fans, more merch, more chances for marketable moments and players.

More teams also mean spreading the pool of players incredibly thin.

Soccer is growing in the U.S. (and Canada), and developmental academies are improving at producing top talent. Will it be enough?

Currently, clubs are required to have 18-20 players on their roster, with up to 30 players including supplemental and reserve rosters. With 30 teams each supporting 30-player rosters, clubs will have to find 900 players able to play at the MLS level.

While some of those roster slots will be filled by foreigners (anyone outside the U.S. and Canada), MLS limits the number of international players allowed. In 2008, the league gave each team eight international roster slots, which are tradable. With 30 clubs, that equates to 240 foreign players, leaving 660 American- and Canadian-born players. That’s a lot of talent to find.

While the MLS roster rules are incredibly complex and convoluted (and subject to change year to year), the cost of investment to find quality MLS-caliber players will continue to increase as more teams enter the league. 

Another worry for MLS is the precedent of the NASL.

Embed from Getty Images

The North American Soccer League once brought in record crowds to watch players like Pelé and Franz Beckenbauer but came to increasingly rely on expansion fees to make money. Ultimately, costs caught up to the league and it folded, setting soccer in America back for a generation.

Could expansion bring about a similar downfall to MLS?

***

Major League Soccer’s announcement of Charlotte as the 30th team in the league means the club will become the third major sports team in the largest city in North Carolina, long a hotbed for college soccer and home to the NWSL’s best team

The city of Charlotte, which just two years ago lost hosting rights for the NBA All-Star game because of laws discriminating against the LGBTQ+ community, put forth $110 million to secure an MLS team in a city council pledge last week. Owner David Tepper is reported to have paid $325 million in MLS expansion fees. 

It may turn out to be a steal in a few years’ time.

Videos you might like