StreamTest

The response is not an HLS playlist

The document does not begin with #EXTM3U, so it is not a playlist at all.

What it means

Every HLS playlist must start with the #EXTM3U tag on its first line. What came back does not, so it is some other kind of document — very often an HTML error page returned with a 200 status.

Why it matters

A player receives exactly the same thing and refuses to start. Because the status code is often 200, monitoring that only checks status codes reports the stream as healthy while nobody can watch it.

How to fix it

  1. Open the URL directly and look at what comes back — an HTML login page or error page is the usual answer.
  2. Check whether the URL needs a token or a signed query string that has expired.
  3. Confirm you are pointing at the playlist and not at a player page that embeds it.

Check your own stream

The free HLS analyzer runs this check on every analysis and links each finding straight back here.

Open the HLS analyzer

Frequently asked questions

What does "The response is not an HLS playlist" mean?
Every HLS playlist must start with the #EXTM3U tag on its first line. What came back does not, so it is some other kind of document — very often an HTML error page returned with a 200 status.
Why does it matter?
A player receives exactly the same thing and refuses to start. Because the status code is often 200, monitoring that only checks status codes reports the stream as healthy while nobody can watch it.
How do I fix it?
1. Open the URL directly and look at what comes back — an HTML login page or error page is the usual answer. 2. Check whether the URL needs a token or a signed query string that has expired. 3. Confirm you are pointing at the playlist and not at a player page that embeds it.
How can I detect this automatically?
Paste your HLS streaming URL into StreamTest's free HLS analyzer. It runs this check on every analysis, flags the finding, and links straight back to this page — no sign-up required.

Related HLS checks