Back to articles

How to add your IPTV playlist on iPhone and iPad

Thiago MonteiroBy Thiago MonteiroPublished on August 5, 20267 min read
How to add your IPTV playlist on iPhone and iPad

You signed up for an IPTV service, received a handful of details — a URL, a username, a password, or maybe just a link ending in .m3u — and now you need to turn that into channels, movies, and series on your iPhone screen. This is the part that usually stalls beginners: not because it's hard, but because every player calls the same things by different names.

This guide walks through the full process in Nebula Player, using the app's real screens. There are three possible paths — Xtream Codes, M3U URL, and M3U file — and the difference between them changes what you need on hand and how the playlist behaves afterward. At the end, a shortcut that handles everything in one tap, and what to check when something won't load.

Before you start: what you need on hand

Everything depends on the format your authorized provider gave you. It's worth checking before you open the app, because the two formats ask for different information and aren't interchangeable — an M3U playlist URL won't work in the Xtream Codes field, and vice versa.

  • Xtream Codes: the server URL (something like http://server.com:8080), plus your account username and password.
  • M3U playlist by URL: the full address of the playlist, usually ending in .m3u or .m3u8.
  • M3U playlist by file: the .m3u or .m3u8 file saved on your iPhone, in iCloud Drive, or in another files app.

Step 1: open the new profile screen

When you first open the app, you land on the “Who's watching?” screen. It follows the same logic as the streaming services you already know: each profile holds one playlist, with its own favorites and history. Tap the “+” button to create your first one.

The new profile screen brings everything together in one place: the avatar (which you change using the pencil icon), the profile name, and just below it, the playlist setup. There's no hidden menu in Settings — it's all right here.

Nebula Player's new profile screen, showing the name field, the demo account toggle, and the list type selector between Xtream Codes and M3U playlist
The new profile screen holds the name, the demo account, and the playlist type choice.

Step 2: choose the playlist type

Under the list type selector, you choose between Xtream Codes and M3U playlist. That choice determines which fields appear next, so it's worth understanding the difference before you tap.

Xtream Codes is an API: the app talks to the server and receives categories, metadata, the split between live channels, movies, and series, and the program guide already organized. An M3U playlist is a text file listing channels in sequence — it works fine, but it carries less structured information. When your provider offers both, Xtream Codes usually delivers a richer browsing experience.

Step 3: connect via Xtream Codes

With Xtream Codes selected, three fields appear: URL, username, and password. Fill them in exactly as your provider sent them, without adapting anything.

Nebula Player's Xtream Codes form, showing the URL, username, and password fields above the create profile button
In Xtream Codes mode, there are three fields: server URL, username, and password.

The most common mistake here is in the URL field. It expects only the server address with the port — for example, http://server.com:8080. If you paste the full URL some providers send, with /player_api.php or /get.php and the username and password parameters at the end, the connection fails. In that case, delete everything after the port and put the username and password in their own fields.

Step 3, alternative: add an M3U playlist

If you pick M3U playlist, a second selector appears: URL or file. Both get you to the same place, but they behave quite differently day to day.

By URL

This is the recommended option. Paste the full address into the playlist URL field — the app itself shows the expected format as an example, something like http://example.com/list.m3u. Because the app queries that address, when your provider adds or removes channels, the update reaches you without you having to redo anything.

Nebula Player's M3U playlist by URL option, with the playlist URL field showing the example http://example.com/list.m3u
By URL, the playlist stays connected to its source and receives the provider's updates.

By file

Choose the file option when you have the .m3u saved on your device rather than a URL. Tap the button to select an M3U file, pick it through the iOS file picker — which sees what's on your iPhone, in iCloud Drive, and in other services connected to the Files app — and the name appears confirmed on screen.

Nebula Player's M3U playlist by file option, showing the selected br.m3u file and the notice that the file will be copied into the app
By file, the app works from a copy — convenient, but frozen in time.

The app itself warns you about the limitation: the file is copied inside it. That means the playlist stays frozen in the state it was in at import time. If your provider changes the catalog later, you have to import the new file manually. That's why, whenever the URL option exists, it's the better choice.

Step 4: create the profile

Give the profile a name, double-check the details, and tap create profile. The app validates the access and starts loading the catalog. Large playlists take a few seconds on this first load — that's when the app organizes channels, separates movies and series, and fetches the supplementary data for each title.

The shortcut: add your playlist by link

There's a shorter path for Xtream Codes access. Nebula Player accepts a link that arrives with the details already filled in, in the format https://link.nebulaplayer.com.br/create-profile?url=SERVER&username=USERNAME&password=PASSWORD, replacing each part with your own details.

Opening that link on an iPhone with the app installed brings up the new profile screen with the fields already populated — you just confirm. It's especially handy if you have more than one device and don't want to type long credentials on each one: build the link once and open it on the others.

Just want to try the app first?

On that same new profile screen there's a demo account toggle. It creates a profile with fictional content, built purely to demonstrate the app's features — browsing, search, favorites, the player. It's the way to see how Nebula Player works before entering your real details, and it isn't a substitute for a playlist.

Playlist won't load? what to check

If the profile isn't created or the catalog comes up empty, the cause is almost always one of these:

  • An invisible space at the start or end of a field — common when copying and pasting from messages; clear it and retype if you suspect this.
  • An Xtream URL with /player_api.php, /get.php, or a trailing slash; leave only the address with the port.
  • http:// where https:// belongs, or the other way around — check what your provider specified.
  • Expired credentials or the simultaneous connection limit being reached; in that case the problem is on the provider's side, not the app's.
  • An M3U playlist URL that requires a browser login before downloading the file — the app can't get past that step.

If the playlist loads but the picture freezes during playback, that's a different subject: the cause is usually in the connection or the server, not in the profile setup.

More than one playlist on the same device

Since each profile holds one playlist, you can repeat the process as many times as you like: one profile per playlist, or one profile for each person in the house sharing the same playlist. Favorites, history, and continue watching stay separate per profile, so one person's viewing doesn't interfere with another's.

Already have an authorized M3U list or Xtream Codes access? See how Nebula Player organizes everything on your iPhone and iPad, with profiles, favorites, and continue watching.

Discover Nebula Player
Thiago Monteiro

Thiago Monteiro

Creator of Nebula Player

iOS developer and creator of Nebula Player. Writes about how media players, authorized playlists, and streaming technologies work in practice.

Articles by Thiago Monteiro

Related articles

A more organized way to watch your IPTV.

Download for iOS