Source: https://ailoot.ai/models/en/elevenlabs-eleven-flash-v2/
Canonical: https://ailoot.ai/models/en/elevenlabs-eleven-flash-v2/
Language: en

# ElevenLabs: Eleven Flash v2

[Markdown](https://ailoot.ai/models/en/elevenlabs-eleven-flash-v2/index.md) · [JSON](https://ailoot.ai/models/en/elevenlabs-eleven-flash-v2/facts.json)

## [ElevenLabs: Eleven Flash v2](https://ailoot.ai/models/en/elevenlabs-eleven-flash-v2/)

Eleven Flash v2 is ElevenLabs’ English-only text-to-speech model for responsive voice interactions. It converts prepared text into spoken audio, with a 30,000-character request limit and documented controls for pauses and individual-word pronunciation.

- [**Ailoot Ultra · Text to speech** `POST /v1/audio/speech` `elevenlabs/eleven-flash-v2`](https://ailoot.ai/models/en/elevenlabs-eleven-flash-v2/#method-0)

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 is ElevenLabs’ English-only speech-synthesis model for responsive voice applications. It takes a written utterance and produces spoken audio in the selected voice. The manufacturer positions Flash for real-time conversation and interactive experiences, such as assistant confirmations, spoken instructions and game responses. This named edition is separate from multilingual Flash v2.5 and the expressive v3 and v4 families.

English is the language profile of Flash v2. A voice can supply a regional accent and a particular tone, but it does not make this edition a multilingual model. Choose a voice that matches the intended listener and the purpose of the line. An assistant confirmation, an instructional narrator and an interactive character can require different cadence even when the factual content is the same. Prepare the actual English words that should be spoken before synthesis.

A request supports up to 30,000 characters. The producer’s approximate audio length beside this limit is not a fixed duration. For an interactive reply, keep one main thought and a clear ending; for a longer recording, divide related text at sentence or section boundaries. The shared TTS workflow documents neighbouring text or request context for preserving prosody across connected generations, so segmentation need not remove the relation between successive passages.

Flash v2’s pause workflow uses SSML break tags. The product guide gives \<break time="1.5s" /\> as a way to request a natural pause, with up to three seconds documented. The voice influences the delivery around the break, and excessive tags can cause speed changes, noise or artifacts. Use a break where the listener needs a transition, not between every word. Punctuation and ellipses can also influence timing but are less consistent and can add a hesitant tone.

Individual words can use SSML phoneme notation in IPA or CMU Arpabet. The manufacturer recommends CMU Arpabet for more predictable v2 pronunciation and says phoneme rules should be applied separately to each word of a multi-word name. Pronunciation dictionaries can retain the preferred phoneme or an alias for a recurring term; their matching is case-sensitive. This is different from v4’s native slash-wrapped IPA syntax and from the pronunciation profile of Flash v2.5.

Prepare reference codes, dates and abbreviations in the desired spoken form. The same digits can represent a quantity or an identifier, so specify whether the listener should hear a whole number or separate digits. Write the month and date unambiguously and expand abbreviations that should be spoken as words. Ordinary explanatory direction placed in the text may itself be read aloud; v3 and v4’s expressive audio tags are not the control profile described for this edition.

The producer’s format family includes MP3, uncompressed 16-bit PCM, μ-law and A-law for telephony, and Opus. The shared workflow can deliver a complete recording or return speech progressively. Voice settings influence stability, resemblance and pace, with a documented speed range of 0.7 to 1.2 and 1.0 unchanged. These settings guide a performance without guaranteeing an identical take or a precise final recording length.

For a practical English help message, give the result first, then one next step: confirm a saved selection, clearly pronounce the relevant field name and explain what the user can do next. For a tutorial, write a complete instruction and use a pause before the following action. Review the difficult names, numbers and transitions in the selected audio. Keep that take with its script and pronunciation preparation so it can become a reusable spoken cue, notification or assistant response.

**Ailoot Ultra · Text to speech** `POST /v1/audio/speech` `elevenlabs/eleven-flash-v2`

[`elevenlabs/eleven-flash-v2`](https://ailoot.ai/models/en/#m=elevenlabs%2Feleven-flash-v2&route=Ultra&caller=elevenlabs%2Feleven-flash-v2&fmt=speech)

ElevenLabs /`elevenlabs/eleven-flash-v2`

### Overview

Eleven Flash v2 is ElevenLabs’ English-only text-to-speech model for responsive voice interactions. It converts prepared text into spoken audio, with a 30,000-character request limit and documented controls for pauses and individual-word pronunciation.

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 |
| --- | --- | --- | --- | --- |
| Field`model` | Type`string` | RequirementRequired | Values & limits elevenlabs/eleven-flash-v2 | Default— |
| Field`input` | Type`string` | RequirementRequired | Values & limits Minimum length: 1 Maximum length: 30,000 Unit: Unicode characters | Default— |
| Field`voice` | Type`string` | 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— |
| Field`response_format` | Type`string` | RequirementRequired | Values & limits mp3 | Default— |

Input material combinations

**text\_to\_speech** · Required: input

Method parameters and lifecycle

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, input, voice, response\_format |
| Parameter`voice_ids` | Contractgeorge, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will |
| Parameter`response_format` | Contractmp3 |
| Parameter`max_input_characters` | Contract30000 |
| Parameter`other_options` | Contractfalse |
| Parameter`input` | Contractexact UTF-8 text; Unicode character count without normalization |
| Parameter`material_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

#### Prices by configuration

| Configuration | Billing conditions | Charge |
| --- | --- | --- |
| ConfigurationElevenLabs: Eleven Flash v2 · 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 →](https://ailoot.ai/docs/en/billing/reserve/)

### Example requests

#### Ailoot Ultra · Text to speech

curl

```bash
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", "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}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

Other content reads

Media libraryTask statusAsset details

```bash
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
```

```bash
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
```

```bash
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 |
| --- | --- |
| Field`binary audio` | Typebytes |
| Field`response 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. |
| Response`server_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`](https://ailoot.ai/models/en/#m=elevenlabs%2Feleven-flash-v2&route=Ultra&caller=elevenlabs%2Feleven-flash-v2&fmt=speech)

#### Method path aliases

Use the method paths shown above.

#### Related caller IDs

[`elevenlabs/eleven-flash-v2`](https://ailoot.ai/models/en/#m=elevenlabs%2Feleven-flash-v2&route=Ultra&caller=elevenlabs%2Feleven-flash-v2&fmt=speech)

FAQ · ElevenLabs: Eleven Flash v2

What inputs and results are available?

`POST /v1/audio/speech` · `elevenlabs/eleven-flash-v2`: `text` → `audio`

Which fields does the request use?

`POST /v1/audio/speech` · `elevenlabs/eleven-flash-v2`: `model`, `input`, `voice`, `response_format`

What limits apply?

`POST /v1/audio/speech` · `elevenlabs/eleven-flash-v2`: `input.maximum_length`: `30000`

Connect Ailoot to Claude Code, OpenCode, Hermes or your own app.

## The company and its project portfolio

The company and its project portfolio: millions of customers; monthly sales in the billions.

## Buy tokens at a discount.

Subscription discounts for regular use. Promo codes offer up to 50% off token purchases.

Subscription

Choose a discounted plan for your regular requests.

Promo code: up to 50% off

Enter your code at checkout. The price updates to reflect the current promotion.

Spending in your history

The model, tokens and amount are recorded for each request.

[Choose a subscription](https://ailoot.ai/docs/en/billing/subscriptions/) · [View model prices](https://ailoot.ai/models/en/)

## Connect the API to a product you sell.

Use Ailoot in SaaS, apps and bots under its official service offer and licence agreement. Request a reseller licence for resale.

Commercial application

Add text, image, video and audio generation to paid features in your service.

Reseller licence

Send a description of your project and how you provide access. Request written terms for use and resale.

Documents on the website

The service offer, licence agreement and data processing policy are available before you connect.

[Request a reseller licence](mailto:support@ailoot.ai) · [Service offer and licence agreement](https://ailoot.ai/legal/offer?lang=en)

## Ailoot · The company and its project portfolio





Ailoot combines established operating experience, a large client base, stable service and ongoing KPI control.





The company and its project portfolio: millions of customers; monthly sales in the billions.





Ailoot brings that operating experience to API access for AI features in customer products, agents, applications and automations.
