ElevenLabs Eleven v4 Turbo API

ElevenLabs Eleven v4 Turbo: expressive multilingual speech with audio tags, voice selection and delivery controls.

ElevenLabs·AudioAvailable

from$0.036/ 1K chars$0.0410% off

Model IDelevenlabs-tts-v4-turbo

text-to-speechvoicemultilingual

Input

Text

Output

Audio

Provider

3 providers

Stability

0 – 1

Voice similarity

0 – 1

Seed

0 – 4294967295

Last 7 days · not enough recent requests for stats yet.

ElevenLabs Eleven v4 Turbo pricing

Prices are per unit; requests without a provider are routed to the cheapest provider that supports your parameters.

OptionPrice (USD)
All options
$0.036 / 1K chars
1 Credits$0.0410% off

Try ElevenLabs Eleven v4 Turbo before you integrate

Test output quality, compare provider prices and estimate cost before writing any code.

Provider
Audio
Estimated cost

Input

prompt
0 / 5000
voice
stability
similarity_boost
language_code
seed
output_format
apply_text_normalization

Result

Idle
Your generation will appear here.

Provider prices for this request

Enter a prompt to compare provider prices.

ElevenLabs Eleven v4 Turbo prompt examples

Ready-to-use prompts. Load one into the playground and tweak it.

Source
Scene

5 prompts

[confidently] It's raining. You're up anyway. Shoes on. Door open. Every step out here is the person you're becoming. [excited] See you at the starting line!

Welcome back! Tap the plus button to start a new project, or swipe left to see what your team has been working on.

[whispering] Okay, nobody talks about this... [excited] but this one setting doubled my battery life.

ElevenLabs Eleven v4 Turbo API reference

Endpoints, request fields and runnable examples for this model.

Base URL

https://01router.com/api/v1
llms.txt

Quick start

Set API_KEY to your project key, then run a sample from your server. Replace example media URLs with your own public URLs.

Auto-routing chooses a provider that supports the request. Select a provider to see its input constraints and pinned request examples.

curl https://01router.com/api/v1/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'JSON'
{
  "model": "elevenlabs-tts-v4-turbo",
  "input": {
    "prompt": "Welcome back. Let us get started.",
    "voice": "Rachel",
    "stability": 0.5,
    "similarity_boost": 0.75,
    "output_format": "mp3_44100_128",
    "apply_text_normalization": "auto"
  }
}
JSON

# Replace GENERATION_ID with the id returned above; poll until status is "succeeded" or "failed"
curl https://01router.com/api/v1/generations/GENERATION_ID -H "Authorization: Bearer $API_KEY"

Endpoints

Only endpoints relevant to this model are listed. Paths below include /api/v1. Click an endpoint to read its usage.

Authentication

Send your API key as a Bearer token. Requests are billed to the key owner's credits.

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Get an API key

Input

Send JSON with Content-Type: application/json. Model parameters belong inside input; model, provider and callback_url are top-level fields.

Request body

NameTypeRequiredDescription
modelstringYes"elevenlabs-tts-v4-turbo"
providerstringNoPin a provider; omit to auto-route to the cheapest. One of: fal | wavespeed | openrouter
inputobjectYesModel parameters, see the input fields below.
callback_urlstringNoOptional public HTTPS webhook URL. The final task result is signed and delivered here; polling remains available.

input · input fields

Required fields are marked explicitly. Other fields use the listed defaults when omitted.

NameTypeRequiredValuesDefault
prompt*stringYesmaxLength: 5000—
voicestringNo—Rachel
stabilitynumberNomin: 0 · max: 10.5
similarity_boostnumberNomin: 0 · max: 10.75
language_code
ISO 639-1, e.g. en or zh
stringNo——
seedintegerNomin: 0 · max: 4294967295—
output_formatstringNomp3_22050_32 | mp3_44100_32 | mp3_44100_64 | mp3_44100_96 | mp3_44100_128 | mp3_44100_192 | pcm_8000 | pcm_16000 | pcm_22050 | pcm_24000 | pcm_44100 | pcm_48000 | ulaw_8000 | alaw_8000 | opus_48000_32 | opus_48000_64 | opus_48000_96 | opus_48000_128 | opus_48000_192mp3_44100_128
apply_text_normalizationstringNoauto | on | offauto
Callbacks →

Output

Creating a task does not mean generation has finished. Keep its id, poll until succeeded or failed, then read outputs or error. Amounts below are illustrative; actual charges depend on the request.

queued→processing→succeeded / failed

Task submitted

{
  "id": "gen_example",
  "object": "generation",
  "model": "elevenlabs-tts-v4-turbo",
  "type": "audio",
  "provider": "fal",
  "status": "processing",
  "input": {
    "prompt": "Welcome back. Let us get started.",
    "voice": "Rachel",
    "stability": 0.5,
    "similarity_boost": 0.75,
    "output_format": "mp3_44100_128",
    "apply_text_normalization": "auto"
  },
  "outputs": [],
  "error": null,
  "credits": 0,
  "price_usd": 0,
  "created_at": "2026-10-25T08:00:00.000Z",
  "completed_at": null
}

Task completed

{
  "id": "gen_example",
  "object": "generation",
  "model": "elevenlabs-tts-v4-turbo",
  "type": "audio",
  "provider": "fal",
  "status": "succeeded",
  "input": {
    "prompt": "Welcome back. Let us get started.",
    "voice": "Rachel",
    "stability": 0.5,
    "similarity_boost": 0.75,
    "output_format": "mp3_44100_128",
    "apply_text_normalization": "auto"
  },
  "outputs": [
    "https://example.com/output.wav"
  ],
  "error": null,
  "credits": 0,
  "price_usd": 0,
  "created_at": "2026-10-25T08:00:00.000Z",
  "completed_at": "2026-10-25T08:01:00.000Z"
}

Response fields

NameTypeRequiredDescription
idstringYesGeneration ID. Use it to query or cancel this task.
objectstringYesgeneration
modelstringYeselevenlabs-tts-v4-turbo
typestringYesaudio
providerstringYesProvider
statusstringYesqueued → processing → succeeded / failed. Stop polling at either terminal state.
inputobjectYesModel parameters, see the input fields below.
outputsstring[]YesResult URLs. Empty while processing; read after succeeded and save the files promptly.
errorstring | nullYesFailure reason, or null when no failure is reported.
creditsnumberYesCredits charged for this request.
price_usdnumberYesRequest price in USD.
created_atstringYesCreation time in ISO 8601 format.
completed_atstring | nullYesCompletion time in ISO 8601 format; null before completion.

Get the result

Poll every few seconds until status is succeeded or failed. Output URLs are provider-hosted and may expire — download them promptly. Or pass callback_url to get the result pushed.

curl "https://01router.com/api/v1/generations/GENERATION_ID" \
  -H "Authorization: Bearer $API_KEY"

queued → processing → succeeded / failed. Stop polling at either terminal state. Result URLs. Empty while processing; read after succeeded and save the files promptly.

Cancel a task

Cancellation depends on provider support and task state. A confirmed cancellation returns status: failed and error: Canceled by user. Unsupported or completed tasks return 409 not_cancelable.

curl -X POST "https://01router.com/api/v1/generations/GENERATION_ID/cancel" \
  -H "Authorization: Bearer $API_KEY"

Quote

Same body as creating a generation. Returns every available provider sorted by price, plus the ones that cannot serve the request and why.

curl "https://01router.com/api/v1/quote" -H "Content-Type: application/json" --data-binary @- <<'JSON'
{
  "model": "elevenlabs-tts-v4-turbo",
  "input": {
    "prompt": "Welcome back. Let us get started.",
    "voice": "Rachel",
    "stability": 0.5,
    "similarity_boost": 0.75,
    "output_format": "mp3_44100_128",
    "apply_text_normalization": "auto"
  }
}
JSON

Model schema

This public endpoint returns the model parameters and each provider’s supported constraints and prices.

curl "https://01router.com/api/v1/models/elevenlabs-tts-v4-turbo"

Errors

Check the HTTP status and error.message. Fix the request before retrying validation or authentication errors. A failed generation is reported in status and error on the task itself.

{
  "error": {
    "message": "Invalid or missing API key",
    "code": "unauthorized"
  }
}

400Invalid body or parameter value

401Missing or invalid API key

402Not enough credits

404Unknown model or generation

409The task cannot be canceled (already finished, or the provider does not support canceling)

429Too many requests — retry after the given seconds

502Every provider rejected the task (credits refunded)

Auth, routing, billing and error codes are covered in →

Use with AI

Give your coding assistant this model reference: endpoints, input constraints, output fields and request examples in plain text.

Open llms.txt

How does ElevenLabs Eleven v4 Turbo compare?

Specs and starting prices side by side. Test with the same prompt before you choose.

ElevenLabs Eleven v4 TurboElevenLabs Eleven v4Suno V6Gemini 3.8 Flash TTS
VendorElevenLabsElevenLabsSunoGoogle
Starting price$0.036 / 1K chars$0.072 / 1K chars$0.045 / request$0.041 / 1K chars
InputTextTextTextText
Provider3 providers3 providers4 providers5 providers
Stability0 – 10 – 1——
Voice similarity0 – 10 – 1——
Seed0 – 42949672950 – 4294967295——

ElevenLabs Eleven v4 Turbo API FAQ

When should I pick v4 Turbo instead of v4?

Choose Turbo when latency and cost matter more than the last bit of expressiveness: rapid prototyping, short social clips, app prompts and high-volume pipelines. Use v4 for long narration and character performances.

Does Turbo support the same parameters as v4?

Yes. It accepts the same voice, stability, similarity_boost, language_code, seed, output_format and text normalization options, so switching is just a change of model.

Can I use audio tags with Turbo?

Yes. Tags like [whispering] or [excited] work the same way and steer the delivery of the following words.

Is the output identical with the same seed?

The seed makes results more repeatable, but identical audio is not guaranteed.

How is it billed on 01router?

Per 1,000 characters of input text, at roughly half the v4 rate. Check the pricing table for exact numbers; failed requests are refunded.

Related models

Other models you can call with the same API key.