What this does
A subtitle file can look perfect in an editor and still be unreadable on screen: cues that vanish before the eye can finish them, lines that run past the edge of the frame, two cues on screen at once. This checker measures every cue against the limits broadcasters and streaming platforms actually use and lists the ones that break them.
How to use it
- Paste your subtitle file, or drop the
.srt/.vttfile onto the box. - Adjust the limits if you are working to a specific style guide.
- Read the report, then open the flagged timestamps in your editor and fix them.
Good to know
- Characters per second counts every character including spaces, which is the convention used by most delivery specifications.
- Formatting tags such as
<i>and ASS overrides are stripped before measuring, so styling does not inflate the count. - An overlap is reported when the next cue starts before the current one ends. Sub-frame overlaps are ignored, because rounding produces them harmlessly.
- The default limits match common streaming practice. Broadcast guides are often stricter — some sit at 16 or 17 CPS.
- The report is a finding list, not a fix. Timing changes are yours to make; use the shift or resync tools when the whole track needs the same correction.
The four things that make subtitles unreadable
Reading speed is measured in characters per second (CPS). Most style guides land between 12 and 21 CPS; 20 is a common hard ceiling for streaming delivery. A cue at 30 CPS is technically valid and completely unreadable, which is why no player will ever warn you about it.
Minimum duration stops the opposite failure — a two-word cue that flashes for 300 milliseconds. Even a short line needs roughly 0.8 seconds on screen because the eye needs time to find the text at all, not just to read it. The usual floor is about five-sixths of a second.
Maximum duration catches the cue that nobody noticed was left on screen for twelve seconds. Viewers re-read a subtitle that never changes and assume it is broken, so seven seconds is a practical ceiling even when the dialogue continues.
Line length and line count are about layout rather than timing. Around 40–42 characters per line and two lines per cue is what fits comfortably on a phone in portrait. Wider than that and the player either wraps or clips, and neither is under your control after upload.
Worked example
Input — .srt
1 00:00:01,000 --> 00:00:02,200 The quick brown fox jumps over the extremely lazy dog tonight 2 00:00:02,100 --> 00:00:02,400 Hi.
Output — report
Subtitle timing report
======================
2 cues checked · 2 flagged (100%)
Too fast (> 20.0 CPS) 1
Line too long (> 42 chars) 1
Too short (< 0.83s) 1
Overlapping cues 1
--- Flagged cues ---
#0001 00:00:01,000 -> 00:00:02,200 (1.20s, 61.7 CPS)
The quick brown fox jumps over the extremely lazy dog tonight
! too fast — 61.7 CPS (max 20.0); line too long — 61 chars (max 42)
Cue 1 carries 74 characters in 1.2 seconds. Cue 2 is both too short and starts before cue 1 has ended — the report catches all three problems at once.
FAQ
What CPS should I aim for?
Why is my minimum duration flagged when the cue is one word?
Does it count formatting tags?
Can it fix the problems it finds?
Are the reported overlaps real?
Is there a cue limit?
Troubleshooting
- The report is emptyNo cues were recognised. Check that the file uses
-->between timestamps — a plain transcript or an SBV file will not parse. - Nothing is flagged but the subtitles still feel rushedRaise the sensitivity by lowering the CPS limit. The default of 20 is a delivery ceiling, not a comfort target; many editors work to 16 or 17.
- Almost every cue is flaggedThe file may be auto-generated caption output with no line balancing. Run it through the clean subtitles tool first, then re-check.
- Durations look wrongThe checker reads the timestamps as written. If the whole track is offset, fix it with the shift tool before checking.
- Counts do not add up to the flagged totalOne cue can break several rules at once. The summary counts rule violations; the flagged list counts cues.
Related tools
Subtitle Timing Checker
Audit an SRT or VTT file for cues that are too fast, too short, too long or overlapping.
Resync Subtitles by Frame Rate or Speed
Fix subtitles that drift progressively out of sync by resampling them to your video's frame rate or playback speed.
Shift Subtitle Timing
Move every subtitle cue earlier or later to fix out-of-sync captions.