M3U Validator

Check any M3U or M3U8 playlist for errors — paste, upload, or drag and drop

Instant results100% private — no uploadFree — no sign-up
PASTE OR UPLOAD YOUR M3U
No content yet

Paste your M3U playlist above to start

Or to see a demo

Frequently asked questions

What does the M3U Validator check?

It checks for: missing #EXTM3U header, malformed #EXTINF lines (missing comma, wrong syntax), empty stream URLs, whitespace in URLs, duplicate stream entries, and HTTP vs HTTPS usage.

Is my playlist uploaded to a server?

No. All processing happens in your browser using JavaScript. Your playlist content — including any stream URLs or credentials — never leaves your device.

Why is the validator showing 'Missing #EXTM3U header'?

The #EXTM3U tag must be the very first line of the file. If there are any blank lines, BOM characters, or spaces before it, some players will reject the playlist.

What does a duplicate URL warning mean?

Two or more entries in your playlist point to the same stream URL. This usually means the same channel was added twice. It won't break playback, but it wastes space and can confuse EPG matching.

The validator says my file has errors but it plays fine in VLC — why?

VLC is very lenient and will attempt to play playlists even with errors. However, stricter apps like TiviMate or Kali IPTV may reject the same playlist. Fixing the errors ensures compatibility everywhere.

What file size limit does the validator support?

There is no hard server-side limit since everything runs in your browser. In practice, files up to ~50 MB work smoothly in most modern browsers.

How to validate an M3U playlist

  1. Paste or upload

    Paste your M3U content directly into the text area, drag a .m3u or .m3u8 file onto the page, or use the Upload button.

  2. Click Validate

    The validator parses every line, checks EXTINF syntax, scans for duplicate URLs, and flags any issues found.

  3. Review and fix

    Issues are listed by severity — Errors, Warnings, and Info. Click through to see exactly which line and entry has the problem.

What the validator checks

#EXTM3U header

Verifies the mandatory first-line header is present and correctly formatted.

EXTINF syntax

Checks every #EXTINF tag for correct duration, comma separator, and valid attribute format.

Stream URLs

Detects empty URLs, URLs with whitespace, and flags HTTP (non-HTTPS) streams.

Duplicate channels

Identifies entries where two or more channels point to the same stream URL.

Metadata coverage

Reports what percentage of channels have logos, tvg-id, and tvg-name attributes.

Group structure

Lists all group-title values and channel counts per group for a full playlist overview.