Image & Media

Free Subtitle Validator: Check SRT & VTT Files Online

Check your SRT and WebVTT subtitle files for formatting errors, invalid timestamps, overlapping captions and readability problems. Review detailed findings, fix common issues and download a corrected file with our free online subtitle validator.

or drag and drop an .srt or .vtt file here (up to 5 MiB). It is read in your browser and never uploaded.

The file is checked as soon as you choose it; pasted text is checked as you type.

Rule settings 42 characters · 2 lines · 20 CPS · 0.8–7 s

These are general-purpose defaults, not the rules of any particular platform. Change them to match your style guide; the results update straight away.

How it works

  1. Add your file. Choose or drop an .srt or .vtt file, or paste the subtitle text. It stays in your browser.

  2. Check the format. SRT or WebVTT is detected automatically; choose it yourself if the detection is unsure.

  3. Adjust the rules. Change line length, lines per cue, reading speed and durations in Rule settings to match your style guide.

  4. Review the findings. Filter errors and warnings, and open any finding to see that cue in your file.

  5. Fix and download. Preview a corrected copy, tick any optional fixes, and download it once it has been checked again.

  6. Keep the report. Copy it, or download it as CSV or plain text.

What Does the Subtitle Validator Check?

It reads SRT and WebVTT files the way a player does and reports anything that could stop a cue from showing, show it at the wrong time, or make it hard to read. Errors mean the file is malformed or its timing cannot work as written; warnings are readability and quality concerns that players still accept.

File structure

For SRT, the sequence number, timing line and text of every cue, and the blank line between cues. For WebVTT, the WEBVTT header, optional cue identifiers, cue settings, and NOTE, STYLE and REGION blocks. Lines that belong to no cue, empty cues and missing blank lines are reported with their line number.

Timestamps

SRT timestamps are written HH:MM:SS,mmm with a comma; WebVTT uses a full stop and may leave out the hours. The checker reports the wrong separator, missing or one-digit hours, milliseconds without exactly three digits, minutes or seconds above 59, negative times and a missing space around the --> arrow.

Timing and overlaps

Cues that end before they start, have no duration or are out of order are errors. Overlapping cues are warnings, because some workflows show two captions at once on purpose. Cues shorter than 0.8 seconds or longer than 7 seconds, and an optional minimum gap between cues, are also reported as warnings.

Reading speed

Reading speed is measured in characters per second (CPS): the characters a viewer sees, without formatting tags, divided by how long the cue is on screen. The default limit is 20 CPS.

Line length and lines per cue

By default a line may have up to 42 characters and a cue up to two lines. Characters are counted as people read them, so an emoji or a Chinese character counts once.

Encoding and hidden characters

Files are read as UTF-8, with or without a byte-order mark, and UTF-16 files with a byte-order mark are read too. If a file is not valid UTF-8, the checker shows the line and lets you choose to read it as Windows-1252, instead of silently replacing characters. Spaces around text, invisible control characters, mixed line endings and repeated adjacent captions are reported as well.

All limits are configurable general-purpose defaults, not the rules of any particular platform. Change them in Rule settings to match your style guide.

Common Subtitle Errors and How to Fix Them

  • Wrong millisecond separator. 00:00:01.000 in an SRT file, or 00:00:01,000 in WebVTT. The corrected file rewrites it without changing the time.

  • Missing WEBVTT header. A WebVTT file must start with the line WEBVTT. The corrected file adds it.

  • Missing blank line between cues. Players may read two cues as one. The corrected file adds the blank line and renumbers SRT cues.

  • End time before start time. Usually a typing mistake. Correct it in your subtitle editor; the checker never guesses a new time.

  • Overlapping cues. If the overlap is not intended, the optional fix ends each cue when the next one starts.

  • Reading speed too high. Shorten the text, or keep the cue on screen for longer.

  • Lines too long. The optional rewrap fix re-breaks long lines; dialogue cues are left as they are.

  • Unreadable characters. The file is not saved as UTF-8. Re-save it as UTF-8 in your subtitle editor.

If you burn captions into vertical videos, also check that the app interface will not cover them with the Social Video Safe Zone Checker.

SRT vs VTT: Which Format Should You Use?

SRTWebVTT
First lineThe first cue numberWEBVTT
Timestamps00:00:01,000 (comma)00:00:01.000 (full stop); hours optional
Cue numbersRequiredOptional identifiers
PositioningNot part of the formatCue settings such as line, position and align
StylingBasic tags such as <i> in many playersTags, plus CSS in STYLE blocks
CommentsNoNOTE blocks

SRT is the simpler format and is widely accepted by video editors and upload forms. WebVTT is the format HTML video players use with the <track> element, and it adds positioning, styling and comments. Check which formats your platform accepts: the corrected file can be saved in either format, and anything SRT cannot hold is listed before you download.

Softphoria builds tools like this one into websites and business systems. If your team needs a custom subtitle workflow or another web tool, see our custom software service.

FAQ

Common questions

What is a subtitle validator?

A tool that checks a subtitle file's format and timing before you publish it. This one reads SRT and WebVTT files and reports structural errors, invalid timestamps, overlaps and readability problems, with the cue and line where each one is.

How do I validate an SRT file online?

Choose or drop the .srt file at the top of this page, or paste its text. It is checked straight away. Review the findings, then download a corrected copy or the report.

Can I check VTT and WebVTT files?

Yes. .vtt and .webvtt files are checked as WebVTT, including the WEBVTT header, cue identifiers, cue settings and NOTE, STYLE and REGION blocks.

What causes invalid SRT timestamps?

Most often a full stop instead of a comma before the milliseconds, missing hours, milliseconds without three digits, or no space around the arrow. The correct form is HH:MM:SS,mmm --> HH:MM:SS,mmm, for example 00:01:02,500 --> 00:01:04,000.

How do I fix overlapping subtitles?

Make each cue end at or before the moment the next one starts. The optional "Trim overlapping cues" fix does this by shortening the earlier cue. Leave an overlap alone if two captions are meant to show at the same time.

What is a good subtitle reading speed in CPS?

There is no single standard. Many style guides set a limit somewhere around 15 to 20 characters per second, and lower for young audiences. The default here is 20 CPS; change it in Rule settings to match your guide.

How many characters should a subtitle line contain?

A common guideline is up to about 42 characters per line and two lines per cue, which is this checker's default. Some guides use fewer, and languages such as Chinese or Japanese use much lower limits, so set your own in Rule settings.

Can the tool fix subtitle errors automatically?

Some. Formatting problems such as a missing WEBVTT header, numbering, blank lines and timestamp separators are fixed without changing what is shown or when. Fixes that change text, order or timing, such as removing empty cues, sorting, merging repeats, trimming overlaps or rewrapping lines, are only applied if you tick them. Problems that need a decision, such as an end time before the start, are left for you to correct.

Are subtitle files uploaded or stored on a server?

No. The file is read and checked in your browser and is not sent to our server or stored. The page still loads its own files, and if you accept analytics cookies it records anonymous events such as a completed check, never the file name or its text.

Does a clean report guarantee platform acceptance?

No. It means the file is well-formed and meets the rules you set. Video platforms have their own requirements and can change them, so check their current guidelines too.

Can the tool check subtitles against spoken audio?

No. It checks the file itself: format, timing and readability. It cannot hear the video, so it cannot tell whether the words or timing match what is said.

Does the tool support ASS and SSA?

Not at the moment: it checks SRT and WebVTT only. Convert ASS or SSA files to SRT or WebVTT in your subtitle editor first; styling those formats cannot hold may be lost.

All tools
Image & Media

Social Video Safe Zone Checker

Check whether the like buttons, captions and top bar of Instagram Reels and YouTube Shorts will cover the text, faces or logos in your vertical video.

Image & Media

Image Requirements Checker

Check image dimensions, aspect ratio, file format, file size, crop compatibility and platform requirements before you publish.

Need a Custom Web Tool or Business Application?

Softphoria builds custom web applications, business tools, integrations and content platforms tailored to your workflow.

Discuss your project

Quick contact

Let's start a conversation

Tell us a little about what you need — we'll get back to you personally.

Prefer the full form?

We use your details only to respond to your enquiry and never sell them. See our Privacy Policy.