What an M3U playlist actually is
An M3U file is a plain text list of channels. Each entry has a name, usually a logo URL and a group label, and then the address of the stream itself. That is the whole format. It was designed for winamp playlists in the nineties and IPTV inherited it more or less unchanged.
Your provider gives you a single URL that returns this list. Some providers call it a playlist link, some call it an M3U line, some hand you a file ending in .m3u or .m3u8. They are the same thing for this purpose.
The important consequence: an M3U playlist carries channels and almost nothing else. It has no programme schedule in it. If you want a guide, that arrives separately as an XMLTV URL, which is why the two fields sit next to each other in every player worth using.
Adding the playlist in Momnt IPTV
Choose to add a playlist
On first launch Momnt asks how you want to connect. Choose the M3U option. If you already have a service set up, open Settings and add another — Momnt keeps several playlists at once and keeps each one’s catalogue, favourites and history separate.
Paste the playlist URL
Paste the whole address exactly as your provider sent it, including
http://orhttps://and any port number. Do not retype it by hand: these URLs frequently contain a long token, and one wrong character produces an error that looks identical to a dead server.Add the XMLTV guide URL, if you have one
This is the second field, and it is optional. If your provider supplied an EPG or XMLTV link, paste it here. Leave it empty if they did not — the channels will still play, you will simply have no schedule.
Give the playlist a name
Whatever you will recognise later. If you run more than one service this is the label you will be choosing between, so "Living room provider" beats "Playlist 1".
Save and wait for the first load
A large playlist takes a moment. Momnt fetches the list, groups the channels, matches them against the guide if you supplied one, and caches the result so subsequent launches are instant.
When the playlist loads empty or fails
Four causes account for nearly all of it, and they are quick to tell apart.
- The URL is incomplete. Copying from an email often drops the tail of a long link, or a mail client turns it into a shortened display version. Paste it into a browser first: you should get a file download or a wall of text starting
#EXTM3U. Anything else means the link is wrong before the player is involved. - The subscription is expired or maxed out. Most providers cap simultaneous connections. If another device is streaming, or the subscription lapsed, the server returns an empty list rather than a helpful error. Check your provider’s portal.
- The provider blocks non-browser requests. Some servers reject anything that does not look like a browser. There is nothing a player can do about this; it is a provider configuration and only they can change it.
- It is an Xtream Codes service, not an M3U one. If you were given a server address, a username and a password as three separate items, use the Xtream Codes option instead. It produces a far better catalogue — properly separated live, movies and series, with guide data included.
Why Xtream Codes is usually the better option
If your provider offers both, take the Xtream Codes login. An M3U playlist is a flat list, so everything the player shows has to be inferred from channel names and group labels. An Xtream Codes portal returns structured data: live channels, films and series as separate collections, with artwork, descriptions and schedule attached.
The practical difference is large. On an M3U service a film library tends to arrive as several thousand entries in one undifferentiated list. On the same provider over Xtream Codes it arrives as a browsable catalogue with posters and plot summaries.
Keeping the playlist working
- Playlist URLs expire. Many providers rotate them at renewal. If everything stops at once and the guide also disappears, the link is the first thing to check.
- Do not share the URL. It contains your credentials in the query string. Anyone who has it is using your subscription and your connection slots.
- Refresh after a provider change. If your provider adds channels, pull to refresh so the player fetches the list again rather than serving its cache.