PCPlaylistChecker

English guide

M3U compare: two providers, one screen, real numbers

Switching providers is usually a guess: “this one feels bigger”. This tool answers it with counts instead of feelings — how many channels and categories each list has, which categories exist only on one side, how much EPG coverage each one carries, and how the two compare on response time for the same channel names.

Open the M3U comparison →

Compare two playlists

Load two providers’ playlists as A/B: channel and category counts, shared/missing categories, EPG (tvg-id) coverage and a sample speed test in one screen. You can also compare an old and a current list of the same panel to see added, removed and changed channels.

A vs B · speed test

List A · provider 1

not loaded

List B · provider 2

not loaded
Load both playlists and compare.

Comparing two lists properly

  1. 1. Load list A and list B

    Paste one link per side or pick two files. As soon as both are loaded you get the summary: channel count, category count, duplicate URLs, tvg-id and logo coverage, plus the categories that exist on only one side.

  2. 2. Choose the matching key

    Same panel, two dates: match by stream URL — it is exact. A new provider: match by channel name, because the addresses changed while the names stayed. With good EPG ids, tvg-id gives the cleanest pairing.

  3. 3. Read added, removed and changed

    “Changed” means the same key with a different name, category, logo or tvg-id — each changed field is shown on the row, so a renamed category does not look like a new channel.

  4. 4. Run the sampled speed test

    Pick 25, 50, 100 or 200 channels from the start of the list or at random; they are tested in batches of 20 and reported as online ratio plus average, median and p95 response time per list. In the common-channels mode the same names are paired, so you see channel-by-channel differences (A 120 ms vs B 340 ms).

  5. 5. Export what you need

    Download only the added channels, only the removed ones, or the whole new list as .m3u — the “add just the new channels” scenario after a provider switch. Credentials in the CSV are masked.

Why a list may refuse to load

  • • 401 / 403 / 512 on get.php — The panel blocks the M3U endpoint; the “⚡ Panel API ile getir” option rebuilds the list from player_api.php instead.
  • • Movies on demand — Live channels come in one request; films are fetched page by page in groups of 12 categories to keep memory sane.
  • • CORS-blocked link — The file passes through a stateless proxy on its way to your browser; it is not written to disk.
  • • Sampled, not exhaustive — The speed test covers the sample you chose, not the whole catalogue — it is a quick verdict, not an audit.

Honest reading of the numbers

Counts tell you size, coverage tells you how much EPG you can expect, and the ping sample tells you about latency from our worker — not from your sofa, and not about video quality. A provider can win on channel count and lose on stability; the sample is there to catch the obvious cases cheaply. Files stay local, and only the sampled stream URLs are sent for testing.

FAQ

Can I compare two versions of the same list?+

Yes, and it is the second intended use: load yesterday and today, match by stream URL, and read what was added or removed.

Does the speed test cover every channel?+

No, it samples 25 to 200 channels in batches of 20 and reports online ratio, average, median and p95 per list. The common-channels mode compares the same names on both sides.

What does “changed” mean exactly?+

Same matching key but a different name, category, logo or tvg-id. The row shows which field changed, so renames and category moves are visible instead of being counted as new channels.

Are my lists stored?+

No. Files never leave the browser; a fetched link passes through a stateless proxy, and only the sampled addresses are used for the ping test.

Related guides · M3U analysis · Speed test · Türkçe

Next steps in the same flow

All →