Skip to content

Media

Subtitle Merger

Subtitle Merger

Beta

Join multiple SRT or VTT subtitle files into one track. Append lays sequential parts end to end and fixes the timestamps that restarted at zero; Dual stacks two languages on one timeline. Nothing is uploaded.

  • Free, no sign-up
  • Updated
  • Reviewed by Olgun Ozoktas

Each later file is placed after the previous one ends, so parts that restart at 00:00:00 line up. Cues are renumbered from 1.

Drop .srt or .vtt files hereor click to browse — two or more files

Common uses

Lectures and conference talks

A two-hour session exported as three chunks becomes one track that follows the recording from start to finish, instead of three files you have to load in turn.

Films split across discs

Older releases ship one subtitle file per disc, each starting at zero. Append puts the second half where it belongs on a single-file rip.

Bilingual subtitles for language learning

Dual mode keeps the original language on its own timing and adds the translation underneath, so both appear together while you watch.

Episode packs

Joining a season's worth of caption files into one document makes the dialogue searchable in a plain text editor.

Why merge subtitle files?

A long recording is often captioned in pieces — a lecture split across three exports, a film released as two discs, a conference talk cut at the break. Each piece is numbered from 1 and timed from 00:00:00, so simply pasting them together gives you a file whose second half plays during the first. Merging fixes both: the timestamps are moved onto one continuous timeline and the cues are renumbered in order. The same page also stacks two languages on one timing, which is how a bilingual subtitle track is made.

Subtitle Merger joins two or more SubRip (.srt) or WebVTT (.vtt) caption files into a single track, entirely in your browser. The work it saves is timestamp arithmetic: subtitle files exported in parts each begin their numbering at 1 and their clock at 00:00:00, so concatenating them in a text editor produces a file where every cue after the first part is wrong by the length of everything before it.

Append mode solves that by offsetting each later file past the point the merged track has reached, plus an optional gap, then renumbering every cue in sequence. Because the offset is measured against each file's own first cue rather than assumed to be zero, parts that start at 00:00:00 and parts that start partway through both land flush. Dual mode does something different: it keeps one file's timing and attaches the overlapping lines from the others to it, which produces the stacked two-language track used for language learning.

Both modes read the file rather than the extension, so SRT and VTT can be mixed in one merge and the output written in whichever you want. Cue text, line breaks and WebVTT cue settings are carried through untouched — nothing is translated, re-wrapped or edited. If you need to shift a single file rather than join several, use the Subtitle Shifter; if the problem is gradual drift rather than a constant offset, the Subtitle FPS Converter is the one you want.

How it compares

The usual answer to this job is Subtitle Edit or Aegisub, which do it well and are free, but both are desktop installs for what is a one-off task on someone else's laptop as often as not. The other common answer is a spreadsheet: paste in the cues, add the offset to every timestamp, paste them back. That works and it is slow, and one mistyped row is hard to spot in a file with four hundred of them.

Web subtitle mergers exist, and the good ones do the work in the browser for the same reason this page does — subtitle files are frequently under copyright or embargo, and there is no reason for them to leave the machine. This tool keeps that property and states it plainly: the files are read with the File API and the merge runs in the tab, so nothing is uploaded, nothing is stored, and closing the page is all the cleanup there is.

What it deliberately does not do is burn subtitles into video, restyle ASS or SSA effects, or translate anything. Those are different products with different costs, and a tool that claimed them here would be worse at the one job it is for.

Tips

  • List order is output order. The file at the top of the list is the one the merged track starts with.
  • Append assumes each part carries its own timeline starting near zero, which is what a separate export does. If your parts were cut from one long file and already share a timeline, turn on Keep original times so nothing is moved twice.
  • The gap is inserted between parts only, never before the first one, so the merged track still starts where part one starts.
  • Mixed SRT and VTT inputs are fine. Each is read in its own format and the output is written in one — by default whichever the first file used.
  • Dual mode matches cues by overlap, so a translation whose timing is slightly offset still lands on the right line. Cues in the secondary file that overlap nothing are not carried over.
  • A file with one bad timestamp is reported by name with its line number, and the rest still merge, so a single typo does not cost you the whole job.

Frequently asked questions

Do my subtitle files get uploaded?

No. The files are read in your browser with the File API and the merge runs in the tab. Nothing is sent to a server, and you can confirm that by watching your browser's network tab while you merge.

What is the difference between Append and Dual?

Append is for parts of one recording: the files are laid end to end on a single timeline and the cues renumbered, so part two plays after part one. Dual is for two languages of the same recording: one file's timing is kept and the other's lines are added to the cues they overlap, so both appear on screen together.

My second file starts at 00:00:00 again. Will that work?

Yes, and that is exactly the case Append is built for. Each later file is moved so its first cue begins where the merged track has reached, plus any gap you set. Its own starting time does not matter.

What if my parts already share one continuous timeline?

Turn on Keep original times. Append would otherwise move them a second time and leave a long silence. With it on, every timestamp stays exactly as written and the cues are simply ordered by start time.

Can I mix SRT and VTT files in one merge?

Yes. Each file is parsed in its own format, and the output is written in one — by default whichever format the first file used, or the one you pick.

How many files can I merge at once?

Up to 20 in a single merge. Beyond that it is worth merging in batches, both for speed and because a list that long is hard to keep in the right order.

What happens to the cue numbers?

SubRip requires its cue numbers to be sequential, so the merged file is always renumbered from 1 regardless of what the inputs used. WebVTT identifiers are optional; the merged file fills them in the same order.

One of my files has a broken timestamp. Does the merge fail?

No. That file is listed with the line number of the bad timestamp and left out, and the remaining files still merge as long as at least two of them could be read.

Does it change my subtitle text?

No. Cue text, line breaks and WebVTT cue settings are copied exactly as read. Only timestamps and cue numbers change, and only in the way the mode you chose requires.

Can it burn subtitles into a video?

No. This tool works on caption files only. Burning text into the picture re-encodes the video, which is a different job with a very different cost.

Why do some lines from my second language not appear in Dual mode?

Dual attaches a secondary cue to the primary cue it overlaps in time. If a line in the secondary file covers a moment the primary file has no cue for, there is nothing to attach it to. Swapping which file is primary usually fixes it.

Rate This Tool

0/1000

Get Weekly Tools

Suggest a Tool