The short answer
Export SRT if you're uploading to YouTube or Vimeo, or importing into Final Cut Pro, Premiere Pro or DaVinci Resolve. Export VTT (WebVTT) if the captions are going into a video player on a website. When in doubt, pick SRT: almost everything accepts it.
What's inside an SRT file
SRT (SubRip Subtitle) is a plain text file made of numbered cues. Each cue has a number, a start and end time, and one or two lines of text, followed by a blank line.
1
00:00:01,000 --> 00:00:03,200
Captions in one click.
2
00:00:03,400 --> 00:00:05,900
No upload. No browser.Note the comma before the milliseconds. Swapping it for a period is an easy way to break a hand-edited file. Some players honor simple tags such as italics, but there's no formal standard for styling or position.
What's inside a VTT file
WebVTT (Web Video Text Tracks) was designed for HTML5 video. It looks a lot like SRT, with three visible differences: the file starts with a WEBVTT header, milliseconds use a period, and cue numbers are optional.
WEBVTT
00:00:01.000 --> 00:00:03.200
Captions in one click.
00:00:03.400 --> 00:00:05.900 line:85% align:center
No upload. No browser.VTT also supports cue settings like the line and align values above, which place a caption on screen, plus styling through CSS. Browsers only play caption tracks in WebVTT, so it's the format the HTML <track> element expects.
Side by side
| SRT | VTT | |
|---|---|---|
| Header | None | WEBVTT on the first line |
| Timestamps | 00:00:01,000 | 00:00:01.000 |
| Cue numbers | Expected | Optional |
| Position and style | No standard | Cue settings and CSS |
| Best for | Editors, YouTube, Vimeo | Web players, HTML5 video |
Where each format works
- YouTube: accepts both. Upload in YouTube Studio under Subtitles.
- Vimeo: accepts both.
- Final Cut Pro, Premiere Pro and DaVinci Resolve: all import SRT, the most reliable choice for editing.
- Your own website: use VTT with the HTML
<track>element. - Instagram Reels and TikTok: burn the captions into the video. It's the only way to be sure your style survives the upload.
Can you convert one to the other?
Yes, and by hand it's quick: add a WEBVTT line at the top and change the commas in the timestamps to periods. Going the other way, remove the header and any cue settings, and make sure every cue has a number.
In HeyCaption you don't need to. Pick SRT or VTT in the export window and you get a clean file in the right format, from the same transcript.