Skip to content
KLYVOPLAY

October 30, 2026 · 7 min read

What is an EPG? XMLTV and the IPTV TV guide explained

The EPG is the TV guide of your channels; XMLTV is the file format that usually carries it. How it works, how it is matched to channels, and how Klyvo Play shows it.

An EPG (Electronic Programme Guide) is the TV guide of your live channels: what is on now, what comes next and the schedule for the hours and days ahead. In IPTV, the guide is sent by your service, either with the channels themselves or as a separate file in the XMLTV format — a structured text file that lists channels and their programmes with exact start and end times. This guide explains what an EPG is, what an XMLTV file contains, how a player matches each channel to its programmes, and why a guide is sometimes empty or shifted.

Klyvo Play is a player. It does not provide any channel, film or series: you connect the service you already have and are authorized to use, with its Xtream login or its M3U link.

What is an EPG in IPTV?

On a classic TV, the guide travels with the broadcast signal. In IPTV, the channel stream and the guide are two separate things. The stream carries the picture and sound; the guide is data that says which programme runs at which time. The player brings them together on screen: the current programme under each channel, a grid of what is on, and the list of past programmes used for catch-up.

This also explains a frequent surprise: a channel can play perfectly and still show no programme. The picture comes from one place, the guide from another, and the service may simply not provide a guide for that channel.

Two ways your service delivers the guide

  • Through the Xtream API: the server answers, channel by channel, with the current and upcoming programmes (and, for catch-up, the past ones). It is quick, but often limited to a few programmes ahead — see what the Xtream Codes API is.
  • As an XMLTV link: a full guide for all channels, often reached at an address ending in xmltv.php on the same server, or a separate link given by the service. It usually covers several days.

Many services provide both. The short guide from the API fills the basics; the XMLTV link gives a fuller schedule, especially for channels the API covers poorly.

What is XMLTV? Inside the file

XMLTV is an open format based on XML, a text language made of tags. A guide file has two parts:

  • Channel entries: each channel has an identifier (the id), one or more display names, and sometimes an icon. For example, a channel tag with id="news.example" and the display name News HD.
  • Programme entries: each programme names its channel by that same id, with a start time, a stop time, a title, and often a description, a category and an episode number.

Times are written in a compact form with their offset from UTC — for example 20261030200000 +0100 means 30 October 2026 at 20:00, one hour ahead of UTC. That offset is what lets a player show the right local time anywhere. When it is wrong in the file, every programme of the channel appears shifted by the same amount — the most common cause of a guide that is “one hour off”, covered in IPTV guide showing the wrong time.

XMLTV files can be large — a guide for thousands of channels over a week can weigh tens or hundreds of megabytes — and they are often compressed (.xml.gz). That is one reason a phone or a TV stick should not have to download and read the whole file itself.

How channels are matched to their programmes

The key is the identifier. In an M3U playlist, each channel carries a tvg-id attribute; through the Xtream API, each channel has an EPG channel id. The player looks for that identifier among the channel entries of the XMLTV file and attaches the matching programmes.

  • Exact match: same identifier on both sides — the channel gets its programme.
  • No identifier, or a different one: the channel shows no programme, even if the guide contains a channel with a similar name.
  • Several channels sharing one identifier: HD, SD and backup versions of the same channel can share the same guide, which is normal.

Matching by name is possible as a fallback, but names are written in many ways (“News HD”, “NEWS FHD”, “UK: News”), so identifiers stay the reliable method.

Short guide or full XMLTV guide: which one do you need?

For zapping, the short guide from the Xtream API is often enough: you see what is on and what comes next, which is what most people check. A full XMLTV guide becomes useful when you plan your evening, browse the TV Guide for a whole category, or look for a programme that aired earlier for catch-up. It also helps when your service's panel sends incomplete data for some channels. If your service offers an XMLTV link, adding it costs nothing and makes the guide more complete — and because the Klyvo server reads it, it does not slow down your device.

How Klyvo Play shows the TV guide

  • Under each live channel: the programme on now and the next one, when your service provides a guide for that channel.
  • In the TV Guide: what is on right now across a category, with what comes next.
  • In Replay: the past programmes of a channel, when your service keeps an archive — see catch-up and timeshift explained.

The programmes come first from your service's own panel. On top of that, an XMLTV EPG link can be added to your playlist — on the customer portal with your device codes, or by your reseller when they set up the playlist. The Klyvo server then reads that guide for you, so your device does not download a huge file: a channel found in it by its guide identifier gets that programme, and a channel found only by its name gets it when the panel has nothing for it. The practical steps are in TV guide (EPG) and XMLTV link.

Klyvo Play never invents a programme. When a channel shows no information, it is because no guide was provided for it.

Why a guide can be empty, partial or shifted

  • The service sends no guide for that channel — common for less-watched channels, regional variants or event channels.
  • Identifiers do not match between the channel list and the XMLTV file.
  • The guide covers only a short period: the API gives a few programmes, and nothing after them.
  • The offset in the file is wrong, which shifts all the times of a channel.
  • The XMLTV link has expired or changed: guide links usually include your credentials and stop working with them.

Each of these is solved on the guide's side, by the service or the reseller, not in the player. The full checklist is in IPTV EPG not showing.

FAQ

Is the EPG the same as the XMLTV file? No. The EPG is the guide you see; XMLTV is one file format used to deliver it. The Xtream API can deliver part of the guide without any XMLTV file.

Where do I find my XMLTV link? Ask your service: many give one, often ending in xmltv.php. It cannot always be deduced from an M3U link.

Can I use any guide link with my channels? A guide only works if its channel identifiers match those of your playlist. Use the one your service provides for its channels.

Does Klyvo Play need the guide to play channels? No. Channels play without a guide; the guide only adds the programme information and makes catch-up easier to browse.

How often is the guide refreshed? The service updates its guide on its own schedule; Klyvo Play refreshes what it shows regularly while you watch.

Get the most out of your TV guide

The EPG turns a list of channels into television you can plan, and XMLTV is the format that carries the full guide. If your service provides a guide or an XMLTV link, Klyvo Play shows it under your channels, in the TV Guide and in Replay. Download Klyvo Play, connect your service and try the full app free for 10 days.

Try Klyvo Play

On the App Store for iPhone, iPad and Apple TV, on Google Play for Android, and for Windows. Every device starts with 10 days free.

Download the app