Tools

SRT to VTT Converter

Convert SRT and WebVTT subtitles and fix their timing

🔒 Subtitles are converted in your browser; nothing is uploaded.

Drop an .srt or .vtt subtitle file or tap to choose · or paste below

How to convert SRT to VTT (and back)

  1. Drop a .srt or .vtt file or paste the subtitles. Files in UTF-8 or older Windows encodings are read correctly.
  2. Choose the output format. SRT files are converted to WebVTT by default, and VTT to SRT.
  3. If the subtitles are out of sync, shift them earlier (negative seconds) or later (positive). Use the frame-rate fix when subtitles drift further out of sync over time.
  4. Download the converted file or copy the text.

SRT versus WebVTT

SubRip (.srt) is the most widely supported subtitle format: numbered cues with times like 00:01:02,500 and the text. WebVTT (.vtt) is the W3C standard for HTML5 video: it starts with a WEBVTT header, uses a full stop before milliseconds, and supports cue settings such as position and alignment. The <track> element in web pages, and players such as YouTube, Vimeo and many LMS platforms, prefer VTT; TV software, VLC and video editors often prefer SRT. Conversion keeps your text, line breaks and timing, and preserves VTT cue settings when converting to VTT.

Out-of-sync subtitles usually have a constant offset (fixed with a shift) or a frame-rate mismatch: subtitles made for a 23.976 fps release played on a 25 fps PAL version drift by about 4% (2.5 minutes per hour). The frame-rate fix rescales every timestamp. Cues that would move before 0:00 are removed. Everything is processed in your browser.

How do I add a VTT file to an HTML video?

Use <track src="subs.vtt" kind="subtitles" srclang="en" label="English"> inside the <video> element.

My subtitles appear 2 seconds early. What do I enter?

Enter 2 to delay them by two seconds.

Are formatting tags kept?

Yes, unless you tick "Remove formatting tags", which strips <i>, <b>, <font> and {\an8}-style codes.