Skip to main content

Powered by ElevenLabs

This API runs the ElevenLabs v4 text-to-speech model. Direct the delivery with audio tags such as [excited], [whispers] or [pause 1s].
ElevenLabs v4 is the newest ElevenLabs text-to-speech model and its most expressive one. It reads emotion and intent from the text and follows inline audio tags, so you can direct a line to sound excited, whispered or interrupted by laughter. Each request generates one MP3 from up to 10,000 characters.

Key capabilities

  • Audio tags: Cues in square brackets ([excited], [whispers], [laughs], [pause 1s]) are performed, not read aloud
  • Text length: 1 to 10,000 characters per request
  • Voice customization: stability and similarity_boost (0-1)
  • Multi-language: UTF-8 text, including accented letters and non-Latin scripts
  • Output: one MP3 file (44.1 kHz, 128 kbps)
  • Long scripts: up to 10,000 characters in a single request
  • Async processing: Webhook notification or polling for task completion

Use cases

  • Narration with emotion: Ads, trailers and stories that need excitement, whispers or laughter on cue
  • Character voices: Games, animation and audio drama with a distinct delivery per line
  • Video production: Voiceovers for marketing videos, tutorials and social media content
  • E-learning and accessibility: Expressive audio versions of written material

API operations

Create a voiceover with the POST endpoint, then track it with the list and status endpoints. Generation returns a task ID for async polling or webhook notification.

POST /v1/ai/voiceover/elevenlabs-v4

Create a new voiceover task

GET /v1/ai/voiceover/elevenlabs-v4

List all ElevenLabs v4 voiceover tasks

GET /v1/ai/voiceover/elevenlabs-v4/{task-id}

Get task status and results by ID

Parameters

Frequently Asked Questions

ElevenLabs v4 is an expressive text-to-speech model from ElevenLabs. You send text and a voice_id, receive a task ID immediately, then poll the task endpoint or configure a webhook_url. When the task completes, generated contains the URL of the MP3 file.
Write the cue in square brackets where it should happen, for example [excited] We did it! [laughs] or Wait... [pause 1s] here it comes. The model performs the tag instead of reading it aloud. Tags are part of text, so they count towards the character limit and the price.
No. ElevenLabs v4 sets the pace from the text itself, so there is no speed parameter. Use punctuation and [pause 1s] tags to slow a passage down. If you need explicit speed control, use ElevenLabs Voiceover Turbo v2.5.
It is billed per started block of 10 characters of text, audio tags and spaces included: 1 to 10 characters is one block, 11 to 20 two blocks, and so on. The other parameters do not change the price. See the Pricing page for current rates.
ElevenLabs v3 is the previous expressive model and accepts up to 5,000 characters per request. Both take the same parameters and audio tags, at the same price per 10 characters.
Voice IDs identify each voice in the ElevenLabs voice library. A common example is 21m00Tcm4TlvDq8ikWAM (Rachel, a calm, professional female voice).
Rate limits depend on your subscription tier. See Rate Limits for current limits.

Best practices

  • Direct with tags, not adjectives: [whispers] changes the delivery; “she said quietly” is just read
  • Keep tags short and close to the words they affect
  • Write numbers and acronyms as you want them spoken when the pronunciation matters
  • Production integration: Use webhook_url instead of polling for scalable applications
  • Error handling: Implement retry logic with exponential backoff for 503 errors