What Is M3U?
M3U is a plain-text playlist format. The name comes from “MP3 URL” — it began as a simple way to list audio files, then became a common playlist format for streaming links. IPTV players adopted M3U because it is easy to generate, human-readable, and works with categories and metadata.
M3U File Structure
#EXTM3U
#EXTINF:-1 tvg-id="BBC1" tvg-name="BBC One" tvg-logo="https://example.com/bbc1.png" group-title="UK News",BBC One
http://example.com/bbc1/stream
#EXTINF:-1 tvg-id="CNN" tvg-name="CNN" tvg-logo="https://example.com/cnn.png" group-title="News",CNN International
http://example.com/cnn/stream
M3U Attributes Reference
| Attribute | Description | Example |
|---|---|---|
| #EXTM3U | Required header | First line |
| #EXTINF | Channel entry start | #EXTINF:-1 |
| tvg-id | EPG identifier | tvg-id="BBC1" |
| tvg-name | Display name | tvg-name="BBC One" |
| tvg-logo | Logo URL | tvg-logo="https://..." |
| group-title | Category | group-title="News" |
| -1 | Duration (-1 = live) | #EXTINF:-1 |
M3U vs M3U8
M3U8 is an M3U playlist encoded in UTF‑8. In IPTV contexts, “M3U” and “M3U8” are often used interchangeably. If special characters in channel names display incorrectly, prefer M3U8.
M3U vs Xtream Codes
M3U is a direct playlist URL. Xtream Codes is a structured API login (server + username + password) that can generate M3U playlists and provide VOD/series structure. Read the Xtream Codes guide for the full comparison.
How to Create Your Own M3U Playlist
- Create a new text file and start with
#EXTM3U. - For each channel, add an
#EXTINFline with metadata and name. - Add the stream URL on the next line.
- Save as
.m3uor.m3u8and test in your player.
Editors: Notepad++, VS Code, and any plain text editor work well.
Common M3U Errors and Fixes
| Error | Cause | Fix |
|---|---|---|
| Missing #EXTM3U | Wrong first line | Add the header as line 1 |
| No channels load | Wrong URL / blocked | Validate the URL and check HTTP status |
| EPG not matching | Wrong tvg-id | Use correct IDs for your EPG source |
| Channels in wrong group | Inconsistent group-title | Standardise group-title values |
| Logo not showing | Broken logo URL | Verify the logo URL is reachable over HTTPS |
Test Your M3U URL
Validate reachability and format before troubleshooting your player.
Open M3U URL Validator →Frequently Asked Questions
An M3U file is a plain-text playlist format that lists media stream URLs. IPTV players use M3U to load channel lists and groups.
You can open M3U files in any text editor (Notepad, VS Code) or directly in a player that supports playlists (VLC, Kodi, IPTV apps).
Providers typically give you a dashboard link, a generated M3U URL, or Xtream credentials that can generate an M3U URL.
Yes. M3U is text. You can rename channels, change groups, remove duplicates, and update logo URLs.
M3U8 is the UTF‑8 encoded version of M3U. For IPTV playlists they behave similarly and most apps support both.
Common causes are expired credentials, changed server paths, IP restrictions, or provider downtime. Use the validator to see the HTTP status and whether the response is still an M3U.