How to translate SRT, VTT and ASS subtitle files with AI

How to translate SRT, VTT and ASS subtitle files with AI

October 4, 2026

A subtitle file is a list of lines with times on them, and a good translation only touches the lines. The times, the numbers and the styling stay, so the file still plays on the same video.

The first question is which file you are holding. This guide covers the five you are likely to meet: SRT, VTT, SBV, ASS and TTML. If you only want the general method, start with how to translate subtitles into another language.

Which subtitle file do you have?

File Where it comes from What to know
SRT (.srt) Almost everywhere: video editors, YouTube, courses Cue numbers and timecodes stay. The most common format
WebVTT (.vtt) Web video and online courses Speaker labels such as <v Maria> and italics stay. NOTE and STYLE blocks are kept as written
SBV (.sbv) YouTube Studio exports Read like WebVTT. Translate it and upload the result as a new language
ASS and SSA (.ass, .ssa) Fansubs, anime, Aegisub Only the Text of each Dialogue line is translated. Style definitions and override codes stay
TTML and DFXP (.ttml, .dfxp) Streaming deliverables and some video platforms Timings and regions stay. xml:lang is updated when you translate into one language

Which option should you use?

Good for Where it stops
AI Glot A series or a course, several languages, names that must stay fixed Not needed for one short clip
DeepL One file. It lists SRT among its document types VTT, SBV, ASS and TTML are not on that list. It works one file at a time, and its glossary swaps words without understanding why they are fixed
ChatGPT, Claude or another assistant A few lines You write the prompt and carry your glossary into every chat. Nothing stops it merging or dropping a cue, so you check the count yourself. A long episode uses up your usage limit
A subtitling freelancer or agency A film release, a broadcast deliverable Slow, priced per minute or per word, and you still send the file back and forth

For a film that goes to a festival, hire a subtitler. For a course of 60 lessons or a season of episodes, an engine does the bulk and a person polishes the lines that matter.

Why AI Glot fits subtitles

  • One cue in, one cue out. Nothing is merged, split or dropped, so the file plays exactly as before.
  • You say how it should read, not how to parse it. For example: a lecture, short lines, informal register.
  • A glossary holds names and terms from the first cue to the last, and across a whole series.
  • A plan before any spend.
  • All five formats come back in the format you sent.

The path of one file

The five steps of a subtitle job. Everything before approval is free, so a plan that misread the file costs nothing to correct.

What a translated cue looks like

One subtitle cue before and after. The cue number and the timecodes are copied as they were, and only the spoken text changes.

Two things to check

Line length. Translations are often longer than English, and the timing is not changed to make room. Ask for a maximum line length in your instruction, then skim the longest cues. Netflix’s English timed text style guide uses 42 characters per line, but that is an English figure, so choose a limit that suits each language.

Fix the source first. If your English track came from automatic captions, correct it before you translate. A wrong word in the source becomes the same wrong word in every language.

How to do it, step by step

1. Try a file for free. The SRT translator and the WebVTT translator, which also reads SBV, need no account and take files up to 2 MB and 5,000 words. ASS and TTML have their own pages: ASS and TTML.

2. Upload the file in the app.

3. Say what you need in one sentence.

Translate these subtitles from English into French.
It is a cooking show, so keep the tone friendly and informal.
Instructions for this batchOptional
Apply
You describe the job in plain English. AI Glot turns it into a plan you can read and correct before anything runs.

The sentence describes the job and the language. Rules about the wording itself, such as “keep every line under 42 characters” or “never translate the host’s name”, go into the second box at approval, because they are applied to each cue as it is written.

4. Add a glossary for character names, product names and recurring terms. How to build one.

A glossary settles the terms that must not drift, and applies the same decision to every file.

5. Read the plan and choose a quality level.

Two quality tiers, chosen per file. Lite covers about three times more words for the same credits.

Lite gives about three times more words per credit and is faster: right for a long back catalogue. Standard is for a launch video. One credit is one word in Standard.

6. Approve and download.

One file comes back, in the format it arrived in.

A whole season, several languages

A season of subtitle files becomes one set of translated files per language, with the same cues, the same timing and one glossary.

The numbers are an example. A subtitle file holds one language, so each language is its own set of files. Put the episodes in a ZIP and they all go through as one job.

Three ways to run it

Three ways to run a subtitle job. They all give you the same translated files.

In the app suits a video now and then.

With your AI agent: connect AI Glot as an MCP server. The agent can upload the files, write the plan, update your glossary and download the result.

With the API or the command line: for a channel that adds languages to every new video, or a course platform that needs a track per lesson. See the API documentation. For the YouTube version of this loop, see translating YouTube subtitles into multiple languages.

Check the result

Open the translated file in your player on the first and last minute, and on the longest cue you know. If the lines read well and sit on the right frames, the rest will. Keep the original until someone who speaks the language has watched the parts that matter.

Pricing lists what a larger volume costs, and a free account comes with credits to run a real file.


The limits quoted here are the ones in force when this was written: 4 MB per file for SRT, VTT, SBV and ASS (8 MB for TTML), and 2 MB and 5,000 words in the free tool. DeepL’s list comes from its own documentation. File names and episode counts in the diagrams are examples. Your plan shows the real figures for your own files, and it is free to read.

10,000 words free when you sign up

Ready to translate your large files?