EPG Editor & Generator — Match M3U to XMLTV EPG Online
Match M3U channels to XMLTV EPG, fix tvg-id tags, and load program guides in your IPTV player.
What exactly is EPG?
A quick refresher before you set anything up — so the troubleshooting makes sense later.
Electronic Program Guide (EPG) is the on-screen TV schedule your IPTV player shows when you press the Guide button. It lists what's playing now, next, and over the coming days, plus episode descriptions and air times. The IPTV ecosystem typically delivers EPG via an XML-based format called XMLTV (file extensions .xml, .xml.gz, or via URL).
A working EPG needs three things to line up:
- An XMLTV source — a URL (or downloaded file) that lists programs for every channel.
- Channels in your M3U playlist with a
tvg-id="…"attribute that exactly matches the channel id inside the XMLTV. - Your IPTV player configured to read both the M3U playlist and the XMLTV URL.
Most "No EPG" issues come from a tvg-id mismatch. Your channel might be called "BBC One HD" in your playlist while the XMLTV calls it bbcone.uk. Without that match, the player has no way to link the two.
That's where automatic matchers come in — they scan your M3U for channels lacking proper tvg-id, search popular XMLTV sources for likely matches by channel name, country, and language, then write the correct tvg-id back into your playlist. The result: open your IPTV player, press Guide, and see a full program schedule on every channel.
Some XMLTV providers offer regional bundles (UK, US, MENA, Pakistan, India), others cover the world. Pick a source that matches the countries in your playlist — there's no benefit to loading a 50 MB worldwide guide when your playlist is 80% UK channels.
Three EPG tools, one workflow
Cover the whole pipeline: find a source, match your channels, sanity-check the result.
Auto EPG Matcher
Upload your M3U. We scan it for channels with missing or wrong tvg-id, then auto-match them against the largest free XMLTV source library by name, country, and language. You download a corrected M3U where every channel has a tvg-id an IPTV player can actually use.
EPG source library
Curated list of free, working XMLTV URLs organised by country and language. Skip the 30-minute Google search — we keep links fresh and remove dead ones. Most sources are auto-refreshed daily by their maintainers.
Free for everyoneEPG validator
Got an XMLTV URL? Paste it in and we'll check whether it's reachable, properly formatted, fresh, and how many channels and programmes it actually carries. Saves you from "my guide is empty" surprises after setup.
Free for everyoneTrusted XMLTV sources
Tested by the IPTV community. We don't host or proxy these — links go straight to the source.
Always check each provider's terms before redistributing. Some sources are best-effort and may go down without notice — keep a backup region URL handy.
Add EPG to your IPTV playlist in 5 steps
Works in any modern IPTV player. Examples below for TiviMate, IPTV Smarters Pro, and Perfect Player.
-
Pick an EPG source for your region
Choose an XMLTV URL that covers the countries in your playlist. Browse our curated source library below, or paste a custom URL from your IPTV provider. Copy the full URL — usually ending in .xml or .xml.gz — to your clipboard.
-
Make sure your channels have a matching tvg-id
Open your M3U file in a text editor. Every #EXTINF line should look like #EXTINF:-1 tvg-id="bbcone.uk" tvg-name="BBC One",BBC One. If many channels are missing tvg-id, run Auto EPG Matcher first — it scans your M3U and writes the right tvg-id values back into your playlist.
-
Add the EPG URL to your IPTV player
Each player has its own settings location. TiviMate: Settings → Playlists → EPG → Add Source. IPTV Smarters Pro: Settings → External Player Settings → EPG URL. Perfect Player: Settings → General → EPG → URL. Xtream UI panel: EPG/XMLTV section of the admin panel.
- TiviMate: Settings → Playlists → EPG → Add Source → paste URL.
- IPTV Smarters Pro: Settings → External Player Settings → EPG URL → paste.
- Perfect Player: Settings → General → EPG → URL → paste.
- Xtream UI panel: EPG/XMLTV section of the admin panel.
-
Refresh the guide and wait briefly
Most players auto-refresh on app launch. Force a manual refresh from the EPG settings if needed. Large XMLTV files (multi-country, GZ-compressed, 30+ MB) can take 30 seconds to two minutes to parse, especially on Android TV boxes with limited RAM.
-
Verify it actually works
Press the Guide button on your remote. You should see program titles, start/end times, and descriptions on every channel. Channels with no guide rows are tvg-id mismatches — re-run Auto EPG Matcher on those rows and re-import.
Common EPG questions
Eight years of IPTV reseller and end-user support condensed into 8 answers.
What is tvg-id and why does it matter?
Why does my IPTV player show "No EPG" or an empty guide?
How do I find the right EPG for my country?
What is the difference between XMLTV and EPG?
Can I generate custom EPG from scratch?
Do you store my EPG URL on your server?
How often does EPG data update?
Can I use multiple EPG sources at the same time?
How do I get EPG from an M3U file?
Is XMLTV output free to use?
Free EPG matcher, free XMLTV library
Sign up free, get 100 credits, and try the EPG Matcher with no card on file.