Bulk Text to Speech: MP3 + SRT Subtitles | No API Key
Pricing
from $9.00 / 1,000 1,000 characters converteds
Bulk Text to Speech: MP3 + SRT Subtitles | No API Key
Convert texts or an Excel/CSV file into MP3 voiceovers with perfectly timed SRT/VTT subtitles. 322 neural voices in 75 languages, word-by-word TikTok captions, personalized messages from spreadsheet rows, and one merged file option. No API key needed.
Pricing
from $9.00 / 1,000 1,000 characters converteds
Rating
0.0
(0)
Developer
youssef farhan
Maintained by CommunityActor stats
0
Bookmarked
29
Total users
10
Monthly active users
3 hours ago
Last modified
Categories
Share
Bulk Text to Speech: MP3 Voiceovers and SRT Subtitles from Text or a Spreadsheet (No API Key)
Convert text to speech in bulk: paste a list of texts or upload an Excel or CSV file, and every text or row becomes a natural-sounding MP3 voiceover with perfectly timed SRT or VTT subtitles. 322 neural AI voices in 75 languages, word-by-word TikTok captions, and no ElevenLabs, OpenAI or Google Cloud API key.
Run it from the Apify Console, on a schedule, through the API, or from an AI agent via Apify MCP.
What does Bulk Text to Speech do?
- ๐๏ธ Text to MP3 at scale. Paste 1 or 500 texts; each becomes its own MP3 voiceover, generated in parallel.
- ๐ Spreadsheet to MP3. Upload an Excel or CSV file and get one voiceover per row, plus your file back with the MP3 and subtitle links on every row.
- ๐ Subtitles included. Every clip comes with a matching SRT or VTT file, timed from the speech engine itself, as sentence blocks or word-by-word captions.
- ๐ 322 neural voices, 75 languages. US, UK, Australian and Indian English, Spanish, French, German, Arabic, Hindi, Japanese, Chinese, Portuguese and more, including multilingual voices that switch language automatically.
- โก Speed and pitch control. From half speed to 2x, deeper or higher pitch.
- ๐ Merge option. Combine all clips into one continuous
combined.mp3with one continuous subtitle track, for podcasts, audiobooks and full videos. - ๐ No API key needed. Nothing to sign up for and no key to paste.
Turn a spreadsheet into voiceovers
Upload a file with one row per clip, and get one MP3 and subtitle file per row.
- Spreadsheet: upload your
.xlsx,.csvor.tsvfile, or paste a Google Sheets link shared as "Anyone with the link". The first row must hold the column names. - Choose where the text comes from:
- Personalized messages: write a text with column names in double curly braces in Texts to convert, for example
Hi {{First name}}, your order {{Order}} has shipped.It is filled in for every row. - A script column: leave the placeholders out and set Text column (or leave it empty: a column named
textorscriptis picked automatically, otherwise the column with the longest text).
- Personalized messages: write a text with column names in double curly braces in Texts to convert, for example
- Optional: set File name column to name each file after a row value, for example
audio-001-SKU-123.mp3. - Pick a voice and click Start.
What you get back:
- Output tab: one row per clip, starting with the spreadsheet row's own columns.
- Your spreadsheet with audio links (Excel): your file in its original row order, with
audioUrl,subtitlesUrland the duration added to every row (stored asresults.xlsx).
| row_number | First name | Order | audioUrl | subtitlesUrl | durationSeconds |
|---|---|---|---|---|---|
| 1 | Maria | A-1042 | .../audio-001.mp3 | .../subtitles-001.srt | 4.73 |
| 2 | John | A-1043 | .../audio-002.mp3 | .../subtitles-002.srt | 4.58 |
The example texts prefilled in the form are ignored when a spreadsheet is attached, so you never get extra clips by accident.
Use cases
| Use case | How this Actor helps |
|---|---|
| Faceless YouTube and TikTok channels | Voiceovers plus word-by-word captions for every script in one run |
| Personalized audio messages | One voice note per customer, lead or student from a spreadsheet |
| Product videos and ecommerce | A voiceover per product, named after its SKU |
| Shorts and Reels automation | Chain with video tools via API, Make, Zapier or n8n: text in, MP3 and SRT out |
| E-learning and language courses | Narrate lessons and vocabulary lists in 75 languages with consistent voices |
| Podcasts and audiobooks | Merge chapters into a single MP3 with continuous subtitles |
| IVR and phone prompts | Professional prompts without studio time |
| Accessibility | An audio version of every article or newsletter |
Ready-made examples
Open one, click Try it, and the whole setup is filled in for you:
- Create personalized voice messages from a spreadsheet: one MP3 voice note per customer, named after the order number.
- Generate TikTok voiceovers with word-by-word captions
- Create Spanish voiceovers for product videos
- Turn long-form text into one narrated MP3
How to convert text to speech in bulk
- Paste your texts into Texts to convert, one entry per clip, or upload a spreadsheet.
- Pick a Voice from the dropdown, or run once with List all voices to browse all 322.
- Optionally set speed, pitch and the subtitle style (sentence blocks or word-by-word).
- Click Start. Each clip appears in the Output tab with an MP3 link and a subtitles link.
- Download files one by one, fetch them through the API, or export the whole table as JSON, CSV or Excel.
Input example
{"texts": ["Did you know the average person spends six years dreaming?","Follow for more daily facts that will blow your mind."],"voice": "en-US-ChristopherNeural","speed": "+25%","generateSubtitles": true,"subtitleGranularity": "word","subtitleFormat": "srt"}
Spreadsheet version:
{"spreadsheetFile": "https://docs.google.com/spreadsheets/d/.../edit","texts": ["Hi {{First name}}, your order {{Order}} has shipped."],"fileNameColumn": "Order","voice": "en-US-AriaNeural"}
Output example
Each clip becomes one dataset item with direct download links:
{"index": 1,"kind": "audio","text": "Did you know the average person spends six years dreaming?","characters": 59,"voice": "en-US-ChristopherNeural","audioUrl": "https://api.apify.com/v2/key-value-stores/.../records/audio-001.mp3","subtitlesUrl": "https://api.apify.com/v2/key-value-stores/.../records/subtitles-001.srt","durationSeconds": 4.32,"speed": "+25%","pitch": "+0Hz","status": "ok"}
Data fields
| Field | Description |
|---|---|
row_number | Spreadsheet runs only: the row's position in your file, followed by that row's own columns |
index | Position of the clip in the run |
text | The converted text |
characters | Characters synthesized (what you are billed on) |
voice | Neural voice code used |
audioUrl | Direct MP3 download link |
subtitlesUrl | Direct SRT/VTT download link |
durationSeconds | Audio length in seconds |
speed / pitch | Voice settings used |
status | ok when the clip generated successfully |
Pricing
This Actor uses pay-per-event pricing: you pay per 1,000 characters converted, plus a small fee for a merged file when you turn on merging. There is no subscription and no minimum. The current rates are shown on this Actor's Store page.
Free Apify plan: runs convert up to 10 texts (or 10 spreadsheet rows) and 3,000 characters in total. Subscribe to any Apify plan to remove the limits.
Tips for the best AI voiceovers
- TikTok and Shorts pacing: use
+25%speed with word-by-word subtitles for snappy animated captions. - Voice discovery: run once with List all voices on. The dataset then lists all 322 voices with language, gender and personality tags. Put your favorite's code into Custom voice code.
- Multilingual scripts: pick a Multilingual voice (Ava, Emma, Andrew, Brian) and it switches languages mid-text automatically.
- Long content: turn on merge to get one continuous MP3 and subtitle track in input order.
- Automation: start the Actor from Make, Zapier, n8n or an AI agent via Apify MCP; the input is a simple JSON list of texts.
FAQ
How do I convert a CSV or Excel file to MP3?
Upload it in Spreadsheet. Each row becomes one MP3 with subtitles, taken from a text column or from a {{Column}} template, and you get your file back as results.xlsx with the audio link on every row.
Is this a free text to speech API?
You can try it on the Apify free plan (10 texts and 3,000 characters per run). Beyond that you pay per 1,000 characters, with no monthly subscription and no API key signup.
Do I need an ElevenLabs or OpenAI API key?
No. This Actor needs no API key at all. It uses Microsoft Edge's neural text-to-speech voices; you only pay the Apify usage fee.
Which languages and voices are supported?
322 neural voices across 75 languages and 142 regional variants, including English (US, UK, AU, IN), Spanish, French, German, Italian, Portuguese, Arabic, Hindi, Japanese, Korean, Chinese, Russian, Turkish, Dutch, Polish, Vietnamese and Thai. Run the Actor with List all voices to export the full catalog.
Can it generate TikTok-style word-by-word captions?
Yes. Set Subtitle timing to word-by-word and every word gets its own timed cue in the SRT or VTT file, ready for CapCut, Premiere or DaVinci Resolve caption animations.
How accurate are the subtitle timestamps?
The timestamps come from the speech engine's own word and sentence boundary events during synthesis, so they match the audio exactly, with no re-alignment or guessing.
Can I name the MP3 files myself?
In spreadsheet runs, yes: set File name column and each file is named after that row's value, such as a SKU or a lesson title, after a running number that keeps every name unique.
Can I call it from my own app or an AI agent?
Yes. Every Apify Actor is also an HTTP API: send your input as JSON and read the dataset when the run finishes. AI agents can call it through the Apify MCP server.
Is there a limit on text length?
Long texts are handled automatically: a 10,000-word article becomes one MP3. Free-plan runs are capped at 3,000 characters in total; paid plans have no cap.
Support and custom solutions
Found an issue or want a feature? Open a ticket in the Issues tab.
๐ผ Need a custom automation or a private version of this Actor (other voices, S3 upload, video rendering)? Reach out at youssefarhan24@gmail.com.
๐ Got another tool or site in mind? Suggest it here.
More AI Actors by the same author
- Bulk LLM Runner: run ChatGPT, Claude, Gemini and Perplexity prompts in bulk, or on every row of an Excel file.
- Bulk AI Translator: translate Excel and CSV files, websites, PDFs and subtitles into 40+ languages.
- Bulk AI Image Generator: turn a list of prompts or a spreadsheet into images with Nano Banana and GPT Image.
This Actor uses publicly available text-to-speech technology. You are responsible for how you use the generated audio and for complying with the laws applicable to your content.