SEC 07 / MODELS & LATENCY
Choosing a model & latency
ElevenLabs exposes a models endpoint with capability information — supported operations, languages, character limits, rates, and other feature flags. Applications that need to support several models should inspect those capabilities rather than hardcoding every assumption; a model that gains a language or loses a limit shouldn’t require a code change to discover.
The three main TTS models
| Model | Main strength | Language/length profile | Primary trade-off |
|---|---|---|---|
eleven_flash_v2_5 |
Lowest latency | 32 languages; up to 40,000 characters | Less robust number normalization by default |
eleven_multilingual_v2 |
Quality and stability | 29 languages; up to 10,000 characters | Higher latency and cost than Flash |
eleven_v3 |
Expressiveness and multi-speaker output | More than 70 languages; up to 5,000 characters | Smaller request size and different latency profile |
Per the models overview, Flash v2.5 runs at approximately 75 ms of model inference latency, excluding network and other end-to-end overhead. Multilingual v2 is positioned for higher-quality, stable multilingual output, while v3 is the expressive, multi-speaker option.
The Flash number-normalization trap
Flash v2.5 disables number normalization by default, as described in the models overview. That can affect dates, currencies, telephone numbers, abbreviations, and digit sequences. Multilingual v2 generally provides stronger normalization, and enterprise configurations can enable explicit text normalization where supported.
For important numerical content, preprocess it yourself. For example:
£1,250.40
may be transformed into:
one thousand two hundred and fifty pounds and forty pence
Similarly, telephone numbers may need deliberate grouping rather than relying on a model to infer the desired spoken form.
Where latency actually comes from
The latency optimization best practices emphasize five things:
- selecting Flash for low-latency use cases;
- beginning playback through streaming;
- locating application servers near the ElevenLabs region;
- using WebSockets only when text arrives incrementally;
- using automatic generation-trigger behaviour for dynamic text streams.
Even after all five are applied, end-to-end latency still includes LLM generation time, network transit, buffering, decoding, and audio-device startup — model inference is only one segment of the pipeline a user actually experiences.
Output formats
Choose the output format for the downstream consumer, not merely for maximum theoretical quality.
| Destination | Typical choice |
|---|---|
| Browser playback/download | MP3 |
| Editing or further DSP | PCM/WAV-compatible raw audio |
| Low-latency application pipeline | PCM at the application’s native rate |
| Telephone network | ulaw_8000 or the format required by the carrier |
| Archival | High-quality PCM or high-bitrate compressed audio |
Avoid repeatedly transcoding. Every extra conversion adds latency, CPU usage, and potential quality degradation.
Chunk sizing for WebSocket TTS
With WebSocket TTS, very small text fragments can produce unnatural prosody and excessive overhead. Very large fragments delay the first generation. Use sentence- or clause-aware buffering rather than forwarding every LLM token individually.
For example:
Bad:
"The"
" total"
" is"
" 1"
","
"250"
Better:
"The total is one thousand two hundred and fifty pounds."
The automatic generation mode, per the same latency optimization best practices, can help decide when enough text has accumulated, but applications should still normalize punctuation, numbers, and incomplete markup before sending it.