By Shamir
M3U vs Xtream Codes vs Stalker Portal: Which IPTV Format Should You Use in 2026?
When you sign up with an IPTV provider, you usually get sent one of three things: a long M3U URL, a username/password pair plus a portal address (Xtream Codes), or a portal URL plus a MAC address (Stalker Portal). Most users have no idea what the difference is — they just paste whatever they're given into whatever app they happen to be using and hope it works.
That works most of the time, but the format you choose has real consequences for stability, speed, the EPG you get, and how easy it is to switch providers. This guide breaks down each format honestly, including the tradeoffs nobody talks about.

The 30-Second Summary
| Feature | M3U | Xtream Codes | Stalker Portal | |---|---|---|---| | Setup | Paste a URL | Username + password + URL | Portal URL + MAC address | | Live channels | Yes | Yes | Yes | | VOD / Series | No (or very awkward) | Yes (with metadata) | Yes (with metadata) | | EPG | XMLTV separate URL | Built-in API | Built-in | | Catch-up | Limited | Yes | Yes | | Speed | Slowest (re-parses full file) | Fastest (paginated API) | Fast | | Switching providers | Easy | Easy | Hard (MAC-locked) | | Best for | Basic live streams, free playlists | Most paid subscriptions | Set-top-box loyalists |
If you only read one row of that table: for most people in 2026, Xtream Codes is the right choice. The rest of this article explains why, when to deviate, and what each format is actually doing under the hood.
M3U: The Lingua Franca of Streaming
M3U is the oldest of the three. At its core, an M3U file is just a plain text list of stream URLs with optional metadata for each one. Open one in TextEdit and you'll see something like:
#EXTM3U
#EXTINF:-1 tvg-id="news.us" tvg-logo="https://..." group-title="News",News Channel
http://provider.example/live/user/pass/12345.ts
#EXTINF:-1 tvg-id="sport.us" group-title="Sports",Sports Channel
http://provider.example/live/user/pass/12346.ts
That's it. Every channel is one URL, and your player loops through them. This simplicity is M3U's superpower and its weakness in equal measure.
What M3U Does Well
- Universal compatibility. Every IPTV player ever made supports M3U. Even VLC, mpv, and ffplay can open one. If you want a backup format that will work in any future app, M3U is it.
- Trivial to inspect. You can open the file, search for a channel, see what URL it points to. When troubleshooting, this is enormously useful.
- Provider-agnostic. Your M3U URL doesn't care what your provider's backend is. They could swap CDNs tomorrow and you wouldn't notice.
Tip: In Tuneline, you can paste an M3U URL and the matching XMLTV URL in the same dialog — most players make these two unrelated configuration screens, which is part of why EPG matching breaks so often on M3U.
Where M3U Falls Apart
- No native VOD or Series support. Some providers shoehorn movies into M3U as more "channels," but you lose all the metadata — no posters, no descriptions, no episode tracking. If you care about on-demand content, M3U is the wrong choice.
- EPG is a separate problem. M3U has no built-in TV guide. You need a second URL that points to an XMLTV file, and you have to map the
tvg-idof each channel to the matching XMLTV entry. When channels and EPG diverge (and they always do), nothing matches up. - Slow refresh. Your player re-downloads and re-parses the entire M3U file every time you refresh. For a provider with 20,000 channels, this means a 50 MB text file gets crunched on every update. Tuneline and a few other modern players parse M3U incrementally, but most don't.
When to use M3U
- You're using a free public playlist (e.g., the iptv-org project).
- You only care about live streams, not VOD.
- Your provider only offers M3U.
- You want a portable backup that will work in any player.
Xtream Codes: The De Facto Standard for Paid Providers
Xtream Codes started life as IPTV panel software — the back-end that providers use to manage subscribers, channels, and billing. The "Xtream Codes API" became so widely adopted that even providers who don't use the actual Xtream Codes panel implement its API for compatibility. Today, if your IPTV provider is paid and modern, they almost certainly support Xtream Codes.
Instead of one giant text file, your player talks to a JSON API. You log in once with username and password, and the player asks the server for live categories, channels, VOD, series, and EPG separately, on demand.
What Xtream Codes Does Well
- Properly structured VOD and Series. Movies have posters, plot synopses, ratings, year, and runtime. Series have seasons, episodes, and watch-progress tracking. This alone makes it worth choosing Xtream over M3U if your provider supports both.
- Built-in EPG. Your player asks the API for the program guide, channel by channel. No second URL, no XMLTV mapping problems. EPG matches the channel list automatically.
- Catch-up TV. Most Xtream-compatible providers expose a catch-up window of 1–7 days. Your player can rewind a few hours back on supported channels — a feature M3U simply can't represent. Tuneline surfaces catch-up automatically when you click an EPG entry that has already aired.
- Fast incremental refresh. Your player only fetches what you're actually viewing. Browsing the News category? It pulls news channels. The other 19,000 channels stay un-fetched until you scroll to them.
A bug I learned from, so you don't have to. The first version of Xtream support in Tuneline kept EPG state in a single in-memory cache keyed only by channel ID. That's fine for a single provider, but the moment a user had two Xtream sources where channel IDs collided, the second source would render with the first source's program guide until a refresh. The fix was trivial — invalidate the EPG cache inside the playlist-change listener — but the lesson is structural: EPG state has to be scoped per-source, not global. If your current player's guide looks wrong right after you switch sources, this is almost certainly the class of bug you're hitting.
Where Xtream Codes Falls Short
- You're locked to one provider's API. Switching providers means re-entering credentials and re-mapping favorites. (Tuneline solves this by syncing favorites to your account so they survive provider changes — most other players do not.)
- API changes can break your player overnight. When a provider tweaks their backend, an Xtream-only player can stop working until the developer ships a fix. Players that fall back to M3U on API errors are more resilient.
When to use Xtream Codes
- Your paid provider supports it (almost all do).
- You want VOD and Series with proper metadata.
- You want catch-up TV.
- You want a fast, modern UI experience.

Stalker Portal: The Set-Top-Box Standard
Stalker Portal (sometimes called Ministra) is the protocol used by MAG, Formuler, and other set-top boxes. Instead of authenticating with a username and password, your "device" presents a MAC address to the portal. The provider has registered that MAC and authorizes streaming based on it.
What Stalker Portal Does Well
- Zero typing. Once your MAC is registered, your set-top box just turns on and works. No login screens, no credentials to forget.
- Consistent EPG and metadata. Like Xtream, Stalker is API-driven, so EPG and VOD metadata come down with the channel list.
- Strong on actual hardware. If you own a real MAG or Formuler box, Stalker is the format that box was built for.
Implementation detail worth calling out: in Tuneline, the MAC is stored on the playlist record itself rather than on the device. That's deliberate — some users run two Stalker subscriptions under different MACs and want both on the same install. Players that store the MAC globally (one per install) force those users to pick, and it's a surprisingly common support ask.
Where Stalker Portal Falls Down
- MAC-locked. Your subscription is tied to one MAC. Try to use it from a second device and you'll need a second subscription — or to clone the MAC address (which most providers detect and ban for).
- Awkward to set up on phones, computers, and most modern players. Players that support Stalker have to emulate a set-top box, including spoofing the MAC. Some providers consider this a violation of terms.
- Sliding into legacy. New providers prioritize Xtream Codes. Stalker is increasingly the format you only use because you bought a MAG box five years ago.
When to use Stalker Portal
- You own a MAG, Formuler, or similar set-top box and the provider is set up around it.
- Your provider only offers Stalker.
- You don't need to use the subscription on multiple devices.

Practical Rules of Thumb
After helping users move between formats during Tuneline's beta, here are the rules I follow:
- If your provider offers Xtream Codes, use Xtream Codes. It's the format the rest of the ecosystem is converging on.
- Always keep an M3U URL as a backup. When the Xtream API breaks, you can keep watching live by switching to M3U.
- Avoid Stalker if you stream from phones, computers, or browsers. It was built for set-top boxes and only feels right on them.
- Test the same provider in two formats. Some providers have a buggy Xtream backend but a rock-solid M3U export. The only way to know is to try.
- A good IPTV player should support all three. Tuneline, TiviMate, IPTV Smarters, and OTT Navigator all do. If a player only supports one, that's a flexibility tax you'll eventually pay.
Frequently Asked Questions
Can I convert an Xtream Codes login to an M3U URL?
Yes. Almost every Xtream-compatible panel exposes an M3U export at a URL like:
http://your-provider.com:port/get.php?username=USER&password=PASS&type=m3u_plus&output=ts
This gives you the same channels as the Xtream login, but as a plain M3U. Useful as a backup or for players that don't speak Xtream natively.
Is M3U safer or more "private" than Xtream Codes?
No. All three formats stream the same video over the same protocols. Privacy comes from your network choices (VPN, DNS), not from the playlist format.
Why does my EPG match in one format but not the other?
EPG matching depends on a tvg-id (M3U) or a server-side channel ID (Xtream/Stalker). If your provider's M3U export ships incorrect or missing tvg-id values, the EPG can't link up. Xtream and Stalker pull EPG from the same backend that serves the channel list, so the linkage is automatic — which is why EPG "just works" more often on those formats.
Does Tuneline support all three formats?
Yes. You can mix and match: an Xtream Codes provider, a free M3U public playlist, and a Stalker portal can all live side-by-side in the source switcher, and you can flip between them without re-entering credentials each time.
The Bottom Line
For most people in 2026, the right answer is Xtream Codes for your main paid subscription, with an M3U export saved as a backup. Stalker only makes sense if you've committed to set-top-box hardware. M3U-only is fine for free public playlists and as a fallback, but it's a cramped experience for VOD and EPG.
Whichever format you end up on, pick a player that doesn't lock you into a single backend. Tuneline reads all three natively and keeps your favorites and watch history portable across devices and providers, so the format underneath is something you can change without losing everything you've built up.