Home β€Ί Guides β€Ί How to Translate a Subtitle File

How to Translate a Subtitle File

Translating subtitles is not translating a document. Every line has to fit inside a time window that was set by someone speaking a different language β€” so the workflow matters more than the wording.

Start from the right file

Translate the original-language subtitle file, never a re-export from a video editor, and never an auto-generated transcript that has not been corrected. Whatever is wrong upstream β€” misheard words, missing punctuation, cues split mid-sentence β€” you will faithfully propagate into every language.

Before you begin, clean the source. Strip sound-effect cues, speaker labels and markup you do not want to carry across, using Clean subtitles. Confirm the timings are right: if the source is out of sync, translate it first and fix sync afterwards on every language at once, rather than fixing each translation separately.

Three ways to do the work

MethodBest whenWatch out for
Subtitle editor (dedicated software)You are translating and re-timing in one passRequires the translator to learn the tool
Spreadsheet via CSVA translator with no subtitle experience is doing the wordingSomeone must re-import and re-check timing
Machine translation, then human post-editLarge volume, tight deadlineRaw output ignores line length and reading speed entirely

For most teams the spreadsheet route is the pragmatic one, because it separates the two jobs: a translator handles wording, a captioner handles timing.

The spreadsheet route, step by step

  1. Open the source file in the subtitles to CSV converter and download the CSV. You get one row per cue, with start time, end time, duration in milliseconds and text.
  2. Send the CSV to the translator. Ask them to fill a new column and to keep the row count identical β€” one cue in, one cue out.
  3. Paste the translated column back over the text column, preserving row order. Sorting or filtering during translation is the single most common way this workflow breaks.
  4. Rebuild the subtitle file, then run it through the timing checker before you look at anything else.

The duration column in that CSV is more useful than it looks. Sort by it and the shortest cues are the ones most likely to be unreadable in the target language, because a translation is rarely shorter than the original.

Condense β€” do not translate literally

English at a comfortable pace is roughly 12–20 characters per second. Many target languages need 25–40% more characters to say the same thing. If you translate each cue literally, a large share of them will exceed what a viewer can read in the time available.

This is why subtitling is condensing. Drop filler, collapse two clauses into one, prefer a shorter synonym, and let a repeated name become a pronoun once context is established. A translation that reads naturally at speed is better than one that is complete but unreadable.

Keep the two conventions that carry meaning: a maximum of two lines per cue, and roughly 40–42 characters per line. Break a line at a natural phrase boundary, never in the middle of a name or a number. See subtitle reading speed for the numbers behind both.

What not to translate

  • On-screen text is translated only if it is dialogue; a sign, a headline or a UI label is usually rendered as a caption describing it rather than translated word for word.
  • Names stay in their original form unless an established translated form exists.
  • Song lyrics are conventionally translated rather than transliterated, and marked with a music note at the start and end of the sung section.
  • Sound effects β€” [door slams] β€” are translated, because they are part of the accessibility contract, not the dialogue.

Check before you deliver

Run three checks on the finished file. First, the timing checker at the reading-speed limit your delivery target uses. Second, encoding: save as UTF-8, and if an existing file shows characters like Café, repair it with the encoding repair tool rather than retyping anything. Third, format β€” convert to what the destination actually accepts, usually WebVTT for the web and SubRip everywhere else.

Then watch two minutes of the video with the translated track on. Automated checks catch numbers; they do not catch a translation that is technically fine and reads badly.

Delivering several languages

One file per language, named consistently β€” film.en.srt, film.de.srt, film.ja.srt β€” with language codes matching what the player or platform expects. Do not merge translations into a single file: players handle multiple languages as multiple tracks, and a merged file forces one language on every viewer.

Tools mentioned in this guide

SRT to VTT Converter

Convert .srt subtitle files to WebVTT (.vtt) for HTML5 video, right in your browser.

Open tool β†’

VTT to SRT Converter

Turn WebVTT files back into SubRip (.srt) for editors, players and upload platforms.

Open tool β†’

Remove Timestamps from Subtitles

Strip timestamps and cue numbers to get a clean, readable transcript.

Open tool β†’

Clean Up AI-Generated Subtitles

Remove sound cues, HTML tags, speaker labels and duplicate cues from auto-generated captions.

Open tool β†’

Shift Subtitle Timing

Move every subtitle cue earlier or later to fix out-of-sync captions.

Open tool β†’

Resync Subtitles by Frame Rate or Speed

Fix subtitles that drift progressively out of sync by resampling them to your video's frame rate or playback speed.

Open tool β†’

SBV to SRT Converter

Convert YouTube .sbv caption files to SubRip (.srt), right in your browser.

Open tool β†’

Merge Subtitle Files

Combine two SRT or VTT files into one track, with the second file appended after the first.

Open tool β†’

Subtitles to CSV Converter

Export SRT or VTT cues to a CSV spreadsheet with start time, end time, duration and text.

Open tool β†’

Split Subtitle Files

Cut one SRT or VTT track into two files at any timestamp, right in your browser.

Open tool β†’

Fix Garbled Subtitles (Encoding Repair)

Repair mojibake β€” subtitles showing é, Ò€ℒ or ΓΒΏΓ‘β‚¬ΓΒΈΓΒ²ΓΒ΅Γ‘β€š instead of real characters.

Open tool β†’

Subtitle Timing Checker

Audit an SRT or VTT file for cues that are too fast, too short, too long or overlapping.

Open tool β†’

ASS / SSA to SRT Converter

Turn SubStation Alpha (.ass, .ssa) subtitles into clean SubRip (.srt) β€” in your browser, with nothing uploaded.

Open tool β†’

SRT to ASS Converter

Turn SubRip (.srt) subtitles into a complete ASS v4+ script with a default style, ready for styled players.

Open tool β†’

TTML / DFXP to SRT Converter

Turn TTML and DFXP captions (.ttml, .dfxp, .xml) into SubRip (.srt) in your browser β€” including offset times such as 10s, 100ms and 30f.

Open tool β†’

Plain Text to SRT Converter

Turn a transcript β€” one line per caption β€” into a valid .srt file with evenly spaced timing you can retime later.

Open tool β†’

Last updated 2026-09-21. All tools run locally in your browser.