SRT to VTT
Need to convert an SRT subtitle file to WebVTT format for use on the web? The free SRT to VTT converter by Amaze SEO Tools transforms any .srt subtitle file into the .vtt format required by HTML5 video players — making your captions ready for websites, web applications, and any browser-based video platform.Amaze SEO Tools provides a free SRT to VTT converter that takes a SubRip (.srt) subtitle file and converts it into WebVTT (.vtt) format — the native caption standard for HTML5 video on the modern web.
SRT (SubRip Subtitle) is the most widely used subtitle format for desktop media players and video editing. If you have existing SRT subtitle files — from a translation service, a video editor export, a subtitle database, or manually created captions — and need to display them on a website using HTML5 <video> elements, you must convert them to WebVTT. Browsers do not support SRT files natively in the <track> element; they require VTT format for closed captions and subtitles.
Our converter handles this translation instantly. Upload your SRT file or provide its URL, click Convert, and download the equivalent VTT file — fully compatible with every modern web browser and HTML5 video implementation.
Interface Overview
File Upload Area
The main input section is a dashed-border upload zone containing a "Choose File" button followed by "No file chosen" when no file has been selected. Click the button to open your device's file browser and select the .srt file you want to convert. The filename appears next to the button once selected.
Below the file selector, a notice reads "Maximum upload file size: 5 MB", indicating the size limit. Subtitle files are plain text and very lightweight — even a full-length movie's subtitle track rarely exceeds 100 KB, so the 5 MB limit is more than sufficient for any subtitle file.
Use Remote URL
In the bottom-right corner of the upload area, a "USE REMOTE URL" link (displayed in teal with a link icon) provides an alternative input method. Click this to enter the direct URL of an SRT file hosted online — useful when converting subtitles hosted on servers, subtitle databases, or content delivery networks without downloading the file to your device first.
reCAPTCHA (I'm not a robot)
A Google reCAPTCHA checkbox appears below the upload area. Complete the "I'm not a robot" verification before converting.
Action Button
Convert (Dark Blue Button)
A single "Convert" button sits below the reCAPTCHA. After uploading your SRT file (or entering a remote URL) and completing the verification, click this button to generate the VTT file. The tool parses the SRT content, applies the necessary format changes, and provides the .vtt file for download.
How to Use SRT to VTT – Step by Step
- Open the SRT to VTT converter on the Amaze SEO Tools website.
- Upload your SRT file — click "Choose File" to select from your device, or click "USE REMOTE URL" to paste a file URL.
- Complete the reCAPTCHA by ticking the "I'm not a robot" checkbox.
- Click "Convert" to transform the SRT file into VTT format.
- Download the .vtt file — save the converted subtitle file to your device.
- Add to your website — reference the VTT file in your HTML5 video element using the <track> tag.
What Changes During SRT to VTT Conversion?
The converter applies several specific format changes to transform SRT syntax into valid WebVTT:
- WEBVTT header added — Every valid VTT file must begin with the line WEBVTT. The converter adds this required header at the top of the output file. SRT files have no header.
- Timestamp separator changed — SRT uses commas as the millisecond separator (00:01:23,456). VTT uses periods (00:01:23.456). The converter replaces commas with periods in every timestamp line.
- Sequence numbers handled — SRT requires sequential numeric indices (1, 2, 3...) before each subtitle block. VTT cue identifiers are optional. The converter may retain the numbers as cue identifiers or omit them, as both approaches produce valid VTT.
- Basic formatting preserved — HTML-style tags supported by both formats (<b>, <i>, <u>) are preserved in the conversion. The subtitle text and any inline formatting carry over directly.
- Font color tags adapted — SRT's <font color="..."> tags may be retained or converted to VTT-compatible styling, depending on the implementation.
- Encoding standardized — VTT files should use UTF-8 encoding. The converter ensures the output is encoded in UTF-8 for maximum browser compatibility.
How to Add VTT Subtitles to a Website
Once you have the converted .vtt file, adding it to your HTML5 video is straightforward. Use the <track> element inside your <video> tag:
<video controls>
<source src="video.mp4" type="video/mp4">
<track src="subtitles.vtt"
kind="subtitles"
srclang="en"
label="English"
default>
</video>
Key attributes of the <track> element:
- src — The path to your .vtt file.
- kind — The type of text track: "subtitles" for translations, "captions" for hearing-impaired viewers (includes sound descriptions), "descriptions" for audio descriptions.
- srclang — The language code of the subtitles (e.g., "en" for English, "es" for Spanish, "fr" for French).
- label — The human-readable label shown in the player's subtitle menu.
- default — Adding this attribute makes the track display automatically when the video loads.
You can include multiple <track> elements for different languages, and the viewer can switch between them using the video player's subtitle controls.
Common Use Cases
Adding Captions to Website Videos
The most common reason to convert SRT to VTT: you have subtitle files in SRT format (from a translator, an editing project, or a subtitle download) and need to display them on a website. HTML5 browsers only accept VTT via the <track> element, making conversion mandatory for web deployment.
Making Videos Accessible (WCAG Compliance)
Web accessibility guidelines (WCAG 2.1) require captions for prerecorded video content. Organizations adding captions to their web video content to meet accessibility standards need VTT files. Converting existing SRT subtitle inventories to VTT is the fastest path to compliance without recreating the captions from scratch.
Uploading to E-Learning Platforms
Learning management systems (Moodle, Canvas, Thinkific, Teachable) and e-learning platforms that host video lessons typically accept VTT for subtitles and closed captions. Course creators with existing SRT files from video production workflows convert them to VTT for upload to these educational platforms.
Publishing to Video Hosting Services
Video hosting platforms that serve content via HTML5 players — including custom video CDNs, JW Player, Video.js, Brightcove, and self-hosted solutions — use VTT as their caption format. Converting SRT subtitle libraries to VTT prepares them for these hosting environments.
Progressive Web Apps and Offline Video
Progressive web applications (PWAs) that offer offline video playback need VTT files bundled with the video assets. Service workers cache the VTT files alongside video content, enabling subtitle display even without an internet connection. Converting SRT to VTT ensures the captions work within the PWA's HTML5 video implementation.
Migrating Video Content to the Web
When organizations migrate video libraries from desktop or broadcast distribution to web-based delivery, their existing subtitle inventories are typically in SRT (the broadcast and desktop standard). Bulk conversion of SRT files to VTT prepares the entire subtitle library for the new web-based platform.
Multi-Language Subtitle Preparation
Websites offering videos in multiple languages maintain subtitle files for each language. Translation workflows often produce SRT files because translators and subtitle editors prefer working in SRT format. Converting the completed translations to VTT creates the web-ready files for each language track.
Understanding Subtitle File Structure
SRT Format Structure
1 00:00:01,000 --> 00:00:04,000 Welcome to our tutorial on web development. 2 00:00:05,500 --> 00:00:08,000 Today we'll cover HTML and CSS basics.
Equivalent VTT Format Structure
WEBVTT 00:00:01.000 --> 00:00:04.000 Welcome to our tutorial on web development. 00:00:05.500 --> 00:00:08.000 Today we'll cover HTML and CSS basics.
The structural differences are minimal but essential for browser compatibility: the WEBVTT header is added, sequence numbers are removed (optional in VTT), and the comma in timestamps (,000) becomes a period (.000). The subtitle text and timing remain identical.
Why Browsers Require VTT Instead of SRT
WebVTT was specifically designed by the W3C (World Wide Web Consortium) as the subtitle standard for HTML5. Browsers chose VTT over SRT for several reasons:
- CSS styling integration — VTT supports the ::cue CSS pseudo-element, allowing web developers to style subtitle appearance (font, color, size, background) using standard CSS.
- Positioning and layout — VTT supports cue settings for positioning subtitles on screen (top, bottom, left, right, percentage-based), which SRT cannot do.
- Multiple track types — VTT was designed to support not just subtitles but also captions (with sound descriptions), chapters (for navigation), descriptions (for accessibility), and metadata tracks — a broader scope than SRT's subtitle-only purpose.
- Web standards alignment — VTT integrates with other web standards (HTML, CSS, JavaScript APIs) in ways that SRT, as a format from the DVD ripping era, was never designed to do.
Tips for Best Results
- Verify playback in a browser — After conversion, test the VTT file by embedding it in a simple HTML page with a <video> and <track> element. Confirm that subtitles appear at the correct times and display properly.
- Check for encoding issues — SRT files sometimes use legacy encodings (Windows-1252, Latin-1) instead of UTF-8. If non-English characters display incorrectly after conversion, the source SRT file may need to be re-saved in UTF-8 encoding first.
- Serve VTT with correct MIME type — Web servers must serve .vtt files with the MIME type text/vtt. If your subtitles are not loading in the browser, check your server configuration. In Apache, add: AddType text/vtt .vtt. In Nginx, add .vtt to your MIME types.
- Handle CORS for cross-origin videos — If your VTT file is hosted on a different domain than your video, the server hosting the VTT file must include appropriate CORS headers. Without CORS, browsers will block the subtitle file for security reasons.
- Name files descriptively — Use naming conventions that include the language code: video-en.vtt, video-es.vtt, video-fr.vtt. This makes managing multi-language subtitle sets straightforward.
Frequently Asked Questions
Q: Is the SRT to VTT converter free?
A: Yes. Completely free — no registration, no watermarks, and no usage limits.
Q: What is the maximum file size?
A: The upload limit is 5 MB. Subtitle files are plain text and rarely exceed a few hundred kilobytes, even for feature-length content.
Q: Are the subtitle timings preserved exactly?
A: Yes. All timestamps convert precisely. The only change is the millisecond separator (comma to period). Start times, end times, and durations remain identical.
Q: Will the VTT file work in all browsers?
A: WebVTT is supported by all modern browsers — Chrome, Firefox, Safari, Edge, and Opera — as the native format for HTML5 <track> elements. It is the web standard for video captions.
Q: Can I convert VTT back to SRT?
A: Yes. Use the VTT to SRT converter on Amaze SEO Tools for the reverse transformation.
Q: Can I add CSS styling to the converted VTT file?
A: Yes. After conversion, you can edit the VTT file to add styling. VTT supports the ::cue CSS pseudo-element for styling subtitle appearance, as well as inline tags like <b>, <i>, and <c> (class) for per-cue formatting.
Q: Does it support non-English subtitles?
A: Yes. The converter handles all Unicode characters — English, Chinese, Japanese, Korean, Arabic, Hindi, Cyrillic, accented European characters, and any other script. The output is encoded in UTF-8 for maximum compatibility.
Q: Is my uploaded file stored?
A: Uploaded files are processed for the conversion and are not retained beyond that purpose. The tool converts your subtitle file and provides the download — it does not store or share your files.
Convert any SRT subtitle file to web-ready VTT format — use the free SRT to VTT converter by Amaze SEO Tools to make your captions compatible with HTML5 video players, e-learning platforms, and every modern web browser!