What Is a VTT File?
A VTT file (WebVTT, .vtt) is the subtitle and caption format of web video. It is plain text like SRT, but starts with the line WEBVTT, writes milliseconds after a full stop and can carry styles, positions and speaker tags that browsers understand.
WEBVTT
00:00:01.000 --> 00:00:04.000
Welcome back to the show.
00:00:04.200 --> 00:00:07.500 line:85%
<v Anna>Today we're talking about subtitles.How a VTT file is built
The first line is WEBVTT, followed by a blank line. Each cue then has an optional identifier, a time line such as 00:01:02.500 --> 00:01:05.000, and the text. A blank line separates cues, as in SRT.
The timestamp format
WebVTT writes a full stop before the three digits of milliseconds, never a comma. Hours are optional, so 01:02.500 and 00:01:02.500 mean the same moment. A comma or a missing WEBVTT line is the most common reason a browser shows no captions at all.
What WebVTT adds to SRT
Cue numbers are optional, and a cue can end with settings such as line:85% or align:start that move it on screen. NOTE blocks hold comments, STYLE blocks hold CSS, and tags like <v Anna> mark who is speaking.
Cue settings
Settings follow the end time on the same line: line moves the cue up or down, position and size set where it starts and how wide it is, align sets left, centre or right text, and vertical turns it into vertical text for Japanese or Chinese. Players that don't support a setting simply ignore it.
Where VTT files are used
VTT is what the HTML5 <track> element loads, so web players such as Vimeo, JW Player and Brightcove use it. Meeting platforms like Zoom and Microsoft Teams save transcripts as VTT, too.
Common problems
A file without the WEBVTT first line is rejected by browsers. On a website, the .vtt file must be served as text/vtt from the same site as the page, or with the right CORS headers, or the captions silently fail to appear.
Questions
Is VTT better than SRT?
For websites, yes: browsers read it natively and it supports positioning. For editors and upload forms, SRT is safer because more tools accept it.
Can I rename .vtt to .srt?
No. The timestamps use a different separator and the WEBVTT header stays in the file, so convert it instead.
How do I open a VTT file?
In any text editor, or load it next to a video in VLC or a browser player.
What does a VTT timestamp look like?
00:00:04.200 --> 00:00:07.500, or 00:04.200 --> 00:07.500 without hours: minutes, seconds, a full stop and three digits of milliseconds.
Does a VTT file need cue numbers?
No. A line above the time line is an optional identifier, which can be a number or any name. Files without identifiers are valid.
Read more
Related terms
Updated: