Free EPG editor guide

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.

✓ Free XMLTV source list ✓ Auto tvg-id matching ✓ Works with every IPTV player
Background

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:

  1. An XMLTV source — a URL (or downloaded file) that lists programs for every channel.
  2. Channels in your M3U playlist with a tvg-id="…" attribute that exactly matches the channel id inside the XMLTV.
  3. 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.

Our tools

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.

Premium · free during launch

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 everyone

EPG 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 everyone
Free sources

Trusted XMLTV sources

Tested by the IPTV community. We don't host or proxy these — links go straight to the source.

epg.pw
Global · many countries · daily refresh
iptv-org / epg
Open-source on GitHub · per-country XMLTV
iptvx.one
Regional XMLTV · multiple delivery formats
epg.51zmt.top:8000
Asia-focused · China, HK, TW, JP coverage
PK / India bundles
Community-maintained · PTV, Geo, ARY, Zee, Sony
Custom XMLTV URL
Paste any compatible source from your provider

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.

Setup guide

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.

  1. 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.

  2. 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.

  3. 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.
  4. 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.

  5. 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.

FAQ

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?
The tvg-id attribute on each #EXTINF line is how your IPTV player links a channel to its TV guide entry. Without a tvg-id (or with a wrong one), the player has no way to look up what is playing on that channel. tvg-id values are case-sensitive and must match exactly the channel identifier inside the XMLTV file you load.
Why does my IPTV player show "No EPG" or an empty guide?
Three common causes: (1) wrong or missing tvg-id values in your playlist, (2) the XMLTV source URL is unreachable, stale, or returning an HTML error page, (3) you haven't actually added the EPG URL in your player's settings. Run our EPG Validator to confirm the URL is alive, then use Auto EPG Matcher to fix tvg-id issues.
How do I find the right EPG for my country?
Browse the curated source library on this page — sources are tagged by region and language. The iptv-org/epg open-source project also hosts community-maintained XMLTV files for nearly every country, updated daily. Pick a source that matches the timezone and language your channels actually broadcast in to avoid weird show-time offsets.
What is the difference between XMLTV and EPG?
EPG is the concept — "Electronic Program Guide", the schedule you see when you press the Guide button. XMLTV is the standard technical file format used to deliver that EPG data: an XML file listing channels, program titles, start/end times, descriptions, and category metadata. The IPTV ecosystem standardised on XMLTV years ago, so almost every player accepts it.
Can I generate custom EPG from scratch?
Yes, advanced users build their own XMLTV by scraping HTML schedules from broadcaster sites, but it's fragile work. We don't currently offer XMLTV generation as a tool — but our EPG Validator will sanity-check any XMLTV you do produce, flagging malformed XML, missing programmes, or timezone errors.
Do you store my EPG URL on your server?
Only for the brief moments we run the Auto EPG Matcher or Validator. We don't persist URLs after the response is sent back to your browser. Your tvg-id mappings are saved only if you opt in to Cloud Hosting for your edited M3U.
How often does EPG data update?
Reputable XMLTV sources refresh once or twice a day, typically overnight in their timezone. True real-time EPG feeds are rare in the IPTV ecosystem. If a program ends sooner than the guide says, that's usually a broadcaster running an unscheduled change — not the EPG being wrong.
Can I use multiple EPG sources at the same time?
Most IPTV players accept only one XMLTV URL per playlist. The clean workaround is to merge multiple sources into one XML file (some hosts let you do this server-side; otherwise you can merge with a script). Most users never need multiple sources — picking one good source for your region usually covers 95% of channels.
How do I get EPG from an M3U file?
Upload or open your M3U in our EPG Matcher tool (dashboard) so channels receive correct tvg-id values, then add an XMLTV URL in your IPTV player. The player joins playlist rows to the guide using matching tvg-id strings.
Is XMLTV output free to use?
Educational sources and setup on this page are free. Auto-matching and validation may use credits for very large playlists — check the tool card on the dashboard for current limits.

Free EPG matcher, free XMLTV library

Sign up free, get 100 credits, and try the EPG Matcher with no card on file.