WebVTT troubleshooting

WebVTT captions appear in the wrong cue order

Compare cue start times after the export rather than relying on labels or row numbers.

Compare cue start times after the export rather than relying on labels or row numbers.

Reproduce the condition

The WebVTT sample below is a small synthetic file. It carries no active media source or account data.

WEBVTT

00:00:04.000 --> 00:00:05.000
Later

00:00:02.000 --> 00:00:03.000
Earlier

What the local check found

Reproducible check against the packaged fixture and parser.
Expected signalObserved signal
Cue starts are out of orderCue starts are out of order

What to do next

Sort by the actual start times in the authoring tool. Keep the correct text and timings together.

What to share if the problem continues

  • The exact parser result and version of the importer or player.
  • A minimal redacted sample with dates, IDs or segment names retained as needed.
  • The output after checking the source export separately from the viewer app.

Sort cues by start time

WebVTT cue identifiers label entries for the editor. The timing line gives the start time. If a subtitle exporter places a cue starting at 00:07.400 before one starting at 00:06.800, inspect the sort or edit that produced the timing lines. Reorder by start time while keeping each cue’s end time and text together.

Check that the end of each cue is after its own start. Two cues can overlap in normal subtitle or caption tracks. A speaker caption beginning at 00:06.800 can overlap a separate sound cue beginning at 00:07.400 without the file being out of order. Chapter cues have additional restrictions, so check what kind of track you are exporting.

Cue order as storedResult for a subtitle track
06.800 to 08.000, then 07.400 to 09.000Starts are sorted. The two cues overlap
07.400 to 09.000, then 06.800 to 08.000Starts are out of order
06.800 to 06.800Cue has no duration
06.800 to 08.000, then 06.800 to 07.100Equal starts are allowed for subtitle cues

Retest at the boundary that exposed the error

Save a separate UTF-8 copy with the WEBVTT header and reopen it in a supported player. Replay just before the first affected cue and through the overlap. Confirm that the intended two pieces of text appear and disappear on their own timings. If a title has two editions, compare the exact cut you are editing before moving timestamps.

Sources and further reading