Xtream Codes vs M3U: Which Connection Should You Use?

Published March 28, 2026 · 7 min read

When you set up an IPTV player like TIVRA, you will typically have two ways to connect to your provider: an M3U playlist URL or Xtream Codes API credentials. Both get your channels playing, but they work differently under the hood and offer different feature sets. This guide breaks down the differences so you can choose the right one for your setup.

What Is an M3U Playlist?

An M3U playlist is a plain-text file that lists TV channels and their stream URLs. It is the simplest and most universal way to load channels into an IPTV player. The format has been around since the late 1990s and is supported by virtually every media player in existence.

When you use an M3U connection, your IPTV player downloads the entire playlist file, parses all the channel entries, and builds your channel list locally. The playlist is essentially a static document — a snapshot of what your provider offers at the time it was generated.

A typical M3U connection URL looks like this:

http://server.example.com:8080/get.php?username=user&password=pass&type=m3u_plus

For a detailed walkthrough on setting up M3U playlists, see our M3U setup guide.

What Is Xtream Codes API?

Xtream Codes API is a structured interface that IPTV providers use to deliver content to player apps. Instead of dumping everything into a single text file, the API provides separate endpoints for live channels, VOD content, series, EPG data, and account information.

When you use an Xtream Codes connection, you enter three pieces of information: a server URL, a username, and a password. The player then communicates with the server through a set of API calls to fetch categories, channels, EPG data, and stream URLs on demand.

An Xtream Codes connection uses credentials like these:

Server: http://server.example.com:8080
Username: myuser
Password: mypass

The key difference is that the API is dynamic. Instead of downloading a giant file with everything in it, the player requests only the data it needs, when it needs it. This makes the initial load faster and allows for features that M3U simply cannot support.

Feature Comparison

Feature M3U Playlist Xtream Codes API
Live TV channels Yes Yes
VOD movies Sometimes (if provider includes them) Yes, with full catalog browsing
TV series Rarely included Yes, with season/episode structure
EPG program guide Requires separate XMLTV URL Built-in, automatic
Catch-up / timeshift Not supported Supported (if provider enables it)
Channel categories Basic (from group-title attribute) Full category tree from server
Account info Not available Expiry date, max connections, status
Initial load speed Slower (downloads entire playlist) Faster (loads categories first, then on-demand)
Compatibility Universal — works with any player Requires player support for the API
Setup complexity Simple — paste one URL Simple — enter server, user, pass

When to Use M3U

M3U is the right choice when:

When to Use Xtream Codes

Xtream Codes API is the better choice when:

How to Switch Between Them in TIVRA

TIVRA supports both connection types, and you can even have multiple providers configured simultaneously — some via M3U and others via Xtream Codes. Here is how to set up or switch:

  1. Open Settings from the sidebar.
  2. Go to Content Sources.
  3. Tap Add Provider and choose either "M3U Playlist" or "Xtream Codes."
  4. Enter your credentials and save.

If you already have a provider set up via M3U and want to switch to Xtream Codes (or vice versa), you can add the new connection as a separate provider. You do not need to delete the old one first — TIVRA will let you switch between providers from the sidebar.

Note: Your favorites and custom channel arrangements are stored per provider. If you switch from M3U to Xtream Codes for the same service, you will need to re-mark your favorite channels.

Can You Use Both at the Same Time?

Yes. In TIVRA, you can add multiple providers using different connection types. This is useful if you have one provider that only offers M3U and another that provides Xtream Codes credentials. You switch between them from the sidebar menu.

Some users also add the same provider twice — once via Xtream Codes for daily use (to get EPG and VOD) and once via M3U as a fallback in case the API endpoint has issues. This is a valid approach, though most of the time one connection is sufficient.

Performance Differences

In terms of streaming quality, there is no difference. Both connection types ultimately deliver the same video streams from the same servers. The stream URL format and codec are identical regardless of how you connected.

The difference is in metadata loading. With M3U, your player downloads the entire playlist upfront, which can take 10-30 seconds for large lists (10,000+ channels). With Xtream Codes, the initial load is faster because only the category list is fetched first. Individual channel lists within categories are loaded on demand as you browse.

For daily use, once everything is loaded, the experience is essentially the same. Both connection types in TIVRA support channel favorites, category browsing, and search. The main ongoing advantage of Xtream Codes is automatic EPG updates without needing a separate XMLTV source.

The Bottom Line

If your provider offers both options, use Xtream Codes. The automatic EPG, VOD support, catch-up capability, and faster initial loading make it the superior choice for most users. The setup is equally simple — three fields instead of one URL.

If your provider only offers M3U, that is perfectly fine. M3U delivers an excellent live TV experience, and with a separately configured EPG source, you can still get full program guide data. Check our M3U setup guide for step-by-step instructions.

Try TIVRA TV

TIVRA supports both M3U playlists and Xtream Codes API. Connect your provider in under a minute.

Download for Android TV