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).
×

Entertainment

Breaking Down The Metric Shit Ton Of Soccer Streaming Services To Save You A Couple Bucks (And 5 Hours Of Research)

Every year it seems like there are more and more soccer streaming services to sort through, as cable companies push content for the beautiful game behind paywalls. From the Champions League to the Premier League, it’s more vital than ever to open up your wallet to supplement a cable TV subscription with a multitude of soccer streaming services. So what are the best soccer streaming services out there? Read on for our 2020-21 guide for how to stream soccer in the U.S.

Last year, we produced a guide of the best soccer streaming services, ranked based on value. Unfortunately, we can’t just rehash that guide as many TV rights have switched around, notably the Champions League and Bundesliga. What follows is first a breakdown of where you can find each league’s matches — in English and Spanish — and second our ratings of the best soccer streaming services so you can decide for yourself to which you feel the need to subscribe.

How To Watch/Stream Soccer In The U.S. (2020-2021)

Here’s a quick rundown on where you can find every major league on both TV and streaming services. 

The biggest changes from last year are the Champions League moving to CBS (and mostly Paramount+), Peacock taking a larger role in NBC’s broadcasts of the Premier League and the Bundesliga switching from Fox to ESPN+. This means the only soccer Fox currently has TV rights to is certain MLS matches and the occasional USMNT and USWNT matches. And yes, finally, Fox Soccer Match Pass has been retired after existing for no apparent reason for the last couple years. Plus, there is no reason anyone should still be subscribed to the failed B/R Live (though it does still exist, we’re ignoring it here because it provides nothing of value).

Best Soccer Streaming Services By League

UEFA Champions League

  • TV Channels: CBS, CBS Sports, Univision, TUDN, UniMás, Galavisión
  • Streaming Services: Paramount+, TUDN

Premier League

  • TV Channels: NBC, NBCSN, Telemundo, Universo
  • Streaming Services: Peacock

LaLiga

  • TV Channels: beIN SPORTS
  • Streaming Services: beIN SPORTS Connect

Serie A

  • TV Channels: None (an occasional match on ESPN, ESPN2 or ESPNews)
  • Streaming Services: ESPN+

Bundesliga

  • TV Channels: None (an occasional match on ESPN, ESPN2 or ESPNews)
  • Streaming Services: ESPN+

Ligue 1

  • TV Channels: beIN SPORTS (mostly for PSG)
  • Streaming Services: beIN SPORTS Connect

National Women’s Soccer League

  • TV Channels: CBS, CBS Sports
  • Streaming Services: Paramount+, Twitch

Major League Soccer

  • TV Channels: ESPN, Fox, Univision, TUDN, various local channels
  • Streaming Services: ESPN+, Twitter

USMNT/USWNT

  • TV Channels: ESPN, ESPN2, FOX, FS1, FS2
  • Streaming Services: None

Liga MX

  • TV Channels: TUDN, Telemundo, Univision, UniMás, ESPN Deportes, Fox Deportes
  • Streaming Services: TUDN

UEFA Women’s Champions League

  • TV Channels: None
  • Streaming Services: Paramount+

FA Women’s Super League

  • TV Channels: NBCSN (often on tape delay)
  • Streaming Services: NBCSports.com, FA Player

USL Championship

  • TV Channels: None (rarely on ESPN2, ESPNews)
  • Streaming Services: ESPN+

EFL Championship

  • TV Channels: None
  • Streaming Services: ESPN+ (select matches)

Euro 2020 (2021) and UEFA Nations League

  • TV Channels: ESPN, ESPN2, ESPNews
  • Streaming Services: ESPN+

Best Soccer Streaming Services In The U.S. (2020-2021)

OK, so with the major options listed, now you have to decide which is worth it. Below we’ve rated the best choices for soccer streaming services. At the bottom you’ll see our final guide on how we feel is best to spend your money on soccer this season.

ESPN+

  • What It Provides: MLS, Bundesliga, Serie A, USL, UEFA Nations League and more
  • Cost: $5.99 per month, $49.99 per year (bundles available)
  • Value: A+

If you want the most variety, most matches and most bang for your buck, ESPN+ cannot be beat. 

ESPN+ features every out-of-market MLS match, most Serie A and Bundesliga matches (everything but the occasional match ESPN airs on its cable channels) and more: USL, EFL Championship, League One, League Two, FA Cup, League Cup, Coppa Italia, Supercoppa Italiana, Eredivisie, Danish Superliga, Chinese Super League, Indian Super League, Australian A-League, Sweden’s Allsvenskan, UEFA Nations League and UEFA qualifiers. There is also a considerable amount of content for other sports that are not soccer, if that interests you.

If that’s not enough, it only costs $5.99 per month. While the monthly price went up a dollar from last year, the annual subscription price is still $49.99. Or, if you like Hulu and Disney+, there’s a great bundle to put all three of these services together for $13 per month. 

ESPN+ loses some points though for being associated with ESPN.com/soccer, which after years of ignoring the Bundesliga has decided it’s the “funnest” league in the world now that it’s on the ESPN family of networks.

Best Soccer Streaming Services

Screenshot of ESPN's home page just before the start of the 2020-21 Bundesliga season after years of ignoring the German league.

Paramount+

  • What It Provides: NWSL, UEFA Champions League, UEFA Women’s Champions League
  • Cost: $5.99 per month ($9.99 without ads), $59.99 per year ($99.99 without ads)
  • Value: B-

CBS swooped in to become the official broadcaster of the NWSL earlier this year and made CBS All Access necessary to watch the NWSL Challenge Cup this summer. Additionally, CBS obtained the Champions League TV rights in the middle of the season, becoming the new home for the competition (on the men’s and women’s sides). In March 2021, the company rebranded its streaming service to Paramount+.

While we hate that CBS is putting almost all of its soccer products behind the paywall of Paramount+, we’ve been mostly impressed with the quality of broadcasts CBS has put out so far. If you want to watch the Champions League (and who doesn’t?), you’ll probably need to subscribe to Paramount+, which almost makes it a mandatory purchase, unless you’re content with whatever scraps make it to CBS Sports Network (the end of the 2020 campaign featured just a handful of matches on the cable TV channel). 

Without meaningful NWSL matches until at least 2021, Paramount+ subscribers at least can watch the Women’s Champions League, which has been nearly impossible to find (legally) in the U.S. for some time. Add in loads of other CBS content (Jordan Peele’s Twilight Zone is worth checking out) and it’s not an awful value, but not all that great from a soccer perspective.

Peacock Premium

  • What It Provides: 175 Premier League matches, replays of every EPL match on delay
  • Cost: $4.99 per month, $49.99 per year
  • Value: C+

There’s some good and some bad when it comes to streaming the Premier League this season, as we discussed in length here. The good news is that NBC Sports Gold is gone, replaced by Peacock, which costs about the same but provides much more. The bad news is that NBC will be putting more matches behind the Peacock Premium pay wall at the expense of showing matches on NBCSN.

If you’re not a Premier League fan, you can completely pass on this offering. While Peacock has some additional shows to watch — who doesn’t want to binge all 11 seasons of Frasier? — there isn’t much that really stands out. But if you’re a big fan of the Prem, this is a must-buy, as many of this season’s biggest matches won’t be on TV this season.

fuboTV

  • What It Provides: Live cable TV with beIN SPORTS (select Premier League, Serie A, Bundesliga, LaLiga, Ligue 1, Champions League, NWSL, MLS and international matches)
  • Cost: $59.99 per month (other options available)
  • Value: A

If you just want one subscription, there’s no doubt fuboTV is the way to go. In terms of a live cable TV subscription, no one beats fuboTV for its soccer offerings, which include the ESPN family of networks, the Fox channels, Telemundo/Universo, Univision/TUDN family of networks and — crucially — beIN SPORTS, which is almost impossible to find elsewhere. 

Many cord-cutting cable offerings (such as YouTube TV and Hulu Live TV) do not offer both the Telemundo and Univision networks (usually it’s one or the other), but fuboTV does. This means you can watch most of the Champions league and Europa League via fuboTV — assuming you don’t mind watching in Spanish without the extra charge for Paramount+. Additionally, with beIN SPORTS, fuboTV is your best bet if you want to watch Lionel Messi and LaLiga (not to mention the occasional Ligue 1 match for PSG fans). 

While fuboTV is far more expensive than the other offerings, it also provides live TV from most basic cable channels and some locals depending on your area. You can pay a little more to get additional channels or more DVR space/simultaneous streams. 

Fanatiz

  • What It Provides: Copa Libertadores, Copa Sudamericana, first divisions for Spain, France, Portugal Argentina, Colombia, Turkey, Ecuador, beIN SPORTS, GolTV
  • Cost: $7.99 per month, $79 per year
  • Value: C

Fanatiz is far less known than the other offerings on this list, mostly because it focuses on less popular leagues. But if you’re a fan of South American soccer, Fanatiz is a great way to go. Plus, it’s a cheaper option for beIN SPORTS than fuboTV. Viewers can also watch matches on demand after they air, which is a nice perk. 

Unfortunately, outside of a few niche leagues and South America’s version of the Champions League and Europa League, there’s not a ton available for $8 per month.

YouTube TV/Hulu Live TV/Sling TV/Other Cord-Cutting Services

  • What It Provides: Live cable TV (select Premier League, Serie A, Bundesliga, Champions League, NWSL, MLS and international matches)
  • Cost: $30-65 per month
  • Value: B

While there are plenty of soccer streaming services out there, most soccer fans will still need some sort of basic cable subscription to watch the best matches — especially USMNT and USWNT games, which typically aren’t available otherwise. For that reason, we’ve listed a couple of our favorite live TV streaming services: YouTube TV, Hulu Live TV and Sling TV.

As we mentioned above, from a soccer perspective, fuboTV is your best bet for a live TV streaming service, which includes beIN SPORTS. But YouTube TV and Hulu Live TV both have their perks. YouTube TV ($65), for one, has an unlimited DVR (saved for up to a year), while Hulu’s offering ($55) includes Hulu’s significant library of TV shows and movies. Sling TV ($30) is the cheapest offering, with the ability to pick and choose what you want to pay for (which was supposed to be the point of cord-cutting until YouTube took over and jacked up its prices). 

Best Soccer Streaming Services 2020-2021 Summary

tl;dr

We suggest subscribing to, in order: a basic cable subscription (preferably fuboTV), ESPN+, Paramount+ and then Peacock, based on the value and live soccer offered by each. Only the most devoted need subscribe to Fanatiz.

Soccer fans in the U.S. will want a live cable TV subscription if they want to watch the best games live. We suggest fuboTV but YouTube TV, Hulu Live TV and Sling TV are also viable options. Next, it depends on what you value most. 

If you’re a huge fan Newcastle United and not much else, you’ll want Peacock Premium to catch all of the Magpies’ games, knowing you won’t be missing out on European matches. Likewise, if you just want to watch Cristiano Ronaldo in Serie A, you’ll need to subscribe to ESPN+ but also Paramount+ for the Champions League, with no need for Peacock.

There are, unfortunately, far too many options. While we’re in a golden age in soccer available on TV (just 10 years ago we could barely even watch the Premier League), the strain on our wallets has never been so high, and during a global pandemic no less. If you want to watch the Premier League, Champions League, LaLiga, Serie A, Bundesliga, MLS, NWSL and the USWNT/USMNT, you’ll have to pay at least $77 per month for four different streaming services. Tack on Netflix and Amazon Prime (which both have good soccer content too), and you’re near $100 per month. 

Such are the times in which we live, when we’re forced to stay in our homes to halt the spread of the pandemic, which has damaged the livelihoods for all but the wealthiest Americans, and pay huge sums to watch the beautiful game. 

But at least we can watch it at all.

Videos you might like