Android — coming very soon Learn more
← All articles

Belgium and Switzerland IPTV EPG: the XMLTV sources that work

We downloaded every free XMLTV file for Belgium and Switzerland on 22/09/2026: which ones cover La Une, VRT 1, RTS 1 and SRF 1, how far ahead they go, and the channel-ID traps after the Eén, La Deux and RTS Un renames.

Anyone searching for a "Belgium EPG XMLTV" or "Switzerland EPG XMLTV" file wants one thing: a URL that works today and fills the guide for La Une, RTL-TVI, VRT 1, RTS 1 or SRF 1. Both countries share the same headaches: three languages, recently renamed channels, and files that declare channels with no programmes in them. We downloaded and decompressed every file below on 22 September 2026, then counted channels, programmes and the dates actually present.

OneTV Connect is a player. It provides no channels, no subscription and no guide data: you add your own playlist and the EPG source of your choice. None of the URLs below is a playlist; they are XMLTV programme guides only.

Sources tested for Belgium

Tested on 22/09/2026. "Range" means the first and last programme found in the file that day. Sizes are compressed → decompressed.

Source URL Format Measured range Channel IDs seen Channels present / missing Tested
xmltvfr.fr, "Complet" file https://xmltvfr.fr/xmltv/xmltv.xml.gz gzipped XMLTV, 18 MB → 145 MB, 785 channels across all countries (723 with programmes) 21/09 → 30/09 (about 8 days) LaUne.be, RTLTVI.be, een.be, VTM.be La Une (366 programmes), RTL-TVI, La Deux and Tipikvision, LN24, Eén, VTM and VTM 2 to 4, Ketnet; local BX1, TéléMB, Canal C, TV Lux 22/09/2026
epgshare01 BE2 https://epgshare01.online/epgshare01/epg_ripper_BE2.xml.gz gzipped XMLTV, 5.7 MB → 59 MB, 571 channels (491 with programmes) day -1 → day +3 La.Une.HD.be, VRT.1.be, VTM.HD.be La Une HD, RTL-TVI HD, Tipik, VRT 1, VTM, VRT Canvas, Ketnet; declared but empty: La.Une.be, LN24.be 22/09/2026
open-epg belgium https://www.open-epg.com/files/belgium.xml.gz gzipped XMLTV, 1.7 MB → 10.4 MB, 253 channels, all with programmes about day -1 → day +2 LaUne.be, RTLtvi.be, VRT1.be La Une, RTL-TVI, Tipik, VRT 1, VTM; LN24 not checked 22/09/2026
epg.pw no Belgium file epg_BE.xml.gz returns 404 22/09/2026

epgshare01's BE2 file also carries many German and French channels distributed in Belgium (tagesschau24.HD.be, France.5.be). The open-epg URL answers with a 302 redirect to a download link; any client that follows redirects loads it normally. Note that a non-existent open-epg URL redirects too, so a 302 alone proves nothing.

Sources tested for Switzerland

Source URL Format Measured range Channel IDs seen Channels present / missing Tested
epgshare01 CH1 https://epgshare01.online/epgshare01/epg_ripper_CH1.xml.gz gzipped XMLTV, 6.1 MB → 54 MB, 751 channels (732 with programmes) 21/09 → 25/09 (RTS 1: 206 programmes) RTS.1.ch, SRF.1.ch, SRF.zwei.ch, RSI.La.1.ch RTS 1, RTS 2, SRF 1, SRF zwei, RSI LA 1 and LA 2, blue Sport and MySports channels 22/09/2026
xmltvfr.fr, "Complet" file https://xmltvfr.fr/xmltv/xmltv.xml.gz same file as for Belgium up to 30/09 (RTS 1: 460 programmes) RTSUn.ch, RTSDeux.ch, SRF1.ch, RSI1.ch RTS 1, RTS 2, SRF 1, SRF 2, RSI 1 and 2; local Léman Bleu, La Télé, Canal Alpha, TeleBielingue 22/09/2026
open-epg switzerland3 https://www.open-epg.com/files/switzerland3.xml.gz gzipped XMLTV, 1,119 channels, 48,092 programmes about day -1 → day +2 (RTS 1: 118 programmes) RTS 1.ch, SRF 1.ch (with a space) RTS 1, RTS 2, SRF 1, SRF zwei; RSI not checked 22/09/2026
open-epg switzerland2 https://www.open-epg.com/files/switzerland2.xml.gz gzipped XMLTV, 325 channels, 24,239 programmes about day -1 → day +2 SRF1.ch, SRF2.ch SRF 1, SRF 2, MySports; no RTS channels 22/09/2026
epg.pw no Switzerland file epg_CH.xml.gz returns 404 22/09/2026

Freshness: xmltvfr showed a last update on 22/09/2026 at 02:14, and epgshare01 had regenerated its files the same morning around 05:35 UTC. Neither documents a guaranteed update schedule. File names also change: epgshare01's old epg_ripper_BE1 no longer exists and has been replaced by BE2.

Which combination to pick

  • French-speaking Belgium (Wallonia, Brussels). xmltvfr "Complet" as the main source, epgshare01 BE2 as a complement. xmltvfr runs to 30/09, about three days further than epgshare01, and covers local channels (BX1, TéléMB, Canal C, TV Lux). Its downside is size: 145 MB decompressed, because it also carries all of France and French-speaking Africa.
  • Flanders or a bilingual household, lightweight setup. open-epg belgium on its own is 10.4 MB decompressed and all 253 of its channels have programmes, VRT 1 and VTM included. The range is shorter, about two days. Add epgshare01 BE2 (VRT 1: 170 programmes, VTM: 153) for an extra day.
  • Switzerland, all three language regions. epgshare01 CH1: 751 channels, 732 of them filled, with RTS, SRF and RSI in a single 54 MB file. In French-speaking Switzerland, add xmltvfr "Complet" if you want to see further ahead: 460 programmes for RTS 1, up to 30/09.

Sources stack. For a given channel and time slot, the first source with a programme is used and the others fill the gaps. Two well-chosen sources are enough.

Channel IDs and naming traps

The general matching method is covered in our tvg-id guide. Here is what is specific to Belgium and Switzerland.

  • Renames. Eén became VRT 1, Canvas became VRT Canvas, La Deux became Tipik, and RTS Un is now RTS 1. Not every source has followed: xmltvfr keeps een.be, LaDeux.be, RTSUn.ch and RTSDeux.ch, while epgshare01 and open-epg use VRT.1.be, VRT1.be, Tipik.be, RTS.1.ch. A recent playlist will say "VRT 1", an older one "Eén".
  • Empty channels. epgshare01 BE2 declared La.Une.be and LN24.be with no programmes at test time. When an HD variant exists, such as La.Une.HD.be, pick that one.
  • Spaces in IDs. open-epg switzerland3 writes RTS 1.ch and SRF 1.ch with a space. Copy them exactly.
  • Same name, different channel. "RTL" can mean RTL-TVI or RTL Deutschland (RTLDeutschland.be). "RTS 1" can mean the Swiss channel or RTS 1 Senegal, which is present in open-epg (RTS 1 (Sénégal).ch) and in xmltvfr.
  • Three languages in Switzerland. SRF in German, RTS in French, RSI in Italian. Playlists often mix "SRF 1 HD", "SRF1" and "SRF eins" for the same channel.
  • Relayed channels. France.5.be, TF1.ch or M6.ch follow the original channel's schedule, with country-specific ad breaks or opt-outs. The French guide is still right for the programmes; see our sources for France.
  • File-bound suffix. At epgshare01, IDs end with the file's country code (.be, .ch). If the file is renamed, re-check your mappings.

Time zone and clock change

Belgium and Switzerland run on Central European Time: UTC+1 in winter (CET), UTC+2 in summer (CEST). Clocks go back to winter time on 25 October 2026.

Sources write times differently. At test time, xmltvfr stamped its programmes +0200, while epgshare01 and open-epg used +0000. Both are correct: a programme starting at 19:30 in Brussels is written 19:30 +0200 or 17:30 +0000, and the result is identical as long as the player reads the offset. If every channel is shifted by the same amount, the tool is at fault, not the source. The EPG troubleshooting checklist covers that case.

Adding the source in OneTV Connect

  1. Open Settings → EPG.
  2. Add an XMLTV source and paste the .xml.gz URL exactly as listed above. Keep the compressed version.
  3. Optionally add a second source. Sources stack and complement each other.
  4. Check how many channels were matched, then fix the remaining empty ones by hand.

To install the app, see the IPTV player for Apple TV. Other countries are covered in our EPG sources by country guide.

Licensing: none of these free sources publishes a licence for its data, so keep them for personal use.

Frequently asked questions

Does epg.pw have a Belgium or Switzerland file?

No. On 22/09/2026, epg_BE.xml.gz and epg_CH.xml.gz both returned 404, and the country list on epg.pw (its xmltv.html page) includes neither country. For Belgium and Switzerland, use xmltvfr.fr, epgshare01 or open-epg.

Why is La Une empty with epgshare01 when the channel is in the file?

The BE2 file declares two entries, La.Une.be and La.Une.HD.be. In our test La.Une.be had no programmes at all while La.Une.HD.be had 147. Map your channel to the HD variant. LN24.be was empty in the same way.

My playlist still says "Eén" or "La Deux". Which ID should I pick?

Eén is now VRT 1 and La Deux is now Tipik. xmltvfr keeps the old IDs (een.be, LaDeux.be); epgshare01 and open-epg use the new ones (VRT.1.be, VRT1.be, Tipik.be). Pick the ID used by the source you added, not the one that looks most like your playlist name.

Will Swiss and Belgian times shift after 25 October?

Not if the player reads the UTC offset written in the file. Both countries move from summer time (UTC+2) back to winter time (UTC+1) on 25 October 2026. A constant one- or two-hour shift across every channel almost always comes from a tool that ignores that offset.