Convert subtitle files between SRT, VTT, plain text, and CSV, right in your browser.
The input format (SRT or VTT) is detected automatically. Files never leave your browser. Nothing is uploaded.
A subtitle converter changes a caption file from one format to another. This free tool reads SRT or VTT subtitles that you paste or open from a file, then gives you SRT, VTT, plain text, timestamped text or CSV. It suits video editors, creators and anyone who needs a clean transcript.
SRT and VTT are plain-text caption formats that pair each line of dialogue with a start and end time. Each block of text is called a cue, and a blank line separates one cue from the next.
SRT (SubRip) is the older and simpler format. Each cue has a number, a timing line such as 00:00:02,500 --> 00:00:05,000 (with a comma before the milliseconds), and one or two lines of text. Almost every video editor and media player can read it.
VTT (WebVTT) is the format built for the web and HTML5 video. It starts with the word WEBVTT on the first line, uses a dot instead of a comma in timestamps, and can carry extra data such as cue settings, notes and styling. That extra data is why a VTT file sometimes looks messy when you open it as plain text.
Different platforms accept different formats. A web player may want VTT, while an editing suite or an upload form may want SRT. Sometimes you do not need timing at all: you want the words as a transcript, or the cues in a spreadsheet. This page covers all of those jobs in one place.
You can convert a subtitle file in four short steps: add your subtitles, choose a target format, click Convert, then copy or download the result.
Click Load sample if you want to see how the tool behaves before using your own file. Click Clear to start over.
Here is a tiny SRT file pasted into the input box:
100:00:00,000 --> 00:00:02,500Hello world
200:00:02,500 --> 00:00:05,000Second subtitle line
The tool counts 2 cues and 5 words, with a duration of about 0:05. What you get depends on the format you pick:
00:00:02.500 --> 00:00:05.000.The millisecond columns in the CSV are useful when you want to sort, filter or calculate cue lengths in a spreadsheet without parsing time strings.
Each output format has a specific job, so pick the one that matches where the text is going next.
| Output | What you get | Best for |
|---|---|---|
| SRT | Numbered cues, comma timestamps | Editors, uploads, players |
| VTT | WEBVTT header, dot timestamps | Web video players |
| Plain text | Words only, joined into one block | Transcripts, blog posts |
| Timestamped text | [m:ss] before each cue | Notes, chapters, review |
| CSV | Table with times in ms | Spreadsheets, audits |
Cues is the number of subtitle blocks found. If your video has about 400 lines of dialogue and the tool reports 12 cues, part of the file was not read. Words gives a rough size of the transcript. Duration reflects where the last cue ends, so it should be close to your video length. A duration far shorter than the video means the subtitles stop early or the file was cut off when you pasted it.
The converter removes formatting tags such as italics and color tags, VTT cue settings like alignment and position, and positioning codes left over from other formats. It also converts common HTML entities such as & back into normal characters. Cues are renumbered from 1, and two neighboring cues with identical text are merged into one, which helps with rolling auto-captions that repeat lines.
Anyone who moves captions between tools will need this sooner or later. These are the situations where it saves the most time:
If you got your captions from a video link, the Dailymotion transcript generator can produce SRT and VTT files that you can then convert here. For captions pulled from a post, the Instagram caption extractor covers the text of the post itself.
Most conversion problems come from the input, not the output, so check the source first.
This means no valid timing lines were found. Each cue needs a line like 00:00:00,000 --> 00:00:02,000 with an arrow between two times, and blocks must be separated by a blank line. Check that you pasted the whole file and that the arrow was not altered by another program.
The file picker accepts .sbv files, but the converter looks for timing lines with an arrow between the start and end times. SBV files separate the two times with a comma instead, so they will not produce cues. Convert them to SRT or VTT in another program first.
Cues with no text are skipped, and neighboring cues with identical text are merged. That can lower the count slightly compared with the original file. If the drop is large, look for missing blank lines between blocks, since two cues glued together are read as one broken block.
That is how the Plain text option works: all cue text is joined with single spaces. If you need one line per cue, choose Timestamped text and delete the time labels, or use CSV and copy the Text column.
This tool converts the format of your subtitles. It does not translate them, transcribe audio or generate captions from a video. If you need subtitles in another language, translate the text first, then bring it back as SRT or VTT. Because styling and cue settings are removed, it is not the right choice when you must keep italics, colors, speaker positions or VTT notes. It works with SRT and VTT input only, so other caption formats need a separate conversion first.
Whether you need a web-ready VTT file, a clean SRT, a transcript or a spreadsheet of cues, the converter on this page handles it in a few clicks. Paste your subtitles above, pick a format in Convert to, and copy or download the result. If your video also needs a social caption, the Instagram Reel script generator is a natural next step.
Your report has been submitted. We will look into this issue.
A VPN changes your network exit. It does not guarantee anonymity.
Themes, plugins, code, video, audio, graphics & more from 90,000+ authors.
Web Development
Design & Media
Unlimited Access
Explore Envato Market