VTT to LRC Tutorial — Convert Subtitles to Lyrics | AllSubConverter
If you have ever downloaded subtitles from YouTube or a streaming site, chances are they arrived as a WebVTT (.vtt) file. That format is excellent for video players, but music apps, karaoke software, and portable lyric players want something far simpler: an LRC (.lrc) lyrics file. This tutorial walks through exactly how VTT to LRC conversion works, where it matters, and how to do it free in your browser.
Convert VTT subtitles into music-ready LRC lyrics in seconds — no signup, no uploads.
Convert VTT to LRC →Why convert VTT to LRC?
VTT and LRC are both text-based timing formats, but they were built for completely different jobs. VTT carries rich metadata for web video — cue positioning, styling, speaker notes, chapter markers. LRC carries one thing: a timestamp followed by a single line of lyrics. That minimalism is exactly why music players love it.
Most music apps parse LRC files on the fly to scroll lyrics in time with the song. VTT support in those apps is rare or non-existent, so converting to LRC is the bridge between "subtitle you downloaded" and "lyrics that actually scroll on your phone."
Where LRC is the expected format
- Desktop music players: Winamp, foobar2000, AIMP, MusicBee
- Mobile lyric apps and karaoke players
- Language-learning tools that display synchronized text
- Embedded lyric storage inside MP3 players that read sidecar .lrc files
How the two formats differ
The core conversion job is a timestamp transform plus some cleanup. VTT stores full time ranges with millisecond precision; LRC stores only a start time, rounded to centiseconds. Everything else — the WEBVTT header, cue identifiers, styling blocks, end times — gets dropped.
| Feature | VTT | LRC |
|---|---|---|
| Timestamp format | 00:01:12.500 --> 00:01:15.000 |
[01:12.50] |
| End time | Required | Not used |
| Styling / positioning | Supported | Not supported |
| File header | WEBVTT required |
Optional metadata tags |
| Precision | Milliseconds | Centiseconds |
Step-by-step conversion walkthrough
The actual transform is small enough to understand in three moves. Here is a realistic VTT snippet, the kind you might pull from a music video subtitle track:
1. Start with your VTT source
WEBVTT
00:00:45.230 --> 00:00:48.100
First line of the song
00:00:48.500 --> 00:00:51.000
Second line of the song
00:00:51.400 --> 00:00:54.000
Third line of the song
2. Collapse each cue to a start timestamp
The converter keeps only the start time of every cue and discards the end time. VTT's hh:mm:ss.mmm becomes LRC's bracketed [mm:ss.xx] format, dropping the hours (rarely needed for lyrics) and rounding milliseconds to two centisecond digits.
3. Strip everything except text
The WEBVTT header, arrow, end times, and any inline styling tags are removed. What is left is pure, player-ready LRC:
[00:45.23]First line of the song
[00:48.50]Second line of the song
[00:51.40]Third line of the song
That is the entire mechanical conversion. The reason it works so reliably is that LRC is a strict subset of the information VTT already carries — nothing is invented, only simplified.
Use cases that make this worth doing
A surprising number of real workflows depend on this conversion, and most people only discover the need once a player refuses to read a VTT file:
- Karaoke libraries. Many karaoke applications expect sidecar LRC files named identically to the audio track. VTT will not be picked up at all.
- Mobile music players. Apps like Poweramp, AIMP, and several open-source players display LRC lyrics automatically when the file sits beside the song.
- Language learning. Synced line-by-line text is easier to study from an LRC file because the timing is explicit and minimal.
- Repurposing YouTube subtitles. Auto-generated or fan-submitted captions for music videos are usually VTT. Converting them gives you clean, scrolling lyrics for offline use.
If you are processing many files at once — say, an entire album of downloaded subtitles — manual conversion is impractical. Our converter handles multiple files in a single pass, which is covered in detail in the batch conversion guide.
Tips for clean LRC output
A few small things tend to trip people up the first time they convert VTT to LRC:
- ✅ Keep the original VTT. LRC discards styling and end times, so store the VTT as a backup if you ever need that information back.
- ✅ Name the file to match the audio. Most players find lyrics automatically when
song.mp3is paired withsong.lrcin the same folder. - ✅ Watch for multi-line cues. VTT allows several lines per cue; LRC works best as one line per timestamp, so the converter flattens them.
- ✅ Metadata tags are optional but useful. Tags like
[ti:Title],[ar:Artist], and[al:Album]at the top of the file help players show the right info.
Privacy note: the converter runs entirely in your browser. Your subtitle files are never uploaded to a server, which matters when you are working with unreleased or copyrighted material.
Frequently asked questions
Does converting to LRC lose timing accuracy?
No. VTT millisecond precision is rounded to centiseconds (the LRC standard), which is a difference of at most 5 ms — imperceptible for lyrics scrolling alongside music.
What happens to VTT styling, colors, and speaker labels?
LRC has no concept of styling or speakers, so those are removed during conversion. Only the plain text and a single start timestamp per line remain.
Can I convert multiple VTT files at once?
Yes. Drag several files into the converter and download all the resulting LRC files together. See the batch conversion guide for the full workflow.
Do I need to install anything?
No. Everything runs client-side in JavaScript, so there is no software to install and no account to create.
Start converting VTT to LRC
Whether you are building a karaoke collection, syncing lyrics to your music library, or repurposing YouTube captions for offline playback, the conversion takes seconds and costs nothing. Paste your VTT, download the LRC, and you are done.
Last updated: March 20, 2026