Make a word-by-word LRC file for karaoke-style highlighting
Karaoke-style lyrics, where each word lights up as it is sung, need a time for every word, not only every line. Upload the song with its lyrics and you get an Enhanced LRC with a <mm:ss.xx> tag before each word, along with a normal line-by-line LRC and an SRT. One song of up to 6 minutes is free in full; longer jobs or several songs cost $5, paid once.
- A <mm:ss.xx> tag before every word, inside each timed line
- Saved as "Song name.word.lrc" beside the standard .lrc
- Word times read from the vocals, not divided evenly across the line
- A word the recognizer missed gets its time from the words beside it
- Line LRC, word LRC and SRT all come from the same job
What Enhanced LRC looks like
A standard LRC line carries one time at the start: [00:42.10]Hold the line tonight. Enhanced LRC, also called word-level LRC, keeps that line time and puts a tag in front of each word: [00:42.10]<00:42.10>Hold <00:42.56>the <00:42.71>line <00:43.30>tonight. A player that understands the tags fills or colors each word when its time arrives.
A player that only reads line times may show the angle-bracket tags as text. For those, use the standard .lrc from the same job, which has no word tags.
Who uses word timing
- Karaoke hosts building a song library with highlighted lyrics
- Singers practicing phrasing and breath points against the original track
- Lyric video makers who animate words one at a time
- Language learners following each word of a song in the language they study
- Developers of music and karaoke apps who need word-level timing for their own catalog
How each word gets its time
A speech recognition model listens to the song with the instruments still in it and reports when it hears each word. Your lyrics are lined up against those words by code: phrases that occur once in both serve as fixed points, and the words between them are paired one by one, allowing for small spelling differences. When a sung word was not recognized, its time is filled in from the words around it, in proportion to its length.
Held notes are where word timing is least precise. The tag marks when a word starts, and a vowel stretched over several notes is still one word with one tag.
Before you start
- Write every repeat in full, because a chorus written once only gets times once
- Keep the lyrics in the sung language and spelling, including forms like "gonna" if that is what is sung
- Labels such as [Chorus] or (Bridge) can stay in; they are skipped
- Look closely at fast verses on screen, since dense rap and screamed parts are harder to time word by word
How the tool works, what it costs and how your files are handled is on the Lyrics to LRC page; prices for every tool are on the pricing page.
Last updated
Questions and answers
Can ChatGPT create a word-by-word LRC?
It can explain the Enhanced LRC format and add tags if you supply the times. It cannot hear when each word is sung, so tags it writes on its own are evenly spaced guesses. In karaoke that shows at once, because words light up before or after the singer. Here each word time comes from the vocals.
Which players support word-by-word LRC?
Support varies from player to player. Check that yours reads Enhanced or word-level LRC; if it does not, use the standard .lrc made in the same job.
Do I need a vocal-only track?
No. The full mix is used and nothing is separated. If you do have an a cappella stem of the same length, you can upload that instead, and the times still fit the full song.
Do I also get a normal LRC and an SRT?
Yes. Every job gives you a line-by-line LRC, the word-by-word LRC and an SRT of the same lines.
How much does a word-by-word LRC cost?
One song of up to 6 minutes is free in full, word tags included. A longer song or a set of songs is $5, paid once, for up to 6 hours of audio. Unlimited costs $19 a week, with up to 12 hours per job.
Is my unreleased song private?
Only you can open your job. The song is sent to an AI model provider only to be processed and is not used to train models. Jobs started without an account are deleted after 7 days, and you can delete a job at any time.