EPG time shift: fix XMLTV time zone offsets
Open an XMLTV guide (.xml or .xml.gz) to move every programme by a number of hours, replace a wrong time zone offset, or rewrite it in another offset. Then download the corrected guide. Free, works on 100 MB+ files.
Runs entirely in your browser. The guide is never uploaded; only the start and stop times are changed.
How XMLTV writes time
Every programme in an XMLTV guide has a start and a stop attribute such as
20261113180000 +0100: year, month, day, hour, minute and second, then the offset from UTC. That one means
18:00 on 13 November 2026 in a zone one hour ahead of UTC, which is 17:00 UTC. A player converts it to the TV's own time zone, so a guide
with correct offsets shows the right times anywhere. When no offset is written, the XMLTV format means UTC.
Guides go wrong in two common ways. Some are built with local clock times but labelled +0000, so every
programme lands hours away from where it should. Others carry the right offset for winter only, and drift an hour when daylight saving time starts.
Open the file in the EPG viewer first: it lists the offsets a guide
uses and shows each channel's schedule as written and in your time zone, which tells you which kind of problem you have.
The three modes, with one programme
| Mode | Before | After | Moment in UTC |
|---|---|---|---|
| Move later by 1 h | 20261113180000 +0000 | 20261113190000 +0000 | 18:00 → 19:00 |
| Replace offset with +0100 | 20261113180000 +0000 | 20261113180000 +0100 | 18:00 → 17:00 |
| Convert to +0100 | 20261113180000 +0000 | 20261113190000 +0100 | 18:00 → 18:00 |
"Move" and "Replace" both change when a programme airs; "Convert" never does. If the TV shows programmes one hour late, move them earlier by one hour. If the clock times in the file match your local listings but the offset is wrong, replace the offset with your zone's offset.
Finding the right number
- Pick a channel you know and a programme with a fixed start, such as an evening news bulletin.
- Note when it really starts in your time zone, and when your player's guide shows it.
- The difference is your shift. Shown at 20:00 but really on at 19:00: move every programme earlier by 1 hour.
- Check a second channel from the same guide. If it is off by a different amount, the guide mixes sources, and one fixed shift will not fix both.
Before shifting, check the TV itself. If the TV or box has the wrong time zone, every guide will look wrong by the same amount, and the fix belongs in the device's date and time settings, not in the guide. Most players also follow the device's time zone when they show the guide.
Daylight saving time
Offsets in XMLTV are fixed numbers, not time zone names, so a guide has to change its offsets when the clocks change: +0000 in winter and +0100 in summer for the UK, for example. A guide that keeps one offset all year is right for half of it. A shifted file has the same limit: the new values are fixed too. If your guide is regenerated every day, a player setting for the guide offset, or a better guide source, lasts longer than a file you fix once.
What stays the same
Only the values of start and stop change. Channel ids, names, titles,
descriptions, categories, images and the order of the file are copied byte for byte, so the result works anywhere the original did. Times
without seconds (12 digits) stay 12 digits. The page counts every value it rewrites and shows the first few, before and after, so you can check
the change before you use the file. The file you get has the same name with "-shifted" added, so it never replaces the original, and you can
run it again with a different setting if the first try was not right.
If channels have no guide at all rather than the wrong times, the cause is usually the playlist's tvg-id: see the EPG mapper and how to fix an empty TV guide.
Questions
Is my guide file uploaded anywhere?
Which mode do I need?
Why is my guide off by one hour only part of the year?
Can I shift just one channel?
How do I use the corrected file?
Can it open .xml.gz guides?
Watch it on your TV
IPFlix Pro Player for Android TV, Google TV and Fire TV offers your playlist's EPG during setup and shows it in a TV Guide grid and a now/next info bar.
- Install IPFlix on the TV and open Add Playlist.
- Scan the QR code on the TV with your phone.
- On the phone, paste your provider's M3U link or type the Xtream login.
7-day free trial with everything unlocked, counted from your first playlist. IPFlix does not provide channels or content.
More free tools
- M3U playlist checker Find broken entries, duplicates and missing tvg-id; match an EPG
- M3U editor Keep or drop groups, rename, remove duplicates, merge two files
- M3U to CSV Channel list for Excel or Sheets: name, group, tvg-id, logo
- Xtream Codes to M3U converter Build the M3U and EPG links from a login, or read a link back
- EPG / XMLTV viewer Browse a guide file by channel and day, .xml or .xml.gz
- EPG mapper Suggest the tvg-id for each channel from a guide, with a confidence score
- M3U8 / HLS parser Variants, bitrates, resolutions, codecs and segments of an HLS playlist
- Internet speed for IPTV Mbps and data per hour by quality, codec and number of TVs
All tools run in your browser. Nothing you open or type is uploaded. See all free IPTV tools