Blog

M3U vs Xtream Codes: which one to use.

Most IPTV providers offer both: a long M3U link and a server address with a username and password. They usually lead to the same channels. The difference is how the player gets everything around them.

Published

The short answer

If your provider gives you an Xtream login, use it. The player gets the program guide, catch-up, films and series from the provider without a second URL, and can show when the subscription runs out. Use M3U when it is the only thing you were sent, or when the playlist is one you built or exported yourself.

What an M3U playlist is

An M3U playlist is a text file. Each channel is two lines: one starting with #EXTINF that carries its name, logo, group and guide ID, and one with the stream address. The provider builds the whole file and the player downloads it every time it refreshes.

The program guide is a separate XMLTV file. Some playlists name it in their first line, as url-tvg or x-tvg-url, but players differ on whether they read it, so most ask for the guide URL in a field of its own.

What an Xtream Codes login is

Xtream Codes began as panel software for running an IPTV service. The original service went offline in 2019, but its API lives on in the panels most providers use, and the login format kept the name. It is three things: a server address, often with a port such as :8080, a username and a password.

Instead of one big file, the player asks the panel for what it needs: the live categories, the channels in each, the guide from xmltv.php, the films and series, and the account’s own details.

Often the same account

The M3U link most providers send is generated by the same panel. It usually looks like this:

http://example.tv:8080/get.php?username=alex&password=s3cret&type=m3u_plus

That is an Xtream login written as one URL: the server is everything before /get.php, and the username and password are right there in the query. When you paste a link like this as an M3U playlist, Spectati reads the account out of it and talks to the panel directly, so the guide, catch-up and on-demand catalogue work just as they would with the login typed in.

What changes in practice

The program guide

An Xtream panel serves its own guide, and Spectati fills in the address while you type the login. A plain M3U playlist needs its XMLTV address pasted into EPG URL. The XMLTV guide setup covers channels that still show no programmes.

Catch-up

Xtream marks a channel with an archive as tv_archive. An M3U playlist marks it with catchup, catchup-source, catchup-days or timeshift attributes, and only when the provider writes them. Catch-up comes with a Spectati subscription either way.

Films and series

An Xtream panel lists films and series as their own catalogue, with plots, cast and episodes by season. An M3U playlist mixes them in with the channels. Spectati sorts out the entries the provider marks as films and series and groups episodes into shows, with less information to go on.

Your account

An Xtream panel reports when the subscription expires and how many streams it allows. Spectati shows both on the provider’s page, and when every allowed stream is already playing on another device it says so.

When M3U is the right choice

  • The provider sends only an M3U link, or a link that does not contain a username and password.
  • The playlist comes from a tool you run yourself, such as a TV tuner or a playlist editor, rather than from a provider panel.
  • You trimmed or merged a playlist by hand and want the player to use exactly that file.
  • A channel needs its own headers, such as a user agent or a referrer. Spectati honours #EXTVLCOPT and #KODIPROP lines written into the playlist.

Both carry your password

A get.php link has the username and password in plain sight, so anyone who has the link has the account. Treat it like a password: keep it out of screenshots, forum posts and shared notes. If it leaks, ask the provider to reset the password, which changes the link too.

Common questions, answered.

Asking something else about your setup? Get in touch.

Is Xtream Codes better than M3U?

For a provider account, usually yes. An Xtream login lets the player ask the provider for the guide, catch-up, films, series and account details as they are needed, where an M3U playlist is one file with everything in it and the guide supplied separately. If the provider only sends an M3U link, or the playlist is one you made yourself, M3U is the one to use.

Can I turn an M3U link into an Xtream login?

If the link contains username= and password= values, yes. The server is everything before /get.php, and the username and password are the two values in the link. Spectati does this on its own when you paste such a link as an M3U playlist.

Do I need an EPG URL with Xtream?

No. An Xtream panel serves its own guide at xmltv.php, and Spectati fills it in from the login. An M3U playlist needs the XMLTV address pasted into its EPG URL field.

Is Xtream Codes legal?

Xtream Codes is a login format, not a service. Licensed and unlicensed providers both use panels that speak it, so the format says nothing about whether a provider has the rights to what it streams. Spectati supplies no channels, playlists or accounts.

What is the JSON option next to M3U and Xtream?

A channel list published as JSON rather than as an M3U file. Some self-hosted tools and providers offer one. Choose it only when the provider says the address is a JSON list.

Paste whichever one your provider sent.

Spectati is free on Apple TV, iPhone, iPad and Mac. It takes M3U, Xtream and JSON, and on Apple TV you can type the details on your phone instead of with the remote.

Download freeDownload on the App Store

Also on Apple TV, iPad and Mac

Requires tvOS, iOS, iPadOS or macOS 26