Playlist IPTV playlist

M3U

A text file with no video in it, and the thing an IPTV subscription actually is.

In short

An M3U is a plain-text list of media addresses with names attached. It contains no audio or video whatsoever. When an IPTV provider sells you a subscription, what you receive is a link to one of these — a list of channel names, logos, groups and stream addresses that a player turns into a channel guide.

30 July 2026

Opened without help by

iPhone · iPad Refuses
Mac Refuses
FoxDL Opens

Nothing in iOS or macOS reads an M3U as a playlist. Tapping one shows a wall of text. It is not a media format and no system was ever going to treat it as one — it needs an app that understands what the list is *for*.

The facts

Full name MP3 URL, or Moving Picture Experts Group Audio Layer 3 Uniform Resource Locator
Kind Playlist — a list of addresses, no media
Extensions .m3u (any text encoding), .m3u8 (UTF-8)
Published Late 1990s, by Fraunhofer for Winamp; never formally standardised
Structure A #EXTINF line naming each entry, followed by its address
IPTV extensions tvg-id, tvg-name, tvg-logo, group-title — added by convention, not by a specification
What the addresses point at Usually HLS playlists or MPEG-TS streams; sometimes plain files
Typical provider size A few hundred KB to well over 200 MB for lists in the hundreds of thousands of channels

A list of names and addresses

The format is about as simple as a format gets. Each entry is two lines: one starting with #EXTINF that names the thing, and one with the address it lives at. Everything else — logos, channel numbers, the groups that become categories in a player — arrived later as attributes people agreed to put on the #EXTINF line. No standards body ever ratified any of it.

That informality is why M3U files vary so much. One provider writes group-title="Sports", another writes group-title="SPOR", a third leaves it out entirely and expects the player to guess. A player that handles IPTV well is mostly a player that has met a lot of badly written M3U files.

The confusion with M3U8 is worth clearing up: the 8 refers to UTF-8 text encoding, nothing more. Every HLS playlist is an M3U8, but not every M3U8 is HLS — an IPTV channel list saved as UTF-8 is also an .m3u8 and has nothing to do with segmented streaming.

Why size is the whole problem

Provider lists have grown in a way the format never anticipated. A file that was a few hundred lines in 2010 is now, from a large provider, hundreds of thousands of entries and hundreds of megabytes of text.

The naive way to read one — load the file into memory, parse it, hold the result — falls over long before that. Parsing a 200 MB list that way means a memory spike an iPhone will not tolerate, and iOS ends the app rather than waiting. This is why so many IPTV apps simply crash on a large provider.

The approach that works is to never hold the list at all: read it from disk in pieces, write each channel straight into a database as it is parsed, and then page the screen from that database. FoxDL was measured against a 485 MB list of two million channels — 123 seconds to import, 9 MB of extra memory, 4 milliseconds to draw the first page, 400 milliseconds to search the whole list. The numbers are only interesting because the naive approach cannot produce them at all.

Using one

  1. Add it as a URL, not as a file

    Providers update their lists — channels move, addresses rotate. A player holding the URL can refresh; a player holding a copy you downloaded once is out of date the first time anything changes.

  2. Expect the groups to be a mess and use search

    Category names come from the provider and follow no convention. On a large list, searching for a channel is faster than navigating to it, provided the app searches the database rather than a loaded array.

  3. Know that the list is not the content

    An M3U is addresses. Whether those addresses are legal to watch is a question about the provider, not about the file or the player. No app ships channels, and none can vouch for a list you supply.

The long version M3U, Xtream Codes, EPG: what the words mean and which one you have M3U or Xtream, what an EPG needs to work, what causes buffering, and who can fix it.

Questions about this format

Where these facts come from

Nearby formats

Your library, finally in one place.

Free to download. No account, no sign-up, nothing to hand over.

Download on the App Store