Translated subtitles that stay within your reading-speed spec
Your SRT or WebVTT file translated into one language and returned in the same format, with every cue inside your limits for characters per second, characters per line and lines per cue.
Translate your subtitles on the Apify Store · Version 1.0.1, updated 2026-10-27
Who it is for
Video producers, e-learning teams and agencies localising a 10-60 minute video into several languages, who today fix over-speed cues by hand.
What you get
Your spec, every cue
Defaults of 17 characters per second, 42 per line and 2 lines per cue, or your own. Cues shorter than the minimum duration (default 833 ms) are flagged or, on request, lengthened.
Structure kept
Cue count, ids, timings, markup tags and WebVTT notes and settings are kept; line breaks are set for you.
A review list
Cues that were shortened are listed as condensed with their speed before and after; cues that could only be cut are listed as lossy.
Measured output
The returned file is re-parsed and measured, so the report describes the file you receive, with a metrics line for every cue.
How it works
- Choose
translate_subtitlesand paste your file intofile_textwith thesource_languageandtarget_language. - Optionally set
max_cps,max_chars_per_line,max_linesandmin_duration_ms. - To measure a file without translating it, use
check_subtitle_spec.
Also runs from AI assistants through Apify's MCP server.
Use cases
- Localising a training video into German, French and Dutch.
- Checking an agency's subtitle delivery against your spec before you accept it.
- Translating e-learning modules without re-timing cues by hand.
Pricing
| Check subtitles against a spec One subtitle file measured against a spec (reading speed, line length, lines, duration). Failed calls are free. | $0.059 |
| Block of 50 subtitle cues Each started block of 50 cues in a translated file. Failed calls are free. | $0.24 |
| Translate subtitles to fit a spec One subtitle file translated into one language and checked against your spec. Failed calls are free. | $0.24 |
You pay per event listed above; there is no monthly fee.
Inputs
tool required |
What to dotranslate_subtitles · check_subtitle_specdefault: check_subtitle_spec |
file_text |
File text |
source_language |
Source language |
target_language |
Target language |
max_cps |
Max cps default: 17 |
max_chars_per_line |
Max chars per line default: 42 |
max_lines |
Max lines default: 2 |
min_duration_ms |
Min duration ms default: 833 |
extend_short_cues |
Extend short cues default: False |
Output fields
tool format source_language target_language spec cues_total cues_translated cues_compliant condensed lossy adjusted timing_issues max_cps_observed invariants changes changes_truncated flags flags_truncated file_chars cues_over_cps cues_over_line_length cues_over_line_count cues_too_short
Limits
- SRT or WebVTT text, up to 1000 cues and 200000 characters; one target language per call.
- Cue start and end times are never changed unless you ask for short cues to be lengthened.
- Subtitle text is processed in memory by Google Gemini; nothing is stored.
Questions
What does it cost?
$0.24 per translation plus $0.24 per cue block; measuring a file costs $0.059.
What if too many cues must be cut?
A file that needs more than 10 percent of its cues cut is an error and is not charged.
Can I translate into several languages at once?
One target language per call, so three languages are three calls.