Step 1 — Load files

Click to choose or drag & drop

.m3u, .m3u8, .txt

Click to choose or drag & drop

.txt — one ID per line
Step 2 — Select country EPG source IDs

Hold Ctrl / Cmd to select multiple countries

This URL is embedded in your exported M3U as url-tvg

Only needed when using the dropdown country sources

Step 3 — Process & assign
Load an M3U file to see channels here
Step 4 — Export

    

This tool assigns EPG IDs (tvg-id) to your M3U channels so that your IPTV player can match each channel to the correct TV guide data. Without a tvg-id, the player has no way to know which schedule belongs to which channel — even if your playlist has an EPG URL set. This page lets you auto-match, manually assign, and export a corrected M3U file.

1. Load files

Upload your M3U or M3U8 playlist file — this is the file whose channels you want to assign EPG IDs to. Then, optionally, provide a list of EPG IDs to match against. You have two ways to do this:

  • Upload a custom EPG IDs file — a plain .txt file with one EPG ID per line (e.g. your own curated list of IDs from your EPG provider).
  • Paste IDs manually — type or paste EPG IDs directly into the text area, one per line. Useful if you only need to assign a handful of specific IDs.

If you skip the custom ID file/paste entirely, that's fine — you can use the country sources in Step 2 instead. The Strip all existing tvg-ids button (visible after loading) removes every existing tvg-id from all channels so you can start fresh with clean assignments.

2. Select country EPG source IDs

Instead of (or in addition to) a custom ID file, you can pull EPG IDs directly from pre-built country sources. Select one or more countries or providers from the list — hold Ctrl / Cmd to select multiple — then click Load selected country IDs. This fetches all known EPG IDs for those regions and makes them available for matching.

  • The selected source URL is also embedded into your exported M3U as the url-tvg header attribute, so your player knows where to fetch the actual EPG schedule from.
  • Select ALL to load the broadest possible ID pool — useful if your playlist has channels from multiple regions.
  • For faster, more accurate matching, pick only the countries relevant to your channels.

3. Process & assign

Click Process M3U file to parse your playlist and display all channels. Then click Auto-assign EPG IDs to let the tool attempt fuzzy-matching each channel name against the loaded ID list. After auto-assign runs:

  • Use the ✓ Matched / ✗ Unmatched / ⊘ ID Removed filter buttons to focus on channels that still need attention.
  • Use the search box to find a specific channel by name or current EPG ID.
  • Use the Filter by group dropdown to work on one category at a time.
  • Click any channel row to manually type or change its EPG ID. You can also clear it entirely to remove the tvg-id from that channel.
  • Use Assign visible channels to group to bulk-move all currently visible channels into an existing group, or create a new one with New group.

4. Export

Set a filename (no need to add .m3u) and click Generate M3U to build the output. The preview area shows the raw playlist text. Use Download to save it as a file, or Copy to copy it to your clipboard. The exported file preserves all your original channel data and replaces only the tvg-id values with your new assignments.

  • A tvg-id must exactly match an ID in your EPG source file for the player to display guide data — auto-assign uses fuzzy matching, so always check unmatched channels manually.
  • If your channels already have tvg-id values but they're wrong or outdated, use Strip all existing tvg-ids first to clear them before re-assigning.
  • You can use both a custom ID file and a country source at the same time — the tool merges them into one pool for matching.
  • The url-tvg embedded in the export header tells your player where to download the EPG schedule. Make sure the country source you selected actually covers your channels, otherwise the player will download the guide but find no matches.