Free Tool
SRT Validator
Drop an .srt file and get a list of errors and warnings with the block number for each one. Runs in your browser — the file is never uploaded.
- Runs in your browser
- Nothing uploaded
- No signup
Drop your file here
or
Supports .srt, .vtt, .txt files
Add SRT files (2+)
Result
How it works
SRT Validator in three steps
Drop Your SRT File
Drag and drop or browse to select an SRT subtitle file from your computer.
Instant Validation
The validator checks sequence numbers, timestamp format, timing overlaps, and empty cues.
Review Results
See a clear report of errors and warnings with line numbers for easy fixing.
Why a player refuses to load your subtitles
SubRip is unforgiving about small things. A period instead of a comma in the milliseconds, a missing sequence number, a stray blank line — and the player either skips part of the file or shows nothing at all. It almost never tells you why: the subtitles simply do not appear.
This validator walks the file block by block and tells you what is wrong and exactly where. The check runs in your browser; the file is never uploaded.
What gets checked
Flagged as errors: a block with fewer than two lines, a missing or unreadable sequence number, a missing or unparseable timecode line, and an end time that is not after the start time. Flagged as warnings: a sequence number out of order, a timecode that is not in hh:mm:ss,mmm form, an overlap with the previous cue, empty subtitle text, and a cue that stays on screen longer than 15 seconds.
The split matters. An error usually means the file will not load or will silently lose blocks. A warning means the file works but a viewer will notice something is off — a subtitle hanging too long, or two cues stacking on top of each other.
What to do with the report
Small fixes are easiest by hand: the report gives you block numbers, and an .srt opens in any text editor. If overlaps run through the whole file, rebuilding it is usually faster than patching cue by cue.
If the structure checks out but the subtitles still drift against the speech, the format is not the problem — use the time shift tool, which moves every timecode at once. And if the file was assembled from several parts, look at the joins first: that is where overlaps normally appear.
How fast can subtitles be read?
For English adult programs, the Netflix Timed Text Style Guide allows up to 20 characters per second and 42 characters per line, and for children's programs up to 17 characters per second. The BBC Subtitle Guidelines state the same limit in words, 160 to 180 words per minute, while the DCMP Captioning Key, written for educational media, asks for no more than 130 words per minute at lower level and 160 at upper level.
The reading-speed check above measures your file against whichever guide you pick. It runs separately from the format check: a file can be perfectly valid SRT and still flash a long sentence past faster than anyone can read it.
| Guide | Reading speed | Characters per line | Lines | Time on screen |
|---|---|---|---|---|
| Netflix, English (USA), adult programs | up to 20 characters per second | 42 | 2 | 5/6 of a second minimum, 7 seconds maximum |
| Netflix, English (USA), children's programs | up to 17 characters per second | 42 | 2 | 5/6 of a second minimum, 7 seconds maximum |
| BBC Subtitle Guidelines | 160 to 180 words per minute | 37 for broadcast | 2 | at least about 0.3 seconds per word |
| DCMP Captioning Key | 130 (lower level) to 160 (upper level) words per minute | no limit given | 2 | 40 frames (1 second 10 frames) minimum, 6 seconds maximum |
How the check counts
Characters per second is the length of a cue's text divided by its time on screen. The validator removes markup such as <i> and {\an8}, counts spaces and punctuation, and does not count the line break. For the BBC and DCMP guides it counts words instead, because that is how those guides state their limit, and it checks only the limits each guide actually sets.
What our own auto-timing produces
We ran the Gettysburg Address, split into its ten paragraphs, through our TXT to SRT tool, which times text at 150 words per minute and holds every cue between 2 and 8 seconds. The two short paragraphs, 10 and 11 words, came out at 11.8 and 13.4 characters per second, comfortably inside the Netflix adult limit. Every paragraph longer than 20 words hit the 8-second cap, which is already over the 7-second Netflix maximum and the 6-second DCMP maximum, and the closing 86-word paragraph landed at 56.0 characters per second, nearly three times the limit. Split long paragraphs into short lines before generating, then run the result through this check.
Answers
SRT validation — frequently asked questions
What is the difference between an error and a warning?
An error means the block breaks the format and the player will most likely drop it or refuse the file. A warning means the file still works but something is off-spec: numbering out of order, cues overlapping, or one cue sitting on screen far too long.
Why is a timecode with a period a problem?
Because SubRip separates milliseconds with a comma; the period is the WebVTT convention. Many players will still open such a file, but some tools reject it outright, so the validator points it out.
What counts as an overlap?
A cue that starts before the previous one has ended. On screen it looks like two lines at once or like flickering text. The report shows both the start time of the current cue and the end time of the previous one.
Why is a duration over 15 seconds flagged?
It is not a format violation, it is a quality note: a cue on screen for more than fifteen seconds usually means two blocks were merged or the end timecode is wrong. The file itself remains perfectly valid.
Is my file uploaded to a server?
No. Parsing happens in your browser and the file is never transmitted or stored, so you can check confidential material safely.
Does the validator fix the errors?
No, it only reports them with block numbers. Corrections are made by hand in a text editor — SubRip files are simple enough for that.
Can I validate a .vtt file?
The validator targets SubRip. Convert a WebVTT file with the VTT to SRT converter first, then check the result here.
The file passes but the subtitles still do not match the speech
Then the format is fine and the timing is not: the file was made for a different cut of the video. That is what the subtitle time shift tool is for — it moves every timecode at once.
What is a good characters-per-second rate for subtitles?
For English adult programs, the Netflix Timed Text Style Guide allows up to 20 characters per second, and 17 for children's programs. Pick that standard in the reading-speed check and every faster cue is listed with its block number, together with lines over 42 characters and cues shorter than 5/6 of a second or longer than 7 seconds.
Need Full Transcription?
Upload audio or paste a YouTube link and get a full AI transcript with speaker labels, timestamps, and summaries.
Free on iOS and Android. No account required.