Subtitle guide Subtitle sync fixes

Why your SRT file is not working


TL;DR — Diagnose an SRT file that is not working by checking timestamps, cue order, encoding, file naming, and player support before upload or playback.

Related tool

SRT Validator Online

Open SRT validator

An SRT file can stop working for several different reasons. The fix depends on whether the file is broken, the player expects a different format, or the video app simply is not loading the track.

Quick answer

Start with SRT Validator to check cue numbers, timestamp format, cue order, and overlaps. If the file is valid but still does not show, check the player requirements, filename, encoding, and whether you actually need WebVTT instead of SRT.

First split the problem into four checks

Do not edit every line at once. Work through these checks in order:

  1. File structure: SRT cue numbers, blank lines, and timestamps are parseable.
  2. Timing: cues are sorted, not overlapping, and not outside the video duration.
  3. Text encoding: accents or non-English characters are saved as UTF-8.
  4. Player support: the destination accepts SRT, or you need to convert to VTT.

This keeps you from rewriting good subtitle text when the real issue is a filename or format mismatch.

Check the SRT timestamp format

SRT timestamps should use commas for milliseconds:

00:01:12,500 --> 00:01:15,200

WebVTT uses dots instead:

00:01:12.500 --> 00:01:15.200

If your SRT file uses WebVTT-style dots, missing arrows, or malformed time values, many players will ignore the cue. Use Fix SRT Timestamps when the timing lines are the obvious problem.

Check cue order and overlaps

Players can behave unpredictably when cue times overlap or appear out of order:

2
00:00:08,000 --> 00:00:12,000
Second caption

3
00:00:10,500 --> 00:00:14,000
Overlapping caption

For overlap problems, read How to fix overlapping subtitles or use the validator to locate the first bad cue before editing the whole file.

Check encoding when text looks broken

If the subtitles load but characters look garbled, the SRT file may not be UTF-8. This is common with older exports from desktop editors.

Use Subtitle Encoding Fixer or read How to fix garbled subtitles before manually replacing characters.

Check filename and track loading

For local playback, many media apps expect the subtitle file to sit beside the video and use the same base filename:

movie.mp4
movie.srt

If the SRT file is named differently, the player may not load it automatically. You can still load it manually in many apps, but automatic detection usually depends on naming.

For Plex-specific naming problems, use How to name subtitle files for Plex.

Check whether the destination needs VTT

Browser players often prefer or require WebVTT. If you are adding captions to HTML5 video, Video.js, JW Player, or another web embed, convert the SRT file to VTT instead of trying to force SRT into the player.

Start with How to convert SRT to VTT for HTML5 video or open SRT to VTT Converter.

When upload is the real problem

If the SRT file fails during upload, the issue may be stricter platform validation rather than playback. For that path, use Why your SRT file will not upload or Best SRT settings for YouTube upload.

Use the SRT Validator Online

Validate SRT subtitles online and check upload errors, timestamp format, cue order, and numbering. No signup, no upload, and everything runs locally in the browser.

Open SRT validator