SRT vs VTT: which subtitle file to use, and how to add it to your video
The two subtitle formats that matter, what is actually inside them, where each one works (YouTube, VLC, Premiere, CapCut, web players), the difference between a subtitle file and burned-in captions, and how to generate and fix one.
By Luiz Mueller · · 4 min read
Subtitles come in two files that look almost the same and are used in different places. SRT is the older one and the one most things accept. VTT is the web one. If you have ever been handed a subtitle file that a program refused, or generated one and then wondered why the captions were not "in" the video, this guide covers what you need: what the files contain, which to pick, how to attach them, and how to produce and correct one.
What is inside a subtitle file
Both formats are plain text you can open in Notepad. Each caption is a block with a start time, an end time and one or two lines of text. An SRT block looks like this:
2 00:00:04,200 --> 00:00:07,650 and that is why the first draft is never the final draft.
The number is the caption's sequence, the times are hours, minutes, seconds and milliseconds separated from the seconds by a comma, and the arrow separates start from end. VTT is nearly identical: the file begins with the line WEBVTT, the sequence numbers are optional, and the milliseconds are separated by a period instead of a comma. VTT can also carry styling and positioning instructions that SRT cannot, which is what web players use to place a caption at the top of the frame when something important is at the bottom.
That is essentially the whole difference. Because the formats are so close, converting one to the other is a matter of changing the header and the decimal separator, and most editors do it on import.
Which one to use
| Destination | Use | Notes |
|---|---|---|
| YouTube | SRT or VTT | Both upload under Subtitles, Add language, Upload file |
| VLC, media players, TVs | SRT | Name the file exactly like the video, with .srt, in the same folder, and it loads automatically |
| Premiere Pro, DaVinci Resolve, Final Cut | SRT | Imported as a caption track you can edit and style |
| CapCut and phone editors | SRT | Imported through the captions menu on most versions |
| HTML5 video on a website | VTT | The only format the browser's track element reads |
| Vimeo, LinkedIn, most platforms | SRT | The safe default when the platform does not say |
When in doubt, make an SRT. It is the format that everything reads, and the subtitle generator on this site exports both, so you can produce the VTT version for your own site later from the same transcript.
A subtitle file is not the same as captions in the video
This is the question behind most "my subtitles are not showing" problems. A subtitle file sits beside the video; the player draws the text over the picture while it plays, and the viewer can switch it off or pick a language. Captions that are part of the picture, often called burned-in or open captions, are pixels in the frames themselves: they show everywhere, including on platforms that ignore subtitle files, and they cannot be turned off, edited or translated.
The generator here produces the file, not a captioned video. If you need burned-in captions, import the SRT into a video editor, style it, and export; every editor in the table above does this. For YouTube, LinkedIn and your own website, the file is the better product: viewers choose, search engines can read it, and you can fix a typo without re-uploading the video.
Generating one without uploading the recording
The subtitle generator runs OpenAI's Whisper speech model inside your browser. It downloads the model once, extracts the audio from your video on your device, transcribes it with timestamps and writes the SRT or VTT. The recording is not uploaded; you can confirm it by disconnecting from the internet after the page loads and running the job anyway. On a laptop a ten-minute clip takes a few minutes; a phone is slower, and a long recording should be done on a computer or cut into parts with the trimmer first. If the audio has background noise, cleaning it with the noise remover before transcribing improves the words noticeably.
What to fix before publishing
Automatic subtitles are a good draft and never a finished product. Spend ten minutes on these, in a text editor or in your video editor's caption panel:
- Names and terms. The model guesses unfamiliar names phonetically. Search for each one and correct it everywhere.
- Numbers. "Twenty twenty-five" and "2025", "two point five" and "2.5" both appear; make them consistent.
- Timing. Phrase-level timestamps from the model are close but not frame-accurate. Play the video with the file loaded and nudge captions that appear early or linger. A caption should stay on screen for at least a second and rarely more than seven.
- Line length. Keep lines under about 42 characters and captions to two lines, or they wrap unpredictably on phones and cover the picture.
- Speaker changes. Start a new caption when the speaker changes and, if it helps, prefix with a dash.
- Noise. Delete captions the model produced from music, applause or silence; a stray phrase during a long quiet section is a known behaviour of speech models.
Translated subtitles
In Private mode the generator can produce a draft in another language by choosing a target in the Output selector; some languages need a further one-time model download. Treat a machine translation as a first pass to be checked by someone who speaks the language, and keep the original-language file too, since platforms let viewers pick between them.
A last check
Open the finished SRT in a plain text editor and look at the first few blocks: sequence number, times with a comma, text, blank line. If a block is missing its blank line or a time is malformed, strict importers refuse the whole file and say nothing useful about why. Then load it next to the video in VLC: if VLC shows it, nearly everything else will.
Questions people ask
- Why does YouTube reject my SRT file?
- Usually a formatting slip: a missing blank line between blocks, a time written with a period instead of a comma, or a file saved in an unusual text encoding. Open it in a plain text editor, fix the block, and save as UTF-8.
- Can I turn an SRT into burned-in captions without a video editor?
- Not with the tools on this site; burning captions in means re-encoding the whole video with the text drawn on each frame. Free editors such as DaVinci Resolve and CapCut import the SRT and export a captioned video.
- Do subtitles help with search and reach?
- On YouTube, an uploaded subtitle file gives the platform the exact words spoken, which it uses for indexing. On social feeds, where most video plays muted, captions are the difference between a video being watched and being scrolled past.
Tools mentioned in this guide
More guides
🔒 Your files are processed on your device. Every tool linked in this guide runs in your browser; nothing is uploaded.