Audio & video tools · free · no signup

SRT to VTT Subtitle Converter

Convert SRT subtitles to WebVTT or plain text transcript with millisecond time shift and clean formatting. Your files are never uploaded to our servers. ToolkitPoint processes them on your own computer, so confidential documents stay with you.

Free to useNo accountClear results
Preparing tool…
Simple, transparent workflow

How to use SRT to VTT Subtitle Converter

  1. Upload a .srt, .vtt, .sbv, .ass, or .txt via "Upload Subtitle File", or paste cues into "Source Subtitles (SRT / VTT)"; "Load Sample SRT" fills a demo.
  2. Set "Conversion Target": "SRT to WebVTT (.vtt)", "WebVTT to SRT (.srt)" or "Plain Text Transcript (No Timestamps)". Uploading a .vtt file switches this to WebVTT to SRT for you.
  3. Enter a positive or negative number of milliseconds in "Time Shift Offset (Milliseconds)" to move every cue; "Reset" sets it back to 0.
  4. Adjust "Strip HTML/Font styling tags", "Re-sequence Cue Numbers (1, 2, 3...)" and "Remove Empty Cues".
  5. Press "Convert Subtitles", edit start/end times or dialogue text in the "Interactive Cue-List Editor" if needed, check the "Converted Output Preview" and cue badge, then use "Download Converted File" or "Copy to Clipboard".

Worked example

Paste the cue 00:01:05,400 --> 00:01:08,000 with the text Hello there, keep "SRT to WebVTT (.vtt)", and enter -2000 as the shift. The output begins WEBVTT, then 1, then 00:01:03.400 --> 00:01:06.000 and Hello there. The badge says 1 cues, and the download is named subtitles.vtt.

When to use this tool

  • Converting an SRT export from an editor into a WebVTT track for an HTML video element.
  • Re-syncing subtitles that run two seconds late with a -2000 offset.
  • Extracting a plain transcript from a subtitle file for a blog post.

Important limitations

Parses standard SubRip (.srt) and WebVTT (.vtt) cue blocks. Non-standard proprietary binary subtitle formats (such as PGS or VobSub) must first be converted to text-based SRT before synchronization.

Comparing alternatives

Other options for srt to vtt subtitle converter include HappyScribe, VEED, SubtitleTools, Rev.

ToolkitPoint is not affiliated with those services.

Frequently asked questions

What differs between SRT and WebVTT?

SRT separates milliseconds with a comma and has no header. WebVTT uses a period and starts with a WEBVTT line. This tool rewrites the timing lines and adds the header "WEBVTT - Converted by ToolkitPoint".

What happens to cue settings, notes and styles in VTT files?

Only the start time, end time and text lines of each cue are read, so positioning such as align:start and NOTE, STYLE and REGION blocks are dropped from the converted file.

Do all cue timings get recognized?

Yes. Hours are optional, so short timings like 01:05.400 are read. In addition to SRT and WebVTT, YouTube SBV (0:00:01.000,0:00:04.000) and SubStation Alpha / Advanced SubStation (SSA/ASS Dialogue: lines) formats are supported. ASS/SSA override styling tags ({\b1}, {\pos}, {\c}) are stripped to clean dialogue text with a visible count of dropped tags. An interactive cue list allows editing start/end times and text before download.

How does a negative time shift behave?

The value is added to both start and end. Times that would fall below zero are clamped to 00:00:00, so shifting too far back can make early cues start together.

Why did my numbering change?

SRT output is always renumbered from 1. For WebVTT output, numbers appear only when "Re-sequence Cue Numbers" is ticked; original identifiers are discarded either way. Beyond the basic converter you can also convert many files at once to a ZIP, resync with two points or a frame-rate change, run a check for overlaps and fast reading, edit cues directly in the cue list, and preview against a local video; UTF-16 and Windows-1252 files are detected and decoded.