Skip to main content
Echoryte

Free · No sign-up · Nothing uploaded

SRT to VTT Converter

Convert SRT to VTT free in your browser. Keeps every line and timestamp, adds the WEBVTT header, and downloads instantly. No upload, no sign-up, no watermark.

Open the tool
You get
VTT subtitle file
Runs
In your browser, on your device
Costs
Nothing, with no account

Private by design

Convert SRT to VTT

Your file stays on this device.

Output

.vtt file

We check the subtitle text and timing before preparing your download.

No upload. No sign-up.

Step by step

How to use it

  1. Pick your .srt file

    Drop in any SubRip file up to 5 MB. Nothing is sent anywhere — the file is read straight from your disk by the browser.

  2. Press Convert to VTT

    Every cue is checked as it converts. If a timestamp is malformed or two cues overlap, you get told exactly which one to fix.

  3. Download and attach

    Save the .vtt file and point your <track src="..."> at it, or load it into your player. Preview the text first if you want a quick sanity check.

  4. Test it in the player

    Load the page and check that captions appear. If the track is silent, the browser console usually names the cue it choked on.

What actually changes

subtitles.srt
1
00:00:04,120 --> 00:00:06,880
The tide came in before sunrise.
subtitles.vtt
WEBVTT

1
00:00:04.120 --> 00:00:06.880
The tide came in before sunrise.

The two real differences: a WEBVTT header on line one, and commas in timestamps become periods. Everything else survives untouched.

Features

Why use this one

  • Nothing leaves your device

    The conversion runs in JavaScript in this tab. Your subtitle file is never uploaded, queued, or stored on a server, so client work and unreleased footage stay private.

  • Validates before it downloads

    Empty cues, backwards timestamps, and overlapping lines are caught up front. You get a specific error instead of a .vtt file that silently fails in the player.

  • Instant, no queue

    There is no upload bar and no processing queue. A typical 40-minute subtitle file converts in well under a second, however many people are using the tool.

  • Unicode safe

    Chinese, Japanese, Arabic, Cyrillic, and accented Latin text all come through intact as UTF-8. A byte order mark on the source file is stripped automatically.

  • Works on phones too

    No install and no desktop app. The same converter runs in Safari on an iPhone as in Chrome on a laptop, which helps when you are fixing a file away from your edit machine.

  • Timing is preserved exactly

    Start and end times carry over to the millisecond. If your subtitles were in sync before the conversion, they are in sync after it.

HTML5 video players read WebVTT, not SubRip. So the moment you drop a `<track>` tag into a page, that perfectly good .srt file stops working. This SRT to VTT converter fixes that in about two seconds: pick your file, press convert, download the .vtt. Everything happens inside this browser tab, so nothing is uploaded and your original .srt is never touched.

Why a web player needs VTT and not SRT

SubRip (.srt) came from DVD ripping tools and stayed popular because it is simple. WebVTT (.vtt) is the format the HTML `<track>` element was actually specified around, and it is what browsers parse natively. A .vtt file has to open with the word WEBVTT, and its timestamps separate seconds from milliseconds with a period rather than a comma. Renaming subtitles.srt to subtitles.vtt does not add that header, which is why the rename trick usually ends with an empty caption track and no error message.

What carries over, and what does not

Cue text, line breaks within a cue, cue order, and start and end times all carry over exactly. Basic inline tags such as bold and italic are kept as-is, since both formats accept them. What this converter does not do is invent styling: it will not add positioning, regions, CSS classes, or custom fonts to the output. If your player needs captions parked at the top of the frame or coloured per speaker, add those cue settings afterwards in a text editor or in the subtitle editor.

Attaching the VTT file to your video

In HTML, a caption file is wired up with a track element nested inside your video element: give it kind="captions", the path to your .vtt in src, and a srclang such as "en" so the browser labels the option correctly. Add default if you want captions on from the start. One thing catches people out constantly: if the .vtt file is served from a different domain than the page, the browser blocks it unless that server sends the right cross-origin headers. Hosting the subtitle file next to the video, on the same origin, avoids the problem entirely. Video platforms and players such as Video.js, Plyr, and JW Player accept the same .vtt file through their own settings.

FAQ

Common questions

Can I just rename the .srt file to .vtt?

Almost never works. WebVTT requires the literal WEBVTT signature on the first line, and most browsers reject a track file without it. Renaming also leaves comma-separated timestamps in place, which the WebVTT parser does not accept. Converting properly takes less time than debugging the silent failure.

Does converting SRT to VTT reduce subtitle quality?

No. Both are plain text formats, so this is a translation of syntax rather than a re-encode. The words and the millisecond timings in the .vtt output are identical to the ones in your .srt input — there is no compression or generation loss involved.

Is there a file size limit?

Files up to 5 MB are accepted, which is far more than subtitles normally need. A dense two-hour feature film subtitle file is usually under 200 KB, so the limit only comes up if you have accidentally selected a video instead of a subtitle track.

My subtitles are out of sync in the player. Is that the conversion?

It is not — timings are copied verbatim. If every line is early or late by the same amount, the source file was already offset against this cut of the video, and Subtitle Sync will shift all cues at once. If the drift grows over the runtime, the subtitle file was made for a different frame rate or a different edit.

Can I convert several SRT files at once?

One file at a time. The tool resets as soon as you choose the next file, so batching a season of episodes means repeating a two-click loop rather than waiting on a queue.

Do you keep a copy of my subtitles?

No copy exists to keep. The file is read by the browser, converted in memory in this tab, and offered back to you as a download. Closing the tab discards it, so save the result before you navigate away.

Format references used on this page