Request a tool
All toolsGuidesMCP serverRequest a toolPlatformsCategories
Subtitle Translator icon

Subtitle Translator

Translate SRT and VTT subtitles into many languages in one run, or transcribe a video first. Timings preserved exactly. $0.05 per language, flat rate.

59 runs on Apify $0.05 per subtitle language ($50 / 1,000)
Run this in the cloudRun on Apify →

AI Video & Content Studio

How it works

  1. 1
    Open it on Apify

    Hit Run on Apify — it opens the tool in the cloud, no install.

  2. 2
    Set the inputs

    Adjust subtitles, videoUrl, targetLanguages (sensible defaults are pre-filled).

  3. 3
    Click Run

    The tool runs on Apify’s cloud and collects the data for you.

  4. 4
    Export the results

    Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.

Pricing

$0.05 per subtitle language = $50 per 1,000

You are charged forWhenPrice
Subtitle languageSubtitles translated into one language.$0.05
Actor StartCharged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).$0.00005

Pay-per-event pricing: you are billed per result, not per subscription — a run that returns nothing costs nothing beyond the start fee. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-06-11, and they are what you are actually charged.

Inputs

FieldWhat it doesType
subtitlesPaste your SRT or VTT subtitle text. Leave empty to auto-transcribe a video instead.string
videoUrlIf no subtitles are provided, a public video/audio URL is transcribed first (needs OpenAI key).string
targetLanguagesOne or more languages to translate into (ISO codes: es, fr, de, hi, ar, pt, ja, zh…).array
sourceLanguageLanguage of the input, or 'auto'.string
outputFormatWhich subtitle files to produce.string
openaiApiKeyYour OpenAI key — for translation (and transcription if a video is given). Kept private.string
translationModelChat model. Default gpt-4o-mini.string
baseUrlOpenAI-compatible base URL. Default https://api.openai.com/v1.string

What you get

A structured dataset — each result includes fields like:

languageNamecuessrtUrlvttUrlpreview

Export every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.

Related tools in AI Video & Content Studio

Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.

AI Thumbnail Generator iconAI Video & Content Studio

AI Thumbnail Generator

Generate scroll-stopping thumbnails with AI: a dramatic close-up face plus a bold hook headline in 9:16, 16:9 or 1:1. For YouTube, Shorts, Reels and ads.

Ready to run — no setup

Social Metadata Generator iconAI Video & Content Studio

Social Metadata Generator

Generate platform-ready titles, captions, hashtags, SEO tags and a pinned comment for YouTube, TikTok, Reels, Shorts and X.

Ready to run — no setup

Hook & Virality Scorer iconAI Video & Content Studio

Hook & Virality Scorer

Score any title, hook or script for viral potential: 0-100 with a grade, per-dimension breakdown and rewrite tips. No AI key.

Ready to run — no setup

AI Viral Clip Cutter — Long Video to Shorts iconYouTube & Creator Tools

AI Viral Clip Cutter — Long Video to Shorts

Turn a long podcast, interview, or webinar into ranked short clips with AI-scored moments and word-synced captions for TikTok, Reels, and Shorts.

3 use cases

AI Text-to-Speech Voiceover iconYouTube & Creator Tools

AI Text-to-Speech Voiceover

Turn any script into a natural AI voiceover audio file (MP3/WAV/Opus/AAC). Pick a voice, speed, and format. Good for faceless videos, IVR, and narration.

3 use cases

Video & Audio Transcriber — Word-Level + SRT/VTT iconYouTube & Creator Tools

Video & Audio Transcriber — Word-Level + SRT/VTT

Transcribe any video or audio URL into text with word-level timestamps and ready SRT, VTT, and TXT files. Auto language detection, batch mode.

3 use cases

See all AI Video & Content Studio →

Subtitle Translator (SRT & VTT)

Translate a subtitle file into several languages in one run. Paste in an SRT or VTT, or hand it a video URL to transcribe first, choose your target languages, and get back clean translated SRT and VTT with the original timings untouched. Built for localization and accessibility work where you need the same captions in five languages without re-doing the timing by hand.

$0.05 per language, plus $0.00005 each time a run starts. Flat rate — no volume tiers, no plan gates. The charge is per dataset row, and the actor writes exactly one row per target language, including in the labelled sample mode you get without a key.

How it works

It parses your input into cues, sends the text (not the timestamps) to an AI model for translation, and re-emits each cue with its original start/end times. If you pass a videoUrl instead of subtitle text, it transcribes the audio first and then translates the result.

Input

FieldRequiredNotes
targetLanguagesyesList of ISO 639-1 codes, e.g. ["es", "fr", "de"]. One result — and one charge — per language.
subtitlesone of theseRaw SRT or VTT text to translate.
videoUrlone of thesePublic video or audio URL to transcribe first, then translate. Use this when you don't already have a subtitle file.
sourceLanguagenoISO code of the input, or auto to detect. Default auto.
outputFormatnosrt, vtt, or both. Defaults to both.
openaiApiKeynoYour own OpenAI key for the translation and transcription steps. Marked secret in the schema.
translationModelnoChat model used for translation. Default gpt-4o-mini.
baseUrlnoAny OpenAI-compatible base URL, if you route through a proxy or a compatible provider.

Provide either subtitles or videoUrl, not both. targetLanguages is the only field you always have to set.

Output

One dataset row per target language, plus the files themselves in the run's key-value store.

FieldWhat it is
languageThe ISO code this row was translated into.
sourceLanguageThe language actually detected, or the one you forced.
srtKey, srtUrlKey-value-store key and direct URL for the translated .srt (when outputFormat includes SRT).
vttKey, vttUrlThe same for the translated .vtt.
txtKey, txtUrlA plain-text transcript of the translation, written on every run regardless of outputFormat — handy for repurposing, SEO copy or feeding another tool.
textThe full translated text inline in the row, so you can use it without a second fetch.
previewThe first two translated cues, for a quick sanity check in the dataset preview.

Original cue timings are preserved exactly — only the text is sent to the model, never the timestamps — so the output drops straight back into your player or editor.

Example

{
  "subtitles": "1\n00:00:01,000 --> 00:00:04,000\nHello, welcome to the show.\n",
  "targetLanguages": ["es", "fr", "de"],
  "outputFormat": "both"
}

Pricing

EventWhenPrice
Actor startOnce per run, per GB of run memory$0.00005
Subtitle languageEach row written to the dataset — one per target language$0.05

Cost scales with languages, not with file length: translating one subtitle file into five languages costs $0.25 whether the file is two minutes or two hours.

Because the charge is per dataset row, the same is true of the demo. A run with no openaiApiKey, or with neither subtitles nor videoUrl, returns labelled _sample rows — one per language in targetLanguages — and each of those is charged $0.05 like a real one. Asking for five languages without a key therefore costs $0.25, not nothing. Trim targetLanguages to a single code while you are wiring things up.

Your OpenAI usage is billed separately by OpenAI on your own key, and covers the translation model plus Whisper if you passed a videoUrl.

Notes

Translation quality tracks the underlying model, so long idioms and very domain-specific terms may need a human pass. Transcribing from a videoUrl adds time and depends on the audio being clear; if you already have accurate captions, pasting the subtitle text directly is faster and more reliable.