Rescreen / Free tools / SRT to VTT converter
SRT to VTT converter
Turn SRT subtitles into WebVTT for a web video player, or WebVTT back into SRT. Paste them or drop a file: the direction is detected, every timestamp is checked, and anything the other format cannot hold is listed before you download. Nothing leaves this page.
Your subtitles
A file that starts with WEBVTT is converted to SRT; anything else is read as SRT and converted to WebVTT.
Converted
Check before you use it
Not carried over
Skipped
How to convert SRT to VTT
From an SRT file to captions a web video player can show.
Add your subtitles
Choose or drop a
.srtfile, or paste its text into the box.Let it check and convert
The converter reads each cue, checks its start and end times, and writes WebVTT: a
WEBVTTline at the top, and a full stop instead of a comma before the milliseconds.Read the notes
Read the notes under the result. They say what was skipped and why, and any styling WebVTT cannot hold.
Download or copy
Download the
.vttfile (UTF-8) or copy it.
VTT to SRT works the same way: drop a .vtt file and you get SRT, numbered from 1.
Example
This SRT:
1
00:00:01,200 --> 00:00:04,000
Open <b>Settings</b> from the menu bar.
2
00:00:04,500 --> 00:00:08,250
Turn on weekly summaries,
then click Save.becomes this WebVTT. The timings and text are the same; the header and the separator change.
WEBVTT
1
00:00:01.200 --> 00:00:04.000
Open <b>Settings</b> from the menu bar.
2
00:00:04.500 --> 00:00:08.250
Turn on weekly summaries,
then click Save.SRT vs WebVTT
| SRT (.srt) | WebVTT (.vtt) | |
|---|---|---|
| First line | The first cue | WEBVTT |
| Timestamp | 00:01:02,500 | 00:01:02.500 (hours optional) |
| Cue numbers | Required, 1, 2, 3 … | Optional, any name |
| Text styling | <b>, <i>, <u>, <font> | <b>, <i>, <u>, classes styled with CSS |
| Speakers | Written into the text | <v Name> tags |
| Placement | Not standard | Cue settings such as line:0 and align:start |
| Comments | None | NOTE blocks |
| HTML5 video | Not supported by <track> | The format <track> plays |
A web page’s <video> element only reads WebVTT captions, which is the usual reason to convert SRT. Most video platforms accept either format; check the upload page for the one you use.
What does not carry over
SRT to VTT keeps bold, italic and underline. It removes, and tells you it removed:
<font>colour and size tags — the words stay; WebVTT styles text with CSS.- Positioning codes such as
{\an8}and SRT pixel coordinates.
VTT to SRT keeps bold, italic and underline, and removes:
- The header metadata,
STYLE,REGIONandNOTEblocks. - Cue settings, so every cue shows at the player’s default position.
- Speaker tags with their names, class and language tags, and word-by-word karaoke timestamps. The words stay.
- Ruby annotations become brackets: 漢字(かんじ).
Text that only looks like HTML — <script>, or a sum like 1 < 2 — is kept as text in both directions.
Broken timestamps and plain text
Each cue’s times must read hours:minutes:seconds and three digits of milliseconds, with minutes and seconds under 60 and the end no earlier than the start. A cue that fails is skipped and listed with its line number, so you can fix it in the original and convert again. The converter never guesses a time: 00:00:01,5 could mean 5 or 500 milliseconds, so it is refused rather than read either way. Text with no timings at all is refused too — a converter cannot know when the words are spoken.
A refused cue is skipped and listed with its line number.
Captions for a screen recording
Captions on a tutorial are instructions, so check the names, numbers and shortcuts against what the screen shows. How to make a tutorial video covers reviewing captions with the picture, and removing filler words explains why captions need rechecking after an edit moves the timing.
Limitations
- It converts between SRT and WebVTT only. It does not read or write ASS/SSA, TTML, SCC or SBV.
- It does not create, transcribe, translate or retime subtitles.
- Files are read as UTF-8, or UTF-16 with a byte-order mark. A file that is neither is read as Windows-1252 (common for older Windows subtitles), and the page says so — check accented letters.
- Downloads are UTF-8 without a byte-order mark. SRT uses Windows line endings, which every SRT reader accepts; WebVTT uses plain line endings.
- Up to 10 MB per file — far more than a feature film’s subtitles.
Is anything uploaded?
No. The file is read and converted by this page in your browser and nothing is sent anywhere. We count anonymous page views and whether a conversion and a download happened; those events never include the subtitles or the file name. See the privacy policy.
Only on your device
Your subtitles and file names are never uploaded.
Frequently asked questions
Does it change the timing?
No. Every cue keeps its start and end to the millisecond; only the way the time is written changes.
Can I convert VTT to SRT?
Yes. Drop or paste a file that starts with WEBVTT and you get SRT. Placement and styling SRT cannot hold are listed before you download.
Why does my file say “read as SRT”?
WebVTT files must start with WEBVTT. Without it the text is read as SRT. If it is WebVTT, add that line at the top and paste it again.
Which browsers does it work in?
Current Chrome, Edge, Safari and Firefox, on a computer or a phone. It only uses standard text and file features; we have tested it in Chrome on desktop and at phone screen sizes.
Spend less time editing
your next recording.
Create an account and record your first video in your browser.