Batch processing lets you queue many videos in one go instead of creating each dub by hand. What you need to prepare comes down to one question: are your videos YouTube links, or your own files? This article covers both.
Two ways to run a batch
You run it yourself. Every Dubly account can use the public API — you create an API token under Settings → API and send one request per video. The link to the API documentation sits in that same tab.
We run it for you. You send us your list and your videos, and we create the dubs inside your account. For that we also need an API token from you (step 4). This is the usual route for large or one-off batches — ask in the chat, or see Requesting a custom batch project.
The preparation is identical either way: one row per video in a spreadsheet.
Step 1 — How do we get your videos?
Decide this first, because it determines which columns your spreadsheet needs.
Option A — YouTube links
Nothing to upload. The link in the row is all we need.
The video has to be public or unlisted. Private, deleted or unavailable videos are rejected up front — before any credits are charged.
Leave
titleempty and the YouTube title is used automatically.
Option B — your own files
Put every video into one folder (Google Drive, Dropbox, OneDrive, S3 …) and share that folder with us.
Keep filenames clean: no spaces, no umlauts, no special characters, and no periods except the one before the extension.
episode_12.mp4works,Folge 12 (final).mp4does not.The
video_keycolumn is how we find the right file in your folder for each row, so it has to be the exact filename including the extension.Got direct links instead of a folder? Use
video_url— but it must be a link that returns the file itself. A Google Drive or Dropbox share page opens a preview and will not work.
You can mix both in one batch. Just leave the columns you don't need empty on that row.
Step 2 — The spreadsheet
One row per video, as Excel or CSV. Language codes are the short ones — en, de, fr … (see Supported languages and dialects).
Where the video comes from. Fill in only the columns that apply to that row:
Column | When you need it |
| YouTube rows. The full link, e.g. |
| Your own files. A direct download link to the file. Leave empty if you are sending us a folder. |
| Your own files. The exact filename in your folder, including the extension — |
Dub settings. These are the same in both cases:
Column | Notes |
| The name the dub will carry in your Dubly dashboard. On YouTube rows you can leave it empty — we then use the YouTube title. |
| Required. The language spoken in the video ( |
| Required. Comma-separated codes for every language you want, e.g. |
| Optional. Number of different speakers in the video. Leave it empty and we detect it automatically — usually the better choice. |
| Optional. Leave it empty and the original speaker's voice is cloned from the video — that is what most people want. Only fill this in if a specific saved voice should be used instead; the value is that voice's ID from Settings → Custom Voices, not its name. |
| Optional. Puts the dub into a folder. It is the ID from the address bar while you are inside that folder — not a number you make up. Create the folders first under Projects → New Project.
|
Step 3 — Translation styles
If your account has a Translation Style for one of the language pairs in the batch, it is applied automatically. There is no column for it and nothing to tell us. If you don't have one, the dubs simply run without it.
Step 4 — API token (only if we run the batch)
The dubs have to be created inside your account and billed to your credits. The only way we can do that for you is with an API token from your account.
Open Settings → API.
Click Generate new token and give it a name, e.g. "Batch August".
Copy it straight away — it is shown only once and cannot be displayed again.
Send it to us in the support chat.
That token can create dubs and spend credits in your account, so treat it like a password. Revoke it once the batch is done — same tab, Revoke next to the token. You can generate a new one whenever you need it.
File requirements
Accepted formats: mp4 and mov, up to 5 GB per file. (Not relevant for YouTube rows.)
Every row needs a source language and at least one target language.
Each target language is billed separately — a 10-minute video into 3 languages costs 30 credits (see Pricing Model and Translation Costs).
A single bad row only blocks that one video — the rest of the batch still runs. It is still worth checking the sheet before you send it.
What happens next
We work through your spreadsheet row by row, pulling each video from wherever it lives — YouTube link or your folder.
Each video is created as its own dub with the settings from its row.
The dubs process like any other — each one moves through the normal phases (see How long does it take to dub a video?).
You review and approve each dub in your normal Dubly project view.
Limits and tips
Every language is processed independently, so a batch with many target languages takes proportionally longer.
Turn Lip-Sync on only where you need it — it adds significant processing time per video.
For very large or recurring batches, or if you'd like us to handle ingestion and quality checks, request a custom batch project instead.
Still stuck? Contact support and include your spreadsheet so we can check the formatting with you.
