Skip to main content
Back to Blog
GuideJames Bennett16 August 202612 min read

M3U vs Xtream Codes — What They Are And Which To Use

A plain-English UK guide to M3U URLs and Xtream Codes — what each format actually is, how they differ, which apps support which, and how to load either one into the main IPTV players in under a minute.

If you have just paid for an IPTV subscription, the email that arrives is almost certainly written in one of two formats: an M3U URL or a set of Xtream Codes credentials. Both are legitimate, both are supported by every serious IPTV player app in the market, and both point at exactly the same channels — but they behave differently when you plug them into an app, and the difference matters more than most guides admit. This post explains what M3U and Xtream Codes actually are in plain English, how they differ from a viewer's perspective, which one to pick if your provider gives you the choice, how to load each format into the mainstream IPTV player apps, and how to fix the errors that come up most often. By the end you will understand exactly what your provider sent you and how to use it — and you will know which format to ask for next time.

What Is An M3U URL?


An M3U URL is a single long web address that points at a text file containing your entire IPTV channel line-up. When you paste that URL into an IPTV player app, the app fetches the text file, reads through it line by line, and turns each line into a channel in your channel list. The file itself is just plain text — you can open it in Notepad and it will look like a repeating pattern of channel name, category, logo URL, and stream link.


The M3U format was originally invented in the late 1990s as a simple playlist format for the WinAmp music player, and it has barely changed since. Its structure is exactly what you would design if you were asked to describe a playlist in the simplest possible way: the file starts with a header line, then for each channel it lists a metadata line (name, category, logo) followed by the actual stream URL. That is the whole format.


A typical IPTV M3U URL looks something like this:


`http://server.example.com:8080/get.php?username=your_username&password=your_password&type=m3u_plus&output=ts`


Everything after the `?` is a query string — your username, your password, and a couple of format flags. That means an M3U URL is *self-contained*: you paste it into an app once, and the app can pull the whole channel list without needing anything else. It also means the URL contains your credentials in plain text, which matters when you share it — do not paste your M3U URL into a forum post, because anyone who reads it can use it to hijack your subscription.


Every serious IPTV player supports M3U. That is the format's biggest strength — it is genuinely universal.

What Are Xtream Codes?


Xtream Codes is a different way of packaging the same information. Instead of one long URL, your provider sends you three separate values:


  • A server URL (also called the *portal*, or the *host*) — for example `http://server.example.com:8080`.
  • A username — a short login name your provider issued you.
  • A password — a password your provider issued you.

  • An IPTV player app that supports Xtream Codes takes those three values, uses them to call the provider's Xtream Codes API, and gets back a structured response containing the channel line-up, the electronic programme guide (EPG), the on-demand catalogue, and metadata like channel logos and category groupings. That API call is much richer than reading an M3U text file — the app can request just the EPG update, or just the on-demand titles, or just the channels in one category, without re-parsing a huge playlist file each time.


    Xtream Codes is named after the panel software that most IPTV providers use to manage their systems. Even though the original *Xtream Codes* company went through legal troubles some years ago, the API format it defined has become the de-facto standard for IPTV login, and virtually every IPTV panel in the market speaks it — including the panels your provider almost certainly uses. In practice, if a modern IPTV service can hand you an M3U URL, it can also hand you Xtream Codes credentials, because both come out of the same panel.

    The Honest Difference — Which One Is Better?


    Here is the plain-English comparison every UK IPTV user should know before choosing between the two formats:


  • Login effort. Xtream Codes is three fields to fill in; M3U is one field to paste. M3U wins narrowly on convenience.
  • EPG speed. Xtream Codes wins clearly. Because the app can call the API directly for the EPG, the seven-day guide loads much faster and refreshes cleanly in the background. On an M3U login, some apps re-download the entire playlist to refresh the EPG, which is slow and eats data.
  • On-demand. Xtream Codes wins. Movies and series get organised into proper libraries with metadata (poster art, year, rating). On an M3U login, the on-demand content often shows up as one giant flat list.
  • Channel-list updates. Xtream Codes wins. When your provider adds or removes channels, an Xtream Codes app pulls the update automatically. An M3U app usually needs a manual refresh, and on some apps you have to log out and log back in.
  • App compatibility. M3U wins on breadth — literally every IPTV player supports it. Xtream Codes is supported by almost every serious player but a small number of legacy apps and TV-native apps (notably Smart IPTV on Samsung and LG) only accept M3U.
  • Security. Xtream Codes is marginally safer because the credentials sit in the app's configuration rather than being visible in one shareable URL. If you screenshot your app's login screen and share it, an Xtream Codes screenshot exposes less than a raw M3U URL.
  • Portability. M3U wins if you move devices frequently — one URL you can paste anywhere. Xtream Codes needs three fields on each new device.

  • The short recommendation: if your player app supports Xtream Codes, use Xtream Codes. That is IPTV Smarters Pro, TiviMate, XCIPTV Player, GSE Smart IPTV and most other mainstream apps. If your app is M3U-only (Smart IPTV on Samsung/LG Smart TVs, VLC as a fallback, some MAG boxes), use M3U — it works just as well for daily viewing, you just lose a bit of EPG polish.


    On Cheap IPTV UK subscribers can request either format from the support team; most people ask for both so they can use Xtream Codes on their Fire Stick and M3U on their Smart TV without opening a second ticket.

    How To Load An Xtream Codes Login


    Every mainstream player accepts Xtream Codes credentials through the same three-field form. Here is exactly what to enter in the most-used players:


    IPTV Smarters Pro (Fire Stick, Android, iOS, Windows, Mac):


    1. Open the app on first launch.

    2. Tap Login with Xtream Codes API.

    3. Fill in *Any Name* (a label — usually the household member's name), *Username*, *Password*, and *URL* (the server URL including the port, e.g. `http://server.example.com:8080`).

    4. Tap Add User and wait about thirty to ninety seconds for the channel list and EPG to load.


    For a full walkthrough with screenshots of the Fire Stick sideload, the IPTV Smarters Pro UK setup guide covers each step in detail.


    TiviMate (Android TV / Fire TV):


    1. Open TiviMate → *Add Playlist* → *Enter URL*.

    2. Choose *Xtream Codes* as the source type.

    3. Enter the server URL, username and password.

    4. Give the playlist a friendly name and save.


    XCIPTV Player (Android):


    1. Open XCIPTV → *Add Server*.

    2. Enter the portal URL, username and password.

    3. Save and the app calls the API to build the channel list.


    GSE Smart IPTV (iOS / Apple TV):


    1. Open GSE → *Xtream Codes API* → *Add Xtream Codes*.

    2. Fill in name, username, password and portal URL.

    3. Save.


    Across every player the fields are named almost identically. Watch for two things: keep the `http://` prefix and the port number attached to the server URL (a common mistake is to strip them out, thinking they are optional — they are not); and paste the credentials rather than typing them, because a mistyped character is the number-one cause of “invalid credentials” errors on a Fire Stick remote.

    How To Load An M3U URL


    Loading an M3U URL is even simpler because there is only one field to fill in. Every mainstream player accepts M3U through the same *Add Playlist* flow:


    IPTV Smarters Pro:


    1. On the login screen tap Load Your Playlist or File/URL.

    2. Tap Add M3U URL.

    3. Give the playlist a name, paste the full M3U URL exactly as sent, and save.


    TiviMate:


    1. *Add Playlist* → *M3U Playlist* → paste the URL → save.


    Smart IPTV (SIPTV) on Samsung and LG:


    1. Open the Smart IPTV app on the TV, note the MAC address it shows.

    2. On a laptop or phone, open the Smart IPTV web portal (URL shown on the TV — usually `siptv.eu` or `siptv.app`).

    3. Enter the MAC address, paste the M3U URL into the *External URL* field, tick *Save on the server*, and click *Add*.

    4. Restart the app on the TV. The channel list loads.


    For the full Samsung/LG walkthrough see the Smart IPTV app guide.


    VLC (universal fallback):


    1. Open VLC → *Media* → *Open Network Stream*.

    2. Paste the M3U URL and click *Play*.


    VLC has no EPG and no proper channel list, but it will play any M3U URL — useful as a diagnostic tool when your main player refuses to load a specific stream. The IPTV player apps compared guide covers when to reach for VLC in detail.


    A note on file downloads: some providers also send an *M3U file* (`playlist.m3u` or `playlist.m3u8`) as a downloadable attachment rather than a URL. Functionally they are identical, but a file is a one-shot snapshot — if the provider adds channels later, your file will not update. Prefer the URL version if you have the choice.

    Which Format Does Each Device Prefer?


    A quick device-by-device recommendation:


  • Amazon Fire TV Stick (any model) — Xtream Codes via IPTV Smarters Pro or TiviMate.
  • Android TV boxes and Android-based Smart TVs — Xtream Codes via TiviMate Premium.
  • Samsung Smart TV (Tizen) — M3U URL via Smart IPTV. Xtream Codes is not supported by SIPTV.
  • LG Smart TV (webOS) — M3U URL via Smart IPTV.
  • iPhone / iPad — Xtream Codes via GSE Smart IPTV or Smarters Player Lite.
  • Apple TV (tvOS) — Xtream Codes via Smarters Player Lite.
  • Windows PC / Mac — Xtream Codes via IPTV Smarters Pro.
  • MAG boxes and Enigma2 boxes — a portal URL rather than either format; check the box's built-in settings menu for the *Portal* field and paste the URL your provider issued.
  • Any device as a fallback — M3U URL in VLC.

  • When in doubt, ask your provider for both formats — reputable providers hand both over without a fuss. On Cheap IPTV UK either format arrives by email within about sixty seconds of the request.

    Common M3U And Xtream Codes Errors — And How To Fix Them


    Almost every problem loading an M3U URL or Xtream Codes credentials traces back to the same handful of causes. Work through these in order before contacting support:


  • “Invalid credentials” on an Xtream Codes login — a typo in one of the three fields, ninety percent of the time. Watch for `1` vs `l`, `0` vs `O`, and check for trailing spaces from a copy-paste. Confirm the server URL includes the `http://` prefix *and* the port number.
  • “Connection failed” on either format — either the device has no internet (test another app), the device clock is wrong (fix under *Settings → Date & Time → Set Automatically*), or the subscription is not yet active. On a Fire Stick specifically, an incorrect clock breaks the secure handshake even if everything else is correct.
  • M3U URL loads but the channel list is empty — the playlist file downloaded but returned no channels. Usually because the URL points at a filter query with too narrow a category. Ask your provider to resend the M3U URL without any category filter (`&category=` parameter removed).
  • “Max Connections Reached” — you have hit the simultaneous-screen cap with other devices still logged in. Close streams on the other devices, or ask your provider to reset your active connections. On Cheap IPTV UK every plan includes five simultaneous screens.
  • Xtream Codes login works but the EPG is blank — usually clears within a couple of minutes on first launch. If it stays blank, log out, log back in, and pick *Update EPG* from the settings menu.
  • M3U URL loads but only for one day, then stops — you probably received an *M3U file* rather than an *M3U URL*, and the file was a one-shot snapshot. Ask the provider for the live URL version.
  • App keeps asking to update the playlist — Xtream Codes handles updates cleanly in the background; M3U on some apps needs a manual refresh every few weeks. Switch to Xtream Codes if the nagging is intrusive.
  • Random channels refuse to play — usually a codec mismatch on that specific stream, not a login problem. Switch the player's external player to VLC or MX Player in the app's settings and retry.

  • If you have worked through all of the above and it still will not connect, the login itself is likely the issue — ask your provider to check that the subscription is active and to resend the credentials.

    Security And Privacy Considerations


    Both M3U and Xtream Codes credentials give the holder full access to your subscription — treat them like a password. In practice this means:


  • Do not post your M3U URL or Xtream Codes credentials in a forum, Reddit thread or Facebook group. Anyone who reads them can use them to stream on your account until the provider notices the abuse and either rotates the credentials or rate-limits the login.
  • Do not screenshot the login screen with credentials visible. If you need help from support, redact the password and the last part of the M3U URL before sending the screenshot.
  • If you switch devices or change households, ask your provider to rotate your credentials. Reputable providers do this on request within a minute.
  • On unsecured Wi-Fi (a coffee shop, an airport, a rental holiday let), use a VPN. An M3U URL travelling over unencrypted Wi-Fi is visible to anyone else on that network. Every plan on Cheap IPTV UK includes a built-in VPN for exactly this reason.
  • Prefer HTTPS server URLs where the provider offers them. Some providers still issue `http://` server URLs; if `https://` works, use it — the credentials are then encrypted end-to-end.

  • None of these is unique to IPTV — they are the same habits any sensible internet user follows with any login. The point is that IPTV credentials are meaningful credentials, not throwaway config strings.

    How To Convert Between M3U And Xtream Codes


    You almost never need to convert between the two formats manually — because both come out of the same panel, your provider can regenerate either format on request in about ten seconds. That is by far the fastest and safest route: contact the provider, ask for the format you want, and paste it into the app. Do not use random online “M3U to Xtream Codes converter” websites. They ask for your credentials in plain text and there is no legitimate reason they need them.


    That said, if you already have one format and you understand what you are looking at, the mapping is trivial:


  • From Xtream Codes to M3U: the M3U URL is your server URL, plus `/get.php?username=<your_username>&password=<your_password>&type=m3u_plus&output=ts`. So `http://server.example.com:8080` with username `abc123` and password `pass456` becomes `http://server.example.com:8080/get.php?username=abc123&password=pass456&type=m3u_plus&output=ts`.
  • From M3U to Xtream Codes: read the M3U URL. The part before `/get.php` is your server URL; the value after `username=` is your username; the value after `password=` is your password. Copy those three values into the Xtream Codes login fields in your app.

  • Both conversions work because they are literally the same panel exposing the same credentials in two shapes. There is no magic — just a URL structure.

    Which Should You Ask Your Provider For?


    If you are ordering a new IPTV subscription and the provider does not automatically send both formats, here is the honest recommendation:


  • Ask for Xtream Codes if your primary device is a Fire Stick, an Android TV box, an iPhone, an iPad, a Windows PC, a Mac or an Apple TV. The EPG performance and on-demand handling are noticeably better.
  • Ask for an M3U URL as well for backup, for use on a Samsung or LG Smart TV, and for the VLC diagnostic case.
  • Ask for both up front — most reputable providers hand over both without a fuss. On Cheap IPTV UK the support team will send both formats in the same reply if you ask; it takes them thirty seconds and it saves you a second ticket the day you buy a new device.
  • Getting Started With A Reliable Subscription


    Either format is only as reliable as the IPTV service behind it. An immaculate Xtream Codes API on a provider with dead channels is still a bad subscription. If you are still choosing where to point the app, the cheap IPTV UK homepage lays out every plan with credentials landing in your inbox within about sixty seconds of payment — both Xtream Codes and M3U formats are supported, every plan works with IPTV Smarters Pro, TiviMate, Smart IPTV, GSE Smart IPTV and every mainstream player, five simultaneous screens are included on one login, a built-in VPN is thrown in, and the whole thing is protected by a 30-day money-back guarantee so you can stress-test the setup risk-free in the first week. For a plain-English cost breakdown across every plan, see the UK IPTV cost guide; for a device-by-device app recommendation, IPTV player apps compared has the one-line pick per platform. Once your credentials arrive, pick the format your player needs from the section above, and you will be watching within ten minutes.

    Ready to Start Streaming?

    Get started with Cheap IPTV today — plans from £25.99 (about £3.33/month on the two-year plan), every one backed by a 30-day money-back guarantee.

    View Subscription Plans