ElevenLabs: Eleven Flash v2.5
Eleven Flash v2.5 converts text into speech for multilingual interactive replies and voice applications. It supports 32 languages and up to 40,000 characters per request, with a fast-response profile that benefits from preparing numbers and names in spoken form.
About the model
This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.
Eleven Flash v2.5 is ElevenLabs’ multilingual text-to-speech model designed for real-time and interactive applications. It turns a supplied text reply into spoken audio and balances a fast-response profile with natural delivery and consistent voice characteristics. The manufacturer names voice agents, chatbots, games and applications needing immediate feedback, along with larger-scale text-to-speech conversion, as characteristic uses.
The model supports 32 languages: the 29-language Multilingual v2 set plus Hungarian, Norwegian and Vietnamese. The documented set includes English, Japanese, Chinese, German, Hindi, French, Korean, Portuguese, Italian, Spanish, Indonesian, Dutch, Turkish, Filipino, Polish, Swedish, Bulgarian, Romanian, Arabic, Czech, Greek, Finnish, Croatian, Malay, Slovak, Danish, Tamil, Ukrainian and Russian. This differs from English-only Flash v2. Choose the language of the script and a matching regional voice rather than assuming an English voice’s accent is the right choice for every localisation.
A request supports up to 40,000 characters. The producer gives approximate audio durations alongside its character table, but a character limit is not a fixed recording length. Speaking rate, language, punctuation and voice delivery change the duration. For a live response, use much shorter complete phrases; for a longer recording, divide the script at meaningful sections and retain context around the boundaries. A high character ceiling is useful for source preparation without making a long uninterrupted reply easy to listen to.
Number normalisation is a substantive difference in this model. The exact Flash v2.5 section says normalisation is disabled by default in its low-latency profile, and phone numbers, dates or monetary notation may be read unexpectedly. Prepare the intended spoken form before synthesis. Decide whether a number is a quantity, a reference code or digits to repeat individually. For a date, write the month and day as the audience should hear them; for an abbreviation, provide the expanded form when it is meant to be spoken as words.
Pronunciation can be guided by rewritten spelling or dictionary aliases. The manufacturer’s dictionary guide reserves phoneme rules for named v4, v3 and Flash v2 models and recommends aliases for other editions, so Flash v2.5 should not inherit Flash v2’s phoneme-tag support. Keep a preferred pronunciation for recurring names and terms and check it with the selected voice. If emotional prose is included as an instruction inside ordinary text, it may itself be spoken; prepare a clean final script for the desired recording.
The shared TTS workflow supports streamed audio and full speech generation. Its format family includes MP3, uncompressed 16-bit PCM, μ-law and A-law for telephony, and Opus. Choose the format for the playback destination and keep the generated text available beside the audio. ElevenLabs’ voice controls can influence consistency and speed, while the script’s wording and punctuation supply much of the intended rhythm. These are producer workflow options, distinct from an assumed exposure of every control in a particular application. The product guide explicitly supports SSML breaks for Flash v2.5, for example <break time="1.5s" />, with pauses up to three seconds. Excessive break tags can affect speed or introduce artifacts. Its shared speed control ranges from 0.7 to 1.2, with 1.0 unchanged.
For an assistant, prepare one clear result and one next step in a conversational sentence. A practical line can confirm that an action finished, then explain the one field still needed. For a game or tutorial, keep the instruction short enough to understand during the user’s ongoing activity. In a multilingual project, adapt the actual phrasing rather than only substituting vocabulary, and preserve the meaning of names, actions and conditions.
Review a representative passage containing the difficult part of the script: a name, an identifier, a date or a longer explanation. Check intelligibility, accent, pace and whether numbers are spoken in the intended way. Synthesis is nondeterministic in the producer’s documentation, so the exact take can vary even with similar inputs. Retain the chosen audio and its spoken-text preparation as the reusable artifact for a notification, help response, interactive character or recorded explanation.
Ailoot Ultra · Text to speech POST /v1/audio/speech elevenlabs/eleven-flash-v2.5
elevenlabs/eleven-flash-v2.5Overview
Eleven Flash v2.5 converts text into speech for multilingual interactive replies and voice applications. It supports 32 languages and up to 40,000 characters per request, with a fast-response profile that benefits from preparing numbers and names in spoken form.
- Accepted inputs
- Text
- Results
- Audio
Available in Ailoot · inputs & methods
Ailoot Ultra · Text to speech POST /v1/audio/speech
- Input types
text- Output types
audio- Output format
- mp3
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits elevenlabs/eleven-flash-v2.5 | Default— |
Fieldinput | Typestring | RequirementRequired | Values & limits Minimum length: 1 Maximum length: 40,000 Unit: Unicode characters | Default— |
Fieldvoice | Typestring | RequirementRequired | Values & limits george, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will | Default— |
Fieldresponse_format | Typestring | RequirementRequired | Values & limits mp3 | Default— |
Input material combinations
text_to_speech · Required: input
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, input, voice, response_format |
Parametervoice_ids | Contractgeorge, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will |
Parameterresponse_format | Contractmp3 |
Parametermax_input_characters | Contract40000 |
Parameterother_options | Contractfalse |
Parameterinput | Contractexact UTF-8 text; Unicode character count without normalization |
Parametermaterial_types | Contracttext |
Lifecycle: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · actual returned task_id or media library record
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Select exact voice from this model profile.
Input characters and audio seconds are different meters.
Pricing
Tariff references do not add request options. Supported parameters are listed for the selected method.
- Fast mode
- Not specified When fast mode is selected
- Flex mode
- Not specified When flex mode is selected
- Maximum reasoning effort
- Not specified When maximum reasoning effort uses the default adjustment
Ailoot rates
Prices by configuration
Match each charge to the conditions shown. Use one rate for each set of alternative configurations.
| Configuration | Rate schedule | Billing unit | Charge |
|---|---|---|---|
| ConfigurationBase token rates | Rate scheduleBase rate | Billing unit— | Charge Input · Input tokens — / 1K tokens Output · Output tokens — / 1K tokens Input · Cache read — / 1K tokens Input · Cache write — / 1K tokens Input · Cache write, 1 hour — / 1K tokens |
| Configurationinput character | Rate schedule— | Billing unitper input character | Charge Input · input character $0.00008 per input character |
Reference tariff details
Model-level reference schedules do not change method selection, quotes or charges. Active charges use the selected Ailoot method rates.
ElevenLabs: Eleven Flash v2.5
Prices by configuration
| Configuration | Billing conditions | Charge |
|---|---|---|
| ConfigurationElevenLabs: Eleven Flash v2.5 · Default configuration | Billing conditionsDefault configuration | Charge Input · Input characters $0.00004 per input character |
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot Ultra · Text to speech
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "elevenlabs/eleven-flash-v2.5", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["george", "sarah", "adam", "alice", "bella", "bill", "brian", "callum", "charlie", "chris", "daniel", "eric", "harry", "jessica", "laura", "liam", "lily", "matilda", "river", "roger", "will"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o speech.mp3
Receive and save results
Ailoot Ultra · Text to speech
mp3
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Other content reads
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-assets.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
Keep all completed results
Keep every complete returned response, file and content part.
Keep the complete binary result and headers. If JSON/multiple outputs are returned, retain every data item and fetch each actual signed asset URL.
If the original response needs checking
Retain original operation_id/X-Client-Request-ID for reconciliation without resubmission; no dedicated audio poll route.
Response fields
| Field | Type |
|---|---|
Fieldbinary audio | Typebytes |
Fieldresponse headers | Typeheaders |
Errors and next steps
| Response | Condition | Next step |
|---|---|---|
Response400 · invalid_request_error | ConditionInvalid required fields, material representation or parameter value | Next stepCorrect the indicated fields before a new creation request. |
Responseserver_error | ConditionThe returned response says the operation or result requires a check | Next stepKeep the original returned operation/task ID, request headers and response; continue supported reads of that original operation. Do not resubmit the creation request. |
Aliases
Model aliases
Ailoot Ultra elevenlabs/eleven-flash-v2.5
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · ElevenLabs: Eleven Flash v2.5
- What inputs and results are available?
POST /v1/audio/speech·elevenlabs/eleven-flash-v2.5:text→audio- Which fields does the request use?
POST /v1/audio/speech·elevenlabs/eleven-flash-v2.5:model,input,voice,response_format- What limits apply?
POST /v1/audio/speech·elevenlabs/eleven-flash-v2.5:input.maximum_length:40000