VTT File Viewer

Open WebVTT (.vtt) caption files online and see every cue with its timing, speaker and position. A built-in validator checks the file against the WebVTT spec, and the preview plays it exactly as browsers do - on a blank stage or your own video. Convert with one click to SRT, ASS, TXT or CSV, or bring an SRT file and save it as VTT. Working with other formats? Try the SRT File Viewer, the ASS File Viewer or all our Subtitle Tools.

Try a sample
OFF

    How to View a VTT File Online

    1. Open your VTT file. Drop a .vtt file anywhere on the page, browse for it, paste WebVTT text or try a sample. SRT, ASS, SUB and SBV files open too.
    2. Read the cues. The Timeline shows every cue with its identifier, timing, speaker, cue settings and reading speed. Search or filter by speaker as you type.
    3. Validate the file. The Validator checks the file against the WebVTT spec and lists every error and warning with its line number. Click one to jump to it.
    4. Preview the positions. Play the captions on a blank 16:9 stage or on your own video. The browser draws them itself, so line, position, size, regions and STYLE blocks look exactly as on your site.
    5. Edit and download. Fix text, times and cue settings with undo, re-time the whole file, then download a clean VTT or convert it to SRT, ASS, TXT or CSV.

    Shortcuts: 1-6 switch views, / search, F fullscreen, Ctrl + Z undo, Ctrl + S download VTT.

    Pro tip: Captions for a social clip? Turn the scene into a GIF with Video to GIF and add the line on top with Add Text to GIF. Want the transcript read aloud? Export TXT and paste it into Text to Speech Online.

    VTT Viewer Features

    Timeline View

    Every cue with identifier, timing, duration bar, speaker, cue settings and reading speed. Smooth even with 100,000 cues.

    WebVTT Validator

    Checks the header, timestamps, cue settings, regions, STYLE blocks and tags against the spec, with the line number of every problem.

    True Preview

    Plays your captions with the browser’s own renderer on a blank stage or your video, so positions and styles look exactly like on your site. A built-in ConvertICO renderer takes over where the browser can’t and lights up karaoke words.

    Speakers & Styling

    Voice tags become speaker labels you can filter, and classes from STYLE blocks show in colour. Ruby and karaoke timing are shown too.

    Edit & Re-time

    Change text, times, identifiers and cue settings inline, shift the file, convert frame rates and fix overlaps - with undo for every step.

    Structure View

    Header metadata, NOTE comments, STYLE blocks and REGION definitions at a glance, plus the track kind: captions, chapters, metadata or descriptions.

    Five Export Formats

    Clean VTT, SRT, ASS, a TXT transcript or CSV for Excel - or all five in one ZIP. Need SBV, LRC or TTML? Use the Subtitle Converter.

    100% Private

    Captions and videos are read by your browser and never uploaded. No signup, no limits, works on phones and in dark mode.

    WebVTT Validator: What It Checks

    Browsers are strict about WebVTT.

    One wrong character in the header or a timestamp and the captions silently vanish, with no error anywhere.

    ProblemWhat happensFix
    No WEBVTT on line 1The whole track is ignoredDownload as VTT - the header is added
    00:00:01,000 with a commaThat cue is skippedUse a dot: 00:00:01.000
    No blank line after the headerThe first cue is lostAdd an empty line below WEBVTT
    position:50 without %The setting is ignoredWrite position:50%
    STYLE or REGION after the first cueThe block is ignoredMove it above the cues
    <font color> or a bare &Tags vanish, text may breakUse classes and &amp;

    The Validator lists each one with its line number and a plain-English fix. The Current VTT mode re-checks the clean file you are about to download, so you can confirm it passes before you publish.

    VTT Cue Settings Explained

    Cue settings go after the end time and move or reshape a caption.

    00:00:05.000 --> 00:00:08.000 line:0 position:20% size:60% align:start
    Top left, in a box 60% wide.
    SettingExampleWhat it does
    lineline:0, line:85%Vertical position: a line number from the top, or a percentage
    positionposition:10%Horizontal position of the caption box
    sizesize:50%Width of the caption box
    alignalign:startText alignment: start, center, end, left or right
    verticalvertical:rlVertical text, for Japanese or Chinese captions
    regionregion:chatPuts the cue in a REGION, for roll-up captions

    Switch to Preview and turn on Guides to see the 10% grid while you tweak them.

    Convert SRT to VTT (and Back)

    Drop an .srt file on this page and press Download VTT.

    The commas in the timestamps become dots, the header is added, stray & and < characters are escaped and {\an8} becomes line:0.

    Going the other way, open the .vtt and press SRT. Speaker voice tags can stay as “Name:” prefixes, and the dedicated VTT to SRT and SRT to VTT converters handle quick one-off jobs. For styled anime-style subtitles, export ASS and fine-tune it in the ASS File Viewer.

    About the WebVTT Format

    WebVTT (Web Video Text Tracks) is the W3C caption format of the web.

    It grew out of SRT in 2010 and is what the HTML5 <track> element, YouTube, Vimeo and HLS streaming use for captions, chapters and video thumbnails.

    WEBVTT - My video
    Kind: captions
    
    STYLE
    ::cue(.loud) { color: #e64e4e; }
    
    NOTE This comment never shows on screen
    
    intro
    00:00:01.000 --> 00:00:04.000 line:0
    <v Anna>Hi! <c.loud>Welcome</c> to the show.
    
    00:00:04.500 --> 00:00:07.000
    <v Ben><i>Thanks,</i> glad to <00:00:06.000>be here.

    A file can also hold chapters, metadata or audio descriptions instead of captions - the viewer detects which kind it is.

    Syntax Features

    WEBVTT Header HH:MM:SS.mmm Cue Identifiers Cue Settings Voice Tags CSS Styling Regions NOTE Comments Karaoke Timing UTF-8 Text

    Need the classic format for a TV or desktop player? The SRT File Viewer checks reading speed and fixes garbled characters, and the Subtitle Editor is there for writing new captions from scratch.

    Frequently Asked Questions

    A VTT file (WebVTT, Web Video Text Tracks) is a plain-text caption file made for HTML5 video. It starts with the word WEBVTT, followed by cues: a start and end time like 00:00:01.000 --> 00:00:04.000 and the text to show.

    Unlike SRT it can position captions, name speakers, style text with CSS and add comments. See our sample VTT files for examples.

    Drop the .vtt file onto this page, browse for it or paste its text. You get every cue with its timing, speaker and position, a spec check and a live preview.

    On your computer, VLC and most browsers can also play VTT captions next to a video, and any text editor can open the file. For a plain look at the text, the TXT File Viewer works too.

    Both are plain-text subtitle files. VTT starts with a WEBVTT header and uses a dot before the milliseconds (00:00:01.000), while SRT uses a comma (00:00:01,000) and numbers every cue.

    VTT adds cue settings for position and alignment, speaker voice tags, CSS styling, regions and NOTE comments. Browsers play VTT natively in the HTML5 <track> element; SRT is the favourite of desktop players and TVs. The SRT File Viewer is our SRT twin of this tool.

    Open the .srt file here and press VTT to download a clean WebVTT file with the header, dot timestamps and escaped characters. To go the other way, open a .vtt file and press SRT.

    Speaker names can be kept as "Name:" prefixes and top-positioned captions become {\an8}. You can also export ASS, TXT or CSV, or all of them in one ZIP. Prefer a one-click converter? Use SRT to VTT or VTT to SRT.

    The most common reasons are a missing WEBVTT line at the very top, timestamps with commas instead of dots, no blank line after the header, or a server that sends the file with the wrong type (it should be text/vtt) or from another domain without CORS.

    The Validator tab finds the first three in seconds and shows the line number. Downloading the file as VTT fixes them.

    They are cue settings written after the end time. line moves the caption up or down (line:0 is the top, line:85% is near the bottom), position moves it left or right (position:10%), size sets the width of the caption box and align sets the text alignment (start, center or end).

    vertical:rl gives vertical text and region:id puts the cue in a scrolling REGION. The Preview tab shows exactly where each cue lands.

    No. The file is read by your own browser and never leaves your device, and so does the video you preview it on.

    That makes the viewer safe for unreleased videos, client work and private recordings. Recent files are only remembered if you switch that option on, and then only in this browser.

    Up to 50 MB, which is far more than any real caption file needs - a two-hour film is usually 100 to 200 KB.

    Big files are read in the background and the cue list only draws what is on screen, so even 100,000 cues scroll smoothly. If a big file gives you trouble, contact us and we'll be happy to help!

    Guides & Tutorials

    All 14 guides
    Guide How to Tell What Format an Image File Is (5 Easy Ways) Read the guide Guide How to Open ZIP, RAR, 7Z & TAR.GZ Files Online (Without Installing Anything) Read the guide Comparison PNG vs JPG: Which Image Format Should You Actually Use? Read the guide