Skip to content
All articles

Login methods

Using M3U / M3U8 Playlists

How to configure M3U and M3U8 playlist login in your branded OTTBuilder app, including EPG and best practices.

M3U and M3U8 playlists are a widely used way to deliver streaming content to a player. If your service distributes access through playlist URLs, OTTBuilder can configure your branded app to load them. This article explains how the playlist login works and how to prepare your URLs.

How playlist login works

With this method, your app loads content from a playlist file you host. The user typically enters or is given:

  • A playlist URL (an .m3u or .m3u8 link) that lists the available streams.
  • An optional EPG URL (usually XMLTV) that supplies the program guide.

The app parses the playlist, builds the channel and VOD lists, and plays the streams. OTTBuilder provides the player and parsing; you provide the hosted playlist and the content it points to.

OTTBuilder does not create, host, or supply playlists or content. You must provide a reachable playlist URL that points to your own streams.

M3U vs M3U8

  • M3U is the classic playlist format listing stream entries.
  • M3U8 is the UTF-8 encoded variant, also used for HLS streaming.

Both are supported. Use whichever your backend produces; the app handles parsing in either case.

What to prepare

Before configuration, have ready:

  1. A working playlist URL that returns valid entries.
  2. An EPG / XMLTV URL if you want a program guide.
  3. A note on whether the playlist is public or token-protected.
  4. A test playlist so we can verify parsing and playback during review.

Configuration options

  • User-entered playlist — Users paste their own playlist URL. Useful for resellers.
  • Pre-filled playlist — The URL is built into the app so users do not enter anything. Best for a single-service operator.

Include tvg-id, tvg-logo, and group-title attributes in your playlist entries. These let the app show channel logos, match EPG data, and organize channels into categories automatically.

Best practices for reliable playlists

  • Keep the playlist well-formed; malformed lines can cause channels to be skipped.
  • Use stable, absolute URLs for streams so links do not break.
  • Serve the playlist over HTTPS where possible.
  • Keep the file size reasonable; extremely large playlists load more slowly on low-powered devices like some Smart TV models.

If your playlist URL changes often or expires quickly, users with a pre-filled URL will lose access when it rotates. Use a stable endpoint, or choose user-entered playlists if rotation is unavoidable.

Testing the playlist

During build review, confirm:

  • The playlist parses and channels appear.
  • Logos and categories display when attributes are present.
  • The EPG populates if an XMLTV URL was supplied.
  • Live and VOD entries play without errors.

Prefer panel credentials?

If your service uses a panel rather than playlist files, see Setting Up Xtream Codes Login. You can also combine login methods in one app.

When your playlist and EPG URLs are ready, start at /get-started or contact us at /contact.

Still need help? Open a ticket in the client portal.

Open a ticket

More in Login methods

Launch your branded streaming apps

Put your brand on every screen your customers use. Pick a plan, send us your assets, and we’ll handle the rest.

Prefer to talk first? Open a ticket or email our team.