SRT and VTT Validator — Find and Fix Subtitle File Errors

Drop an SRT or VTT file and the validator lists every problem with the row or line it is on: unreadable timestamps, a missing WEBVTT header, cues stuck together, overlaps, broken numbering, the wrong encoding. Order, overlaps and empty lines are fixed in one click; the rest is fixed when you export.

Nothing is uploadedThe file is read and rewritten on your own device.
No account neededEdit and export SRT, VTT and TXT free. MP4: the first 90 seconds, with a small watermark.
SRT and VTT in — SRT, VTT or MP4 outSRT, VTT or SBV subtitle files

Validate a subtitle file

or drop a file anywhere on this card

SRT, VTT

SRT, VTT or SBV subtitle files

No subtitle file?

Files are processed in your browser and never uploaded

Everything the Validator Checks

Problems come in three levels. An error means players will skip lines or reject the file; a warning means some players will; a tip is a readability limit that never breaks playback. This is the full list, in the order the check sorts it.

ProblemLevelWhat happens and how to fix it
Characters shown as �ErrorThe text was saved in another encoding and these letters are lost. Re-save the original file as UTF-8 and open it again.
A .vtt file without the WEBVTT lineErrorBrowsers and most video platforms reject the file. Export as VTT and the header is added.
Commas in VTT timestampsErrorWebVTT needs a dot before the milliseconds, and browsers drop cues with a comma. Export as VTT rewrites every timestamp.
An unreadable time lineErrorUsually a typo, such as a missing colon or a single dash instead of -->. The cue is skipped; the check gives the file row so you can retype it.
Text without a time lineErrorPlayers skip it. It is often a stray paragraph or a line break where a blank line should be.
Two cues with no blank line between themErrorThe second cue is read as text of the first. Add the blank line in the original file and open it again.
A line that ends before it startsErrorNothing is shown. Correct the end time.
A line that starts earlier than the one aboveErrorPlayers may skip it. Sort lines by time puts the file in order.
A file not saved as UTF-8WarningIt is read as Windows-1252. Check accented letters; the exported file is UTF-8.
An .srt file with WebVTT insideWarningSRT players may not read it. Export as SRT to convert it.
SRT times not in the 00:00:00,000 formWarningHours missing or a dot instead of the comma. Many players and YouTube still read it; strict ones do not. Export rewrites the times.
Cue numbers out of sequence or missingWarningExport numbers every cue again from 1.
Overlapping linesWarningTwo lines are on screen at once. Fix overlaps ends each line just before the next one starts.
Empty cuesWarningNothing is shown. Remove empty lines deletes them.
A UTF-8 BOM at the startTipMost players accept it; a few old ones show stray characters. Exported files have no BOM.
More than 2 rows, over 42 characters in a row, over 20 characters per second, under 0.83 s or over 7 s on screenTipPlayback is fine, but the line is hard to read. Shorten, split or merge it, or hide tips with Show readability tips.

Problems in the file itself are found once, when it is opened; problems with lines are checked again live as you edit, and the count on the Check button follows. The tip limits are common ones in professional subtitle guidelines — a platform you deliver to may set its own.

Why a Player Rejects a Subtitle File

Most “my subtitles won’t load” cases come down to one of three things.

Format

It isn’t the format its name says

A .vtt that is really SRT, or an .srt with WebVTT inside. Renaming a file doesn’t convert it; exporting does: the header, cue numbers and timestamp style are written for the format you pick.

Encoding

Accents turn into é or �

Older subtitle files are often saved in a Windows encoding rather than UTF-8. The validator reads the common Windows one and tells you so; letters already shown as � are lost and need the original file.

Structure

One missing blank line

SRT and VTT separate cues with an empty line. Lose one and two subtitles become one, with a time line shown as text on screen. Hand edits in a text editor are the usual cause.

How to Validate an SRT or VTT File

Three steps, all in your browser.

Open the file

Drop the SRT, VTT or SBV on the validator. The Check window opens on its own with a summary of errors, warnings and tips.

Work through the list

Click a problem to jump to its line. Use Sort lines by time, Fix overlaps or Remove empty lines where they appear, and correct the rest in the editor.

Export a clean file

Export SRT or VTT: numbering, timestamps and the header are written correctly, in UTF-8. Open Check again at any point to see what is left.

No subtitle file yet?

Generate subtitles with AI30 free minutes · No credit card
Subtitles written for you
Translated, timing kept

Sign up free and AI writes timed subtitles from the speech in 120+ languages — then fix them here or in the app.

Subtitles written for you

Translate the finished subtitles into 50+ languages and download each language as its own SRT or VTT.

Translated, timing kept

Frequently Asked Questions

Validating subtitle files: common questions.

All questions
Open it here. The validator reads the whole file and lists errors, warnings and readability tips, each with the row or line it is on. “No problems found” means every cue will be read and every line is within the usual limits.
Most often a missing WEBVTT line at the top, or commas instead of dots in the timestamps — exactly what you get when an SRT file is renamed to .vtt. Browsers reject the first and skip cues with the second. Exporting as VTT fixes both.
Partly. Order, overlaps and empty lines are fixed in one click; numbering, timestamp form, the VTT header and encoding are fixed on export. Broken time lines and missing blank lines need a quick fix by hand, because only you know the right time.
The file was saved in another encoding, usually Windows-1252 from older Windows software. It is read anyway; check a few accented words, then export to get a UTF-8 file.
No. A row of 45 characters or a line shown for 8 seconds plays fine; tips only flag lines that are hard to read. Switch them off with Show readability tips.
No. It is read and checked in your browser.