M3U Validator
Check an M3U playlist URL, or upload a file, to see if it's correctly formatted and how many channels it contains.
How it works
Uploading a file parses it entirely in your browser — nothing is sent anywhere. Checking a URL first tries a direct browser request; if that's blocked by CORS, we offer a one-click server-side check instead, which fetches the URL once and reports back what it found.
How to interpret the result
A valid playlist starts with #EXTM3U and has a #EXTINF line before each stream URL. Malformed lines usually mean the file was edited incorrectly or exported by a tool that doesn't follow the standard format.
Limitations
This checks the playlist's structure and whether the URL responds — it doesn't verify that the individual streams inside it actually play, since that requires a compatible player and an active subscription with the provider.
Frequently asked questions
Why can't the tool check my playlist URL directly?
Browsers block cross-origin requests to servers that don't explicitly allow them (a security feature called CORS). Most IPTV playlist servers don't allow this, so direct browser checks often fail even when the playlist itself is fine. We offer a server-side check as a fallback.
Is my playlist URL sent anywhere or stored?
If you use the server-side check, your URL is fetched once to test it and isn't stored afterwards. Uploading a file instead keeps everything in your browser — nothing is sent anywhere.
What does a malformed line mean?
It usually means a stream URL appears without a preceding #EXTINF line, or the file doesn't start with the required #EXTM3U header. Most players are strict about this format.