Skip to content
Independent IPTV guides, legal use only
  • Try “firestick”, “buffering” or “EPG”

Weekly email

Get the weekly IPTV fix

One email a week with new guides, app updates worth knowing about, and fixes for whatever broke. No spam.

IPTV Basics

What Is EPG in IPTV? How the TV Guide Works

The EPG is the TV guide grid. In IPTV it comes from a separate data file that your player matches to channels, which is why it's the part most likely to break.

Sam Carter4 min read

Checked for accuracy on September 30, 2026

A close-up of a printed calendar showing weekdays and dates
Photo: rawpixel (CC0)
On this page
  1. Why IPTV handles the guide separately
  2. What an EPG file looks like
  3. How your player matches the guide to channels
  4. Where the guide link comes from
  5. What else depends on the guide
  6. How far ahead a guide goes
  7. Can you make your own EPG?
  8. Why EPGs go wrong
  9. Frequently asked questions

EPG stands for Electronic Program Guide: the TV guide grid in your player that shows what's on each channel now and next. In IPTV, the guide doesn't travel with the video. It comes as a separate data file, usually in a format called XMLTV, and your player has to download it and match it to your channels. That extra step is why the guide is the part of IPTV most likely to go wrong.

Why IPTV handles the guide separately

With an antenna or cable, programme information is broadcast alongside the channels, so the guide just appears. IPTV works differently. Your playlist is a list of stream addresses with names. It says nothing about what's on at 8 pm. So services publish a second file, the guide, and players combine the two.

Think of it like a train station: the playlist is the list of platforms, and the EPG is the timetable on the board. You can find the platform without the timetable, but you won't know what's leaving when.

What an EPG file looks like

Most IPTV guides use XMLTV, a long-established format for TV listings (XMLTV on Wikipedia). A tiny example:

<tv>
  <channel id="news.us">
    <display-name>Example News</display-name>
  </channel>
  <programme start="20261016200000 +0000" stop="20261016210000 +0000" channel="news.us">
    <title>Evening News</title>
    <desc>The day's headlines.</desc>
  </programme>
</tv>

Every programme has a start time, an end time, a title, often a description, and a channel ID. Real files hold thousands of channels and several days of programmes, which is why they're often compressed (.xml.gz) and can take a minute to process on a small streaming stick.

How your player matches the guide to channels

Each channel in your playlist carries an ID too. In an M3U playlist it's the tvg-id tag on each channel line (see M3U vs Xtream Codes for what a playlist looks like). The player takes each channel's ID, finds the same ID in the guide file, and fills in that row of the grid.

When the IDs match exactly, it just works. When the playlist says news.us and the guide says News.US or examplenews, the player can't connect them and shows "No information". This single mismatch explains most "my guide is blank on some channels" questions.

  • Xtream Codes logins usually include the guide automatically. The player fetches it from the same server.
  • M3U playlists sometimes include the guide address inside the playlist header (in a tag like url-tvg or x-tvg-url) and players can detect it. Otherwise the service gives you a separate EPG link to paste in.
  • Free and licensed apps like Pluto TV, Tubi or YouTube TV handle all of this internally. You never see a guide file.

Using a guide from a different source than your playlist is possible, but IDs rarely line up, so expect to match channels by hand.

What else depends on the guide

  • Recording: scheduled recordings start and stop by guide times. A wrong guide means a wrong recording. See recording in TiviMate.
  • Catch-up: scrolling back to past programmes relies on guide data for those times.
  • Search: finding "the match" or a show by name searches the guide.
  • Reminders: any "remind me when this starts" feature uses guide times.

How far ahead a guide goes

Most IPTV guides cover somewhere between a few days and two weeks ahead, plus a few days back for services with catch-up. Longer guides are bigger files, and on a small streaming stick that means slower updates. Many players let you limit how many days they keep, which speeds things up without losing anything you'd use.

Times in XMLTV files include a time zone offset (the +0000 in the example above). If a service's offset is wrong, or your device's time zone is, the whole guide shifts by an hour or more. Players have a time shift setting to correct it.

Can you make your own EPG?

Technically yes. XMLTV is an open, documented format, and there are tools that build guide files from listings sources. In practice it's a hobbyist project: you need a reliable source of listings for every channel and a way to keep the IDs matched to your playlist. For most people, the guide your service provides, with a few channels matched by hand, is the realistic option. If you're combining antenna channels with a media server, software like Jellyfin handles guide data for you; see IPTV in Jellyfin.

Why EPGs go wrong

  1. No guide link added to the player.
  2. The link is wrong or expired (links often contain your password, so they change when you renew).
  3. The update failed or hasn't finished.
  4. Channel IDs don't match.
  5. The device's clock or time zone is wrong, putting everything an hour out.

Step-by-step fixes for each are in IPTV EPG not working. For TiviMate specifically, see how to add EPG to TiviMate, and for IPTV Smarters, EPG in IPTV Smarters.

Frequently asked questions

What does EPG mean in IPTV?
EPG stands for Electronic Program Guide. It's the TV guide grid showing what's on each channel now and later, like the guide on a cable box.
Where does IPTV EPG data come from?
From a separate guide file, usually in XMLTV format, provided by the service. Xtream Codes logins usually supply it automatically; M3U playlists often need the guide link added separately.
What is an EPG URL?
A web address that points to the guide file, often ending in xmltv.php, .xml or .xml.gz. You paste it into your player's EPG settings so it can download the schedule.
Why is my EPG empty for some channels?
The channel IDs in your playlist don't match the IDs in the guide file, so the player can't connect them. Match those channels manually in the player, or ask the service to fix its IDs.

Found this useful? Share it.

Written by

Sam Carter

Editor

Sam edits IPTVTips and tests players on Fire TV, Google TV and Apple TV. Replace this bio with your real editor's background.

More from Sam

Add IPTVTips as a preferred source on Google

Comments

Sign in to ask a question or share what worked for you.

Sign in to comment

No comments yet. Questions about a step that didn't work for you are welcome.

Don't stop now

A man watching a brightly lit TV screen from his armchairIPTV Basics

What Is IPTV? How Internet TV Actually Works

IPTV just means TV sent over the internet. You probably use it already. Here's how it works, what you need to watch it, and the jargon decoded.

Sam Carter··5 min read