Anatomy of a typical IPTV M3U link
Many IPTV services generate playlist links in this common pattern, used by servers built on the Xtream Codes API:
http://example-server.tv:8080/get.php?username=YOURNAME&password=YOURPASS&type=m3u_plus&output=ts
| Part | Example | What it does |
|---|---|---|
| Protocol | http:// | How the app connects. Some servers use https://. |
| Server | example-server.tv | The server that holds your channel list |
| Port | :8080 | The door on that server. If the provider gave you one, it must be included. |
| Path | /get.php | The server page that builds playlists |
| Username and password | username=…&password=… | Your account, in plain text |
| Type | type=m3u_plus | How detailed the list is |
| Output | output=ts | The stream format for every channel |
Not every service uses this exact pattern. Some give a short link that redirects to the full playlist, and some use a file hosted elsewhere. The principles are the same.
The options that change what you get
type: m3u or m3u_plus
- m3u_plus returns the extended list: each channel comes with its group (for example, “News” or “Sport”), a logo and a TV guide ID. Choose this for almost every app.
- m3u returns a simpler list without most of those extras. It’s only useful for very basic players or devices that struggle with large files.
output: ts or m3u8
- ts delivers each channel as an MPEG transport stream: one continuous stream per channel.
- m3u8 (sometimes written
hls) delivers each channel as HLS: short segments listed in a small playlist that keeps updating.
Which is better depends on your provider and device. Our HLS vs MPEG-TS guide explains the trade-offs. If channels buffer or won’t start, switching between the two is one of the first things to try.
Common mistakes that break a link
- Missing port. Without
:8080(or whatever port you were given), the request goes to the wrong door. - Copying errors. One changed character in a long link makes it fail. Copy links from a phone or computer rather than retyping them on a TV.
- Spaces or line breaks pasted in with the link.
- An old link after the provider changed server. Ask for the current one.
If your app shows an error when loading the link, the playlist not working guide goes through each message.
Turning a server login into an M3U link
If you have an Xtream Codes login (server, username and password) but your app only accepts an M3U link, you can often build the link yourself from those three details. Xtream Codes to M3U shows how, and when it won’t work.
