Compare two subtitle files, free

Put a translated SRT or VTT file beside the source file it came from. This finds the mechanical faults before you deliver: a line that is missing, a line that was never translated, and lines that were merged or split so the two files no longer agree.

Runs in your browser. The files are never uploaded.

Source file

No file chosen

Translated file

No file chosen

Why a normal subtitle diff cannot check a translation

A normal subtitle comparison tool puts line 1 beside line 1, line 2 beside line 2, and reports where the text differs. That is the right tool for two versions of the same language.

It cannot check a translation, for two reasons.

This tool matches lines by the time they appear on screen instead. A join stays a join, the lines after it still line up, and it reads the language of each line, so a line left in the source language is named as a fault rather than reported as a match.

Matching by positionMatching by time
Warnings raised12710
Warnings that were wrong1230
Lines left in the source languagenot detecteddetected
Merged and split linesreported as differencesnamed as merges and splits

One file of 187 lines, with 5 real faults, 3 merges and 2 splits put into a correct translation. Measured over 12 language pairs and 2.244 lines, with the same result in each. On correct files this tool raises no warnings at all.

What it checks

Questions

Are my files uploaded anywhere?

No. The comparison runs inside this page on your own computer. Nothing is sent to a server, so a film under embargo does not leave your machine.

Which formats does it read?

SubRip (.srt) and WebVTT (.vtt). You can compare an SRT file against a VTT file.

Do I have to say which languages the files are in?

No. It reads the language of each file by itself.

How does it decide two lines are the same line?

By the time each line is on screen. Two lines are the same line when they cover the same moment in the video, so joining or dividing lines does not push everything out of step.

Is anything it cannot find?

Yes, and it is worth knowing. A line of almost only numbers, such as Car 255, seat 141, left untranslated cannot be detected. There is nothing in a line like that for any tool to read. It also does not judge whether a translation reads well. It reports only what can be checked mechanically.

Keeping the result

This page is free and stays free. It shows you the faults and forgets them when you close it.

If you check subtitles as a job, the thing you actually need is the record: a saved, dated report for each delivery that you can send to your client, a history per project, and a way to run a whole folder at once. That is the paid version, and I am building it now.