Skip to content

An IPTV TV Guide Can Be Right for Me and 3 Hours Off for You

Your IPTV TV guide is a separate XMLTV file matched by tvg-id and stored in UTC. Why rows go blank, why times slip, and how to test the grid in a day.

Updated August 2026

An IPTV TV Guide Can Be Right for Me and 3 Hours Off for You

An IPTV TV guide is XMLTV data your player downloads separately from the channel list, then matches row by row. Program times inside that file are written in UTC with an offset, and your app converts them using the device clock, which is why the same guide can read correctly in one household and three hours out in…

An IPTV TV guide is XMLTV data your player downloads separately from the channel list, then matches row by row. Program times inside that file are written in UTC with an offset, and your app converts them using the device clock, which is why the same guide can read correctly in one household and three hours out in another. IP4KTV supplies guide data alongside 54,000+ live channels, and a $5 24-hour trial is long enough to watch the grid fill.

PR

Priya Raghavan

Head of Infrastructure

features · 8 min read · Updated 2026-08-08

The numbers

What the figures actually say

2: M3U channel list plus XMLTV guide
Files involved
tvg-id exact, case and space sensitive
Match rule
~18,000 visible channels
Player ceiling
$5 trial, 24 hours
Time to test

In detail

Where guides break

What is an IPTV TV guide actually made of?

Two files, not one. The channel list arrives as an M3U, and the guide arrives as a separate XMLTV file the player fetches on its own schedule. Every line in the M3U carries a tvg-id, every program block in the XMLTV file carries a channel id, and the player matches those two strings exactly. The comparison is case-sensitive and whitespace-sensitive, with no normalization applied, so one stray character leaves that single channel reading no information while every other row fills in. This is why a grid can look broken on eight channels and perfect on the rest. The repair is a corrected identifier or a better-matched guide source, never a faster connection.

Why does my IPTV TV guide show the wrong times?

Times inside XMLTV are stored in UTC with an offset, and the player converts them to local time using your device clock. Two distinct failures follow. An error of exactly one hour is almost always daylight saving: either the file was generated with a stale rule, or the device clock is pinned to the wrong zone by hand. An error of several hours usually means the file omitted its offset, so the player reads UTC as if it were local time. Set the device timezone to automatic, return any EPG time offset inside the app to zero, then reload the guide. Change one variable per test or you will not learn which one mattered.

How far ahead should the grid go, and what feeds catch-up?

Broadcast-embedded guides commonly carry seven to fourteen days, and some terrestrial receivers cannot look more than about sixteen hours ahead because the listings ride inside the transmission itself. An internet-delivered guide has no such ceiling; its window is whatever the data source publishes, typically a few days forward and a day or two back. The backward window is the one people forget to check, because catch-up playback reads from it. If yesterday evening is missing from the grid, catch-up has nothing to point at even where the recordings exist. Scroll the grid in both directions on the first day, not at the moment you want to rewind something you missed.

Why does a huge channel list make the guide sluggish?

Player apps hold the visible channel list and its guide rows in memory together. Above roughly 18,000 visible channels most players start to stutter, take a long time to open the grid, or drop guide data entirely. Catalog size is not the problem; the count of rows you leave switched on is. Hide the country and category groups nobody in the house watches, keep the visible list in the low thousands, and the grid opens quickly again. A guide refresh also pulls a large file, so schedule it overnight where the app allows it rather than letting it run against your line while somebody is watching a live stream.

How do you check the guide before paying for a year?

Load the service on the device you actually watch on, then run three checks in order. First, open three different channel groups and note whether guide rows are missing across a whole group or scattered across individual channels; a whole group points at the data source, scattered gaps point at identifiers. Second, compare one program start time against the real clock to catch a timezone or daylight saving offset. Third, scroll backward to confirm catch-up has data behind it. IP4KTV activation runs about 5 minutes and the trial is $5 for 24 hours, which covers all three checks with time to spare. Shopping for IPTV with TV guide data included is reasonable, but included is not the same as accurate, so verify it rather than trust the feature list.

Step by step

  1. 1

    Pick a player that accepts a separate guide source

    TiviMate, IPTV Smarters and Kodi all let you attach XMLTV data independently of the channel list. Some players accept more than one guide source per playlist, which is useful when one source covers your local channels better than another.

    Tip · Set the app language and region before the first guide load so times render in your own format.

  2. 2

    Add the channel list first

    Enter the Xtream Codes login or the M3U URL and let the channel list finish downloading. Confirm channels play before you touch guide settings, so you are not debugging two layers at once.

  3. 3

    Attach the XMLTV guide URL

    Paste the guide URL into the EPG field rather than assuming the playlist carries listings. Save it, then leave the app open while the first fetch completes.

  4. 4

    Set the device clock to automatic

    Automatic network time removes the most common cause of a grid that is exactly one hour out. While you are there, set any EPG time offset inside the app back to zero.

    Tip · If the grid is still one hour off after both changes, the source file has a daylight saving fault, not your device.

  5. 5

    Force a guide refresh and wait it out

    A full XMLTV file is large and can take several minutes on a first load. Interrupting the fetch is a frequent cause of half-populated grids that look like a data problem.

  6. 6

    Hide the groups nobody watches

    Trim the visible list well below the point where players get unstable. Fewer visible rows means a faster grid, quicker guide refreshes and less memory pressure on a low-power stick.

  7. 7

    Spot-check three groups and both directions

    Open three unrelated groups, compare one start time with the clock, then scroll back a day to confirm catch-up has listings behind it. Do this on day one while a refund window is still open.

Verified service facts

Confirmed

HDR and resolution are separate display and content capabilities — a device or a specific app on that device can support high resolution without supporting HDR, or the reverse, and both the source and the full playback chain need to support HDR for it to actually apply.

Confirmed

Streaming in a higher resolution demands more bandwidth per stream, which is a network requirement distinct from connection count — a 1-connection plan streaming in 4K needs more bandwidth than a 1-connection plan streaming in 1080p, even though both use exactly one connection slot.

Confirmed

Each step up in resolution tier requires meaningfully more bandwidth to maintain equivalent quality, which is why an adaptive stream drops to a lower resolution automatically when available bandwidth can't sustain the higher tier.

Questions

An IPTV TV Guide Can Be Right for Me and 3 Hours Off for You — questions people ask

Why do some channels show no information while others are fine?
The tvg-id on those channels does not match any channel id in the guide file. Matching is exact, case-sensitive and sensitive to stray spaces, and nothing normalizes the two strings before comparison, so a single wrong character blanks one row without touching the others. Because the failure is per channel, a partly empty grid is normal evidence of an identifier mismatch rather than a broken subscription. Adding a second guide source that covers those channels, or having the identifiers corrected, is what resolves it.
My guide is exactly one hour out. What causes that?
Daylight saving, in one of two places. Either the XMLTV file was generated with the wrong rule for your region, or your device clock is set manually and did not follow the change. Start with the device: switch the clock to automatic network time and set any EPG offset in the app to zero, then reload the guide. If it is still one hour out after that, the fault sits in the source data and no local setting will correct it. An error of several hours instead points at a missing offset in the file.
Does the guide need its own bandwidth while I watch?
Only during a refresh, but the refresh is not trivial. A full XMLTV file for a large catalog can run to tens of megabytes and takes several minutes to download and parse. If that lands while you are watching a 4K stream at 15-25 Mbps on a modest line, you can see a short stall that has nothing to do with the stream itself. Schedule the refresh overnight where your player supports it, and let a first-time load finish before you start browsing.
How far back and forward should listings run?
Forward, a few days is normal for an internet-delivered guide, and broadcast guides commonly carry seven to fourteen days. Backward matters just as much because catch-up playback reads from the past portion of the grid. If the grid stops at this morning, there is nothing for catch-up to reference even where the recordings exist upstream. Check both directions on the first day. It takes a minute and it tells you whether the catch-up feature you are paying attention to will actually work.
Will hiding channel groups delete anything?
No. Hiding groups changes what your player renders, not what your account carries. The catalog stays at 54,000+ live channels; you simply stop asking one app to hold all of it in memory at once. Most players get unstable somewhere above roughly 18,000 visible channels, which shows up as slow grid opening, stuttering navigation and missing guide rows. Cutting the visible list to the groups your household watches is the single most effective performance change available in the app.
Can I test the guide before committing to a plan?
Yes, and the guide is one of the things worth testing early. The $5 24-hour trial is enough to attach the guide source, let a full refresh complete, and run the three checks: group coverage, start-time accuracy and the backward window. Plans carry a 7-day money-back window with the trial excluded. Activation takes about 5 minutes, nothing auto-renews and no card is stored, so a test does not turn into a subscription by default.

Where guides break

A missing guide is nearly always one of three things: identifiers that do not match, a clock conversion, or a refresh that never finished. None of them is a bandwidth problem, and all three are visible within an hour of setup. Check group coverage, one start time and the backward window before your refund window closes.

See the grid fill on your own device

Take the $5 24-hour trial or the 12-month plan at $10 a month, attach the guide source, and run the three checks. Activation takes about 5 minutes.

PR

Editor’s pick

Picked by Priya Raghavan · Head of Infrastructure

I attach the guide source and force a full refresh before I judge anything else about a service, because a grid that fills correctly on the first try tells you the data behind the channel list is maintained.

Need Help?