An Electronic Programme Guide, usually called an EPG, makes IPTV easier to navigate by showing programme titles, schedules, descriptions, and upcoming broadcasts.
When the guide works correctly, viewers can see what is currently playing and what will be shown later. When it fails, channels may display “No information,” show the wrong programme, use incorrect times, or remain completely empty.
These problems are often caused by mismatched channel identifiers, an outdated XMLTV source, incorrect time-zone settings, or inconsistent channel names. This guide explains how IPTV EPG systems work and how to diagnose the most common programme-guide problems.
Quick Answer: Why Is My IPTV EPG Not Working?
An IPTV EPG may fail because:
- the XMLTV URL is incorrect or unavailable;
- the playlist uses the wrong tvg-id;
- channel names do not match the EPG database;
- the guide has not refreshed;
- the device time zone is incorrect;
- the EPG source does not cover the selected channel;
- the application cache contains outdated data;
- multiple EPG sources are conflicting;
- the IPTV player does not fully support the supplied guide format.
Start by confirming that the EPG address opens correctly. Then compare the playlist’s tvg-id values with the <channel id=””> entries inside the XMLTV file.
What Is an IPTV EPG?
An IPTV EPG is a structured programme schedule linked to the channels in a playlist.
The guide may include:
- programme names;
- start and end times;
- episode information;
- programme descriptions;
- categories;
- channel logos;
- ratings;
- catch-up availability.
Most EPG systems use XMLTV, a format designed to organise television schedule data.
An XMLTV file normally contains channel definitions followed by programme entries.
A simplified channel entry may look like this:
<channel id=”ExampleChannel.fr”> <display-name>Example Channel</display-name> </channel>
A related programme entry may look like this:
<programme start=”20260801190000 +0200″ stop=”20260801200000 +0200″ channel=”ExampleChannel.fr”> <title>Evening News</title> </programme>
The channel value in the programme entry must match the XMLTV channel ID.
Understand the Role of tvg-id
The tvg-id field connects a playlist channel to an EPG channel.
A playlist entry may look like this:
#EXTINF:-1 tvg-id=”ExampleChannel.fr” tvg-name=”Example Channel”,Example Channel HD https://example.com/stream
The important value is:
ExampleChannel.fr
That value must correspond to the channel ID inside the XMLTV file:
<channel id=”ExampleChannel.fr”>
When the IDs do not match, the player may show the video stream correctly but display no programme information.
Users selecting an IPTV Abonnement should check whether the supplied playlist already contains EPG identifiers and whether those identifiers are compatible with the guide source used by their player.
tvg-id Is Not Universal
A channel can have different identifiers in different EPG databases.
For example, the same channel might be represented as:
ExampleChannel.fr
in one database and:
example-channel-fr
in another.
Another provider might use:
ExampleChannelHD.fr
These values are not automatically interchangeable.
The correct tvg-id is the one used by the specific XMLTV source configured in the IPTV application.
This is why copying channel IDs from an unrelated website may not solve the problem. Always inspect the EPG file being used by the player.
Check Whether the XMLTV URL Works
Before editing channel IDs, verify that the EPG URL is accessible.
Open the XMLTV address in a browser or download it with a compatible tool.
A functioning source should return XML data containing entries such as:
<tv> <channel id=”…”> <programme channel=”…”>
Possible signs of a problem include:
- an error page;
- a login screen;
- an empty response;
- an expired link;
- a compressed file the application cannot read;
- a redirect to another website;
- a server error;
- an outdated guide containing no current programmes.
Some XMLTV feeds are compressed as .gz files. Confirm that the IPTV application supports compressed EPG sources.
Confirm That the Channel Exists in the EPG
An EPG source may not include every channel in the playlist.
Search the XMLTV file for:
- the exact channel name;
- the channel’s official brand name;
- the country code;
- a shortened version of the name;
- the expected tvg-id.
For example, a playlist might label a channel as:
FR: Example Channel FHD
while the XMLTV file uses
Example Channel
This allows the interface to display a descriptive channel title without changing the underlying EPG mapping.
However, not every IPTV player uses tvg-name in the same way. The exact tvg-id remains the preferred mapping method.
Check the Time Zone
An EPG can load successfully while showing programmes at the wrong time.
A one-hour or two-hour shift is often caused by:
- an incorrect device time zone;
- daylight-saving settings;
- a manually configured EPG offset;
- a guide source using another region;
- the application applying the time-zone correction twice.
Check the date and time settings on:
- the Smart TV;
- Android TV or Google TV;
- Fire TV Stick;
- streaming box;
- smartphone;
- computer;
- IPTV application.
Use automatic date and time when possible.
If the programme guide remains shifted, look for settings called:
- EPG offset;
- time shift;
- guide correction;
- XMLTV offset;
- programme time adjustment.
Begin with an offset of zero before making manual changes.
Avoid Applying the Time Offset Twice
XMLTV programme entries may already include a time-zone value.
For example:
start=”20260801190000 +0200″
The +0200 value already defines the time offset.
If the application reads that value and the user also applies a manual two-hour correction, the guide may become inaccurate.
Adjust the time zone only after confirming how the player interprets the XMLTV timestamps.
Refresh the EPG Manually
Many IPTV applications do not refresh the guide immediately after a playlist change.
Look for options such as:
- update EPG;
- refresh guide;
- reload XMLTV;
- clear EPG;
- sync programme data;
- update playlist and EPG.
After changing a tvg-id:
- Save the playlist.
- Clear the existing EPG data.
- Restart the application.
- Reload the playlist.
- Download the EPG again.
- Check the corrected channel.
Without clearing the old data, the application may continue displaying the previous mapping.
Clear the Application Cache
A corrupted or outdated cache can prevent new programme information from appearing.
On Android TV, Google TV, an Android box, or Fire TV:
- Open the device settings.
- Select Applications.
- Find the IPTV player.
- Choose Clear Cache.
- Restart the application.
- Refresh the EPG.
Avoid clearing all application data unless the playlist, favourites, and credentials have been backed up.
Clearing data may reset the entire application.
Check the EPG Update Frequency
Programme-guide data changes continuously.
Some sources update several times per day, while others update only once every 24 hours. A guide may also provide schedules for different periods, such as:
- the previous day;
- the current day;
- the next three days;
- the next seven days;
- the next fourteen days.
If the EPG is correct today but empty for later dates, the source may provide only a limited schedule window.
Check whether the application automatically updates the EPG when it opens or only at a fixed time.
Avoid Loading Too Many EPG Sources
Some applications allow several guide sources to be configured at the same time.
This can be useful for international playlists, but it can also create:
- duplicate channel mappings;
- incorrect programme assignments;
- slower loading;
- increased memory use;
- conflicting time zones;
- outdated data replacing newer information.
Use the smallest number of EPG sources required to cover the playlist.
When combining sources, assign each one to the correct playlist or channel group where the application supports source-specific mapping.
Handle Duplicate Channel Names Carefully
A playlist may include several versions of the same channel:
- SD;
- HD;
- Full HD;
- 4K;
- backup stream;
- regional stream;
- alternative server.
All versions can often use the same tvg-id when they carry the same schedule.
Example:
#EXTINF:-1 tvg-id=”ExampleChannel.fr”,Example Channel HD #EXTINF:-1 tvg-id=”ExampleChannel.fr”,Example Channel FHD #EXTINF:-1 tvg-id=”ExampleChannel.fr”,Example Channel Backup
However, regional versions may have different schedules. Confirm whether the variants broadcast identical programming before assigning one ID to all of them.
Create a Channel-Mapping Table
A spreadsheet is useful for larger playlists.
Create columns for:
Playlist channelNormalized nameExisting tvg-idXMLTV matchStatusFR: Example Channel FHDExample ChannelEmptyExampleChannel.frMatchedFR: Example News HDExample NewsWrongID.frExampleNews.frCorrectedFR: Local ChannelLocal ChannelEmptyNo resultManual review
Suggested status values include:
- exact match;
- probable match;
- no match;
- duplicate;
- regional version;
- manual review.
This approach reduces mistakes and makes future updates easier.
Automate Matching for Large Playlists
When a playlist contains hundreds of channels, a script can compare playlist names with XMLTV display names.
A useful automated workflow can:
- Read the M3U playlist.
- Extract channel names and existing IDs.
- Read the XMLTV file.
- Extract channel IDs and display names.
- Normalize both lists.
- Match exact normalized names.
- calculate similarity for remaining entries;
- export uncertain matches for manual review;
- write corrected tvg-id values into a new playlist.
Automatic matching should not overwrite the original file.
Always save the result as a new playlist and manually inspect uncertain matches.
Use a Similarity Threshold
Fuzzy matching can identify channels with small naming differences.
For example:
Example News HD
and:
Example News
may produce a high similarity score.
A safe workflow may:
- accept exact matches automatically;
- accept very high-confidence fuzzy matches;
- flag medium-confidence matches for review;
- reject low-confidence matches
Do not automatically accept every similar result. Short channel names and shared network brands can create false matches.
Preserve the Original Playlist
Before changing IDs or channel names:
- save the original playlist;
- create a dated backup;
- edit a copy;
- test a small channel group;
- document major changes.
An incorrect replacement operation can affect hundreds of channels at once.
A backup also makes it easier to compare changes when a provider updates the playlist.
Test With a Small Channel Group
Do not remap the complete playlist immediately.
Select five to ten channels from different categories, such as:
- general television;
- news;
- sports;
- films;
- children’s channels;
- regional television.
Add the corrected IDs, refresh the guide, and verify:
- current programme titles;
- future schedules;
- time-zone accuracy;
- channel logos;
- programme descriptions.
Once the test group works correctly, apply the same method to the remaining channels.
Verify the Guide After a Playlist Update
Providers may change:
- channel names;
- category prefixes;
- stream URLs;
- quality labels;
- channel ordering.
A playlist update can therefore affect an existing mapping even when the EPG source remains unchanged.
After replacing or refreshing a playlist:
- Check whether the custom IDs were preserved.
- Review newly added channels.
- identify renamed entries;
- confirm that duplicate channels still use the correct IDs;
- refresh the XMLTV data.
Users seeking additional configuration guidance for Smart TVs and connected devices can consult the resources available through IPTV France.
Common EPG Problems and SolutionsEPG problemLikely causeRecommended solutionNo information on one channelMissing or incorrect tvg-idMatch the ID with the XMLTV channel entryNo guide on any channelInvalid EPG URLTest or replace the XMLTV addressProgrammes appear one hour lateTime-zone mismatchReview device time and EPG offsetWrong programmes on a channelIncorrect mappingVerify the channel IDGuide works only on some channelsIncomplete EPG coverageAdd another compatible sourceOld schedules remain visibleCached programme dataClear and refresh the EPGGuide loads very slowlyToo many sources or channelsReduce unnecessary EPG dataDuplicate programme entriesConflicting sourcesKeep one source per channelEPG disappears after updatePlaylist IDs were overwrittenRestore the custom mappingChannel logo is wrongIncorrect XMLTV channel matchCorrect the linked channel IDEPG Security and Privacy
Use EPG sources from trusted providers.
Avoid unknown files or applications that request unrelated permissions.
Programme-guide files are usually text-based, but suspicious websites may distribute modified applications, deceptive downloads, or tracking links.
Protect playlist and EPG URLs when they contain account-specific tokens.
Do not publish:
- usernames;
- passwords;
- private playlist links;
- portal addresses containing credentials;
- personal activation URLs.
When sharing an EPG example publicly, replace private values with placeholders.
Frequently Asked QuestionsWhat does tvg-id mean?
The tvg-id is the identifier used to connect a playlist channel to a corresponding channel inside an XMLTV EPG file.
Where can I find the correct tvg-id?
Open the XMLTV file and locate the relevant <channel id=””> entry. The value inside the id attribute is normally the value that should be used.
Can two channels use the same tvg-id?
Yes, when they are duplicate streams carrying the same schedule, such as HD and Full HD versions. Regional versions may require different IDs.
Why does the EPG show the wrong programme?
The playlist may be linked to the wrong XMLTV channel. Compare the playlist tvg-id with the XMLTV <channel id=””> and the related programme entries.
Why is the guide one hour ahead?
The device time zone, daylight-saving setting, XMLTV offset, or application adjustment may be incorrect.
Do channel names have to match exactly?
Not always when the tvg-id is correct. Some applications can also match by tvg-name or display name, but exact IDs are more reliable.
Can I use more than one EPG source?
Yes, if the application supports multiple sources. Avoid assigning several conflicting sources to the same channels.
Why does the guide disappear after updating the playlist?
The new playlist may have replaced the customized tvg-id values. Back up the edited playlist and review the IDs after every major update.
How often should the EPG update?
Daily updates are normally sufficient, although some sources refresh more frequently. The update schedule depends on the provider and application.
Does the IPTV application create EPG data?
Usually not. The application displays information supplied by an XMLTV source or the IPTV service.
IPTV EPG Checklist
When the programme guide is missing or incorrect, confirm that:
- the EPG URL is active;
- the XMLTV file contains current programme data;
- the channel exists in the guide;
- the playlist uses the correct tvg-id;
- channel names have been normalized;
- the device time zone is correct;
- no unnecessary manual time offset is applied;
- the application cache has been refreshed;
- duplicate EPG sources are not conflicting;
- custom mappings are backed up;
- uncertain matches have been reviewed manually.
Conclusion
Most IPTV EPG problems can be traced to incorrect channel identifiers, mismatched names, outdated XMLTV data, or time-zone configuration.
The most reliable solution is to compare the playlist’s tvg-id values directly with the <channel id=””> entries in the XMLTV source.
Channel-name normalization and automated matching can save time, but uncertain results should always be reviewed manually.
After correcting the mapping, clear the old guide data, refresh the EPG, and test several channels to confirm that programme titles and times are accurate.
Always use playlists, programme guides, applications, and streaming services in accordance with their terms, applicable content rights, and local laws.