Show two languages at once: merge an English and a Spanish subtitle file (or any pair) into one dual-language SRT or ASS file. Stack both at the bottom or put one at the top, line up timings that differ slightly, and give each language its own color, all in your browser.
Last updated:
A
First subtitle file
B
Second subtitle file
00:00:00
#
Start
End
A
B
Advertisement
Advertisement
How to use the Dual Subtitle Merger
Add the two subtitle files: choose or drop an SRT, VTT or ASS file for A and for B, or paste the text. The example (English + Spanish) shows how it works.
Name the languages (they are detected from file names like movie.es.srt) and pick each language's color.
Choose a layout: stacked at the bottom works in every player; top/bottom keeps the languages apart.
Align the timing: if B is consistently early or late, press Find offset; raise the tolerance if cue times differ slightly.
Check the preview, then press Download to save the merged .srt or .ass file next to your video.
How the merge works
Read both files. SRT and WebVTT cues and ASS Dialogue lines become a list of start time, end time and text. Formatting such as italics is kept; old colors and position tags are removed so the new styling is consistent.
Shift and snap file B. The offset is added to every B time, then each B start and end that lies within the tolerance of any A start or end is moved onto it.
Build the output. Stacked layouts cut the timeline at every start and end of either file and write one subtitle per piece containing the lines active in each language, merging neighbours with identical text. Top/bottom layouts keep the two languages as separate subtitles and mark one of them as top.
SRT or ASS?
Dual SRT
Dual ASS
Player support
Almost universal: VLC, mpv, Plex, Kodi, Jellyfin, TVs, YouTube uploads
Desktop players (VLC, mpv, MPC-HC, Kodi, Plex, Jellyfin); limited on TVs and web
Stacked at the bottom
Yes, both languages in one subtitle
Yes, one event with a style switch between languages
One language at the top
Via the {\an8} tag (VLC, mpv, MPC-HC, Kodi, Plex)
Yes, with a top-aligned style
Colors
<font color> tags (ignored by some players)
Per-language style
Font size
Player setting
Per-language size (scaled from 1080p)
Tips for language learners
Put the language you are learning on top or first, and your native language in a softer color underneath, so your eyes go to the new language first.
Use italics or a muted color for the translation if two full lines feel crowded.
Check the sync first. If both languages drift apart over the film (not a constant delay), the files were made for different frame rates; fix one with the SRT time calculator or the subtitle editor before merging.
Need WebVTT for the web? Convert the merged SRT with SRT to VTT.
Frequently asked questions
How do I show two subtitles at the same time?
Most players can only show one subtitle track at a time, so merge both languages into one file. Load the two subtitle files here, choose a layout and download the merged SRT. Put it next to the video with the same file name (for example movie.srt) or load it in your player's subtitle menu, and both languages will appear together.
Which layout should I use?
Stacked at the bottom puts both languages in the same subtitle, one above the other, and works in every player, TV and streaming app that accepts SRT. Top and bottom placement keeps the languages apart, which is easier to read for language learning, but in SRT it relies on the {\an8} position tag; VLC, mpv, MPC-HC, Kodi and Plex support it, while some TVs ignore it. ASS output supports every layout reliably in desktop players.
What does the time alignment tolerance do?
Two subtitle files made by different people rarely share exact times: one line might start at 00:01:05.200 in English and 00:01:05.450 in Spanish. Any start or end in file B that is within the tolerance of a start or end in file A is moved to match it exactly, so both languages appear and disappear together. 300 to 700 ms suits most files; set it to 0 to keep B's own timing.
The second language is always early or late. How do I fix it?
That happens when the files were made for different releases, for example one with a studio logo at the start. Press Find offset: the tool compares the cue start times and finds the shift that lines up the most cues, then applies it to file B. You can also type the shift in seconds (positive delays B, negative makes it earlier).
What happens when the two files split sentences differently?
In stacked layouts the tool builds the timeline from both files: whenever either language changes, a new subtitle starts, containing whichever lines of each language are on screen at that moment. Nothing is lost or duplicated, and the output has no overlapping subtitles. In top/bottom layouts each language simply keeps its own cues.
Can I color each language differently?
Yes. Each language has its own color and italic option. In SRT the color is written with <font color> tags, which VLC, mpv, MPC-HC, Kodi and many TVs display; some web players ignore colors. In ASS the colors, italics and font sizes are stored as named styles per language.
Will the merged subtitles work on Netflix, YouTube or a smart TV?
You cannot add your own subtitles to Netflix itself, but a dual-language SRT works with your own video files in VLC, Plex, Kodi, Jellyfin, most smart TV media players and YouTube uploads (stacked layout recommended). ASS is best for desktop players.
Are all the tools on FreeToolCabin tested for quality and accuracy?
Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.