Skip to content
Vidiyo
FeedWatchTV guideFor creatorsYour brandPricingAppsSupport
DevelopersAbout
Watch nowWatch
  1. Learn
  2. Technical
  3. EPG Generation for FAST Channels
Technical

EPG Generation for FAST Channels

How Electronic Program Guides (EPGs) work for FAST channels: the XMLTV format, what data TV platforms require, how EPGs are generated from your schedule, and how to improve your EPG metadata for better discovery.

By David NaffisMay 22, 2026Updated August 3, 202612 min read
Editorial photo for: EPG Generation for FAST Channels

An Electronic Program Guide (EPG) is the TV schedule that viewers see when they browse the channel guide on Roku, Fire TV, or Apple TV. It tells the TV platform what's on your channel right now, what's coming up, and what's airing tomorrow.

Detail view for article: EPG Generation for FAST Channels

For a FAST channel, a well-maintained EPG is not optional. It is required by every major TV platform and has a significant impact on viewer discovery.


Quick answers

What format do most FAST platforms use for EPG? XMLTV is the common interchange format for programme schedules.

How far ahead should I schedule for a healthy EPG? Build at least 7 days forward for major TV platform windows.

What metadata matters most for discovery? Clear titles, short descriptions, genre tags, episode numbers, and thumbnails.

Where do EPG titles come from? Usually from your content item metadata and schedule grid, not from the video filename alone.

Can bad EPG hurt ad targeting? Yes. Weak metadata reduces contextual targeting quality and can lower CPM potential.


Why EPG matters for FAST channels

Platform requirements. Roku, Fire TV, and Samsung TV Apps all require EPG data to list your channel in their guides. Without an EPG, your channel may not appear in the "What's On" section at all.

Viewer discovery. Viewers browse the TV guide the same way people used to browse a newspaper TV listings section. A channel with "Unknown Program" in every slot gets skipped. A channel with descriptive titles and episode descriptions gets explored.

Ad targeting. Your EPG metadata is used by ad servers to serve contextually relevant ads. Better metadata means better targeting and higher CPMs.

SEO on TV platforms. Platform search engines on Roku, Fire TV, and smart TVs search EPG data. A viewer searching for "cooking show" is more likely to find your channel if your EPG has proper genre tags and episode descriptions.


XMLTV format

XMLTV is the standard format for EPG data. It's an XML file that looks like this:

Supporting editorial photo for: EPG Generation for FAST Channels

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE tv SYSTEM "xmltv.dtd">
<tv generator-info-name="Vidiyo" source-info-name="vidiyo.com">
  <channel id="your-channel-id">
    <display-name lang="en">Your Channel Name</display-name>
  </channel>
  <programme start="20260522200000 +0000" stop="20260522210000 +0000" channel="your-channel-id">
    <title lang="en">Episode Title</title>
    <desc lang="en">A description of this episode.</desc>
    <category lang="en">Cooking</category>
    <episode-num system="onscreen">S01E03</episode-num>
    <subtitles type="teletext"/>
    <icon src="https://cdn.example.com/episode-thumbnail.jpg"/>
  </programme>
  <!-- more programmes -->
</tv>

The key fields:

  • start/stop: Times in YYYYMMDDHHmmss +ZZZZ format. Use UTC.
  • title: The programme title. Should match the show name, not the episode title alone.
  • desc: A short description. 100-300 characters is ideal.
  • category: Genre tags. Multiple categories are allowed.
  • episode-num: Season/episode numbering. Use the onscreen system for display format or xmltv_ns for machine-readable format.
  • icon: A thumbnail image URL. Will appear in the TV guide alongside the title.

How EPG data is generated from your schedule

When you build a schedule in a FAST platform, the platform generates an XMLTV feed automatically from your programming grid. The schedule (what content plays when) becomes the source of truth for the EPG.

What the platform supplies from your schedule:

  • Start/stop times
  • Channel ID
  • Title (from the content item's title field)

What you should supply in your content metadata:

  • Description (per content item)
  • Genre/category tags
  • Season/episode number
  • Thumbnail image
  • Rating (TV-G, TV-14, etc.)

The quality of your EPG is directly tied to the quality of your content metadata. If you upload a video titled "ep3.mp4" with no description or tags, your EPG will show "ep3.mp4" with no description. That's not useful.


EPG window requirements

TV platforms request EPG data covering a specific time window. Common requirements:

  • Current + 24 hours: Minimum for most platforms
  • Current + 7 days: Standard for major platforms (Roku, Fire TV)
  • Current + 14 days: Some platforms support up to 2 weeks ahead

This means your schedule needs to be built at least 7 days in advance to serve a complete EPG. An empty or incomplete EPG (showing gaps or unknown programs) is bad for viewer experience and platform listing.

Vidiyo's EPG endpoint serves up to 48 hours of data per request and paginates across your full schedule. TV platform integrations request EPG data periodically (typically every 30-60 minutes) to stay current.


XMLTV field recommendations for better discovery

Title formatting. Use the show title for <title>, not the episode title. Episode titles go in <sub-title>. Many TV guides display the show title prominently and the episode title as secondary info.

<title lang="en">The Taco Chronicles</title>
<sub-title lang="en">Season 2: Birria</sub-title>

Descriptions. Write for a viewer who has never seen your show. Avoid "In this episode..." as the opening; it assumes context. Instead: "[Show name] explores [topic] in [location], featuring [guest/subject]."

Genre tags. Use multiple categories. The TV platform will map these to its internal genre taxonomy. Common useful categories: Cooking, Travel, Sports, News, Documentary, Comedy, Drama, Music, Gaming.

Episode numbers. Always include episode numbers for serialized content. Use the xmltv_ns system for machine-readable format (0-indexed, formatted as S.E/Total):

<episode-num system="xmltv_ns">1.2.</episode-num> <!-- Season 2, Episode 3 -->

Thumbnails. Provide episode-specific thumbnails, not just a generic channel logo. A frame from the episode, a key art image, or a title card performs better in the guide. Minimum size: 300×200px. Recommended: 1280×720px.

Content ratings. Include the rating tag:

<rating system="MPAA">
  <value>TV-14</value>
</rating>

Common EPG mistakes

Missing descriptions. Shows with no description get skipped in the guide. Even a one-sentence description is dramatically better than nothing.

Generic titles. Uploading content as "Episode 1", "Episode 2", etc. is useless in an EPG. Name your content.

Wrong timezone offset. XMLTV times should be UTC or explicitly include the offset. Using local time without an offset causes all schedule times to be wrong.

Not extending the schedule forward. If your FAST platform shows a 7-day schedule but you've only scheduled 2 days ahead, the EPG has gaps. Build your schedule at least 7 days forward.

Not refreshing stale thumbnails. If you change a thumbnail in your CMS after an EPG has been distributed, the cached thumbnail on TV platforms may take 24-48 hours to update.


EPG QA checklist before partner reviews

Run this pass before OEM or aggregator submissions:

  1. Spot-check the next 48 hours of titles against the live schedule
  2. Confirm no "Unknown Program" or filename leftovers
  3. Verify descriptions are present on primetime titles
  4. Confirm ratings and captions flags where required
  5. Open a few guide thumbnails in a browser to catch broken image URLs
  6. Compare one programme's start/stop times to wall-clock playout

If the guide lies, viewers bounce even when the stream is healthy. Pair this with the channel launch checklist.


How EPG quality shows up in analytics

Weak EPG rarely looks like a "guide bug" in dashboards. It shows up as:

  • Low tune-in from browse surfaces
  • Short sessions after guide-driven arrivals
  • High bounce when titles do not match what airs
  • Partner feedback about incomplete windows

Treat EPG as a growth surface, not a compliance chore. Analytics that help you see the effect: FAST channel analytics. Scheduling habits that keep windows full: channel scheduling for 24/7 playout.


Metadata workflow that scales

For libraries larger than a handful of titles:

  1. Standardize title / subtitle / description fields in your CMS
  2. Require genre tags before a title can be scheduled
  3. Store episode numbers in a machine-readable form
  4. Attach a default thumbnail template, then replace with episode art
  5. Review primetime metadata weekly, not only at launch

Small process beats heroic cleanup before every distribution pitch.



Operator takeaway

Treat this page as a working checklist, not a one-time read. Revisit it when you change schedule density, ad load, distribution targets, or source quality. Small weekly improvements compound faster than a single big relaunch. If you need a free place to run the channel while you learn, start creating on Vidiyo.

What's next

  • HLS manifests explained
  • Channel scheduling for 24/7 playout
  • How to start a FAST channel
  • Channel launch checklist
Written by
David Naffis

Founder, Vidiyo

Founder of Vidiyo. Writes about FAST channels, free live TV, and creator distribution.

More from David →
SharePost on XLinkedIn
← Newer guideDRM for FAST Channels — Do You Actually Need It?Older guide →FAST Channel Analytics: What to Measure and What It Means

Ready to launch your TV channel?

Vidiyo handles streaming, ads in the stream, the TV guide, and apps on every screen so you can focus on programming.

Start creating, freeSee how it works →

More in Technical

SSAI Ad Prefetch for CTV Streams Explained

SSAI ad prefetch fetches and prepares ads before a CTV break fires. Learn how pre-fetching cuts stitch latency, and how Vidiyo's playout warms pods.

6 min read →
What Is VMAP? Video Multiple Ad Playlist

VMAP schedules when ad breaks run in a video session. VAST fills each break with creatives. Learn how VMAP differs from SCTE-35 cues in live FAST.

6 min read →
HLS vs DASH: Which Streaming Protocol Should You Use?

HLS vs DASH: both stream video in small chunks over HTTP. Compare device support, latency, and DRM, and see why FAST platforms ship HLS first in practice.

6 min read →

In this article

  • Quick answers
  • Why EPG matters for FAST channels
  • XMLTV format
  • How EPG data is generated from your schedule
  • EPG window requirements
  • XMLTV field recommendations for better discovery
  • Common EPG mistakes
  • EPG QA checklist before partner reviews
  • How EPG quality shows up in analytics
  • Metadata workflow that scales
  • Operator takeaway
  • What's next
← More technical← All guides
Vidiyo

Clips, live streams, and your own TV channel. Free on every screen.

Product

  • Watch
  • Feed
  • TV guide
  • For creators
  • Who it's for
  • Your brand
  • Pricing
  • Apps
  • Support

Resources

  • Learn
  • SIGNAL
  • Tools
  • Compare
  • About
  • RSS feed

Developers

  • Overview
  • REST API
  • MCP server

Legal

  • Terms
  • Privacy
  • Cookies
  • DMCA
  • Creator agreement
  • Trust & Safety
Get the app
  • iPhone & iPad
  • Android
  • Roku
  • Fire TV
  • Android TV
  • Apple TV
  • Samsung
  • LG
  • Vizio
© 2026 Vidiyo. Made for creators, everywhere.