Skip to main content

Introduction

Bland TTS lets you clone a voice from short audio samples and use that voice anywhere a Bland agent speaks, on calls, on the Speak endpoint, or over the streaming WebSocket. Two cloning engines are available:
  • V3 (default), single 10-second sample, 17+ languages, highest fidelity.
  • V2, exactly 1 WAV file, 17+ languages, production-stable previous generation.
To create or manage voices in the dashboard: https://app.bland.ai/dashboard/voices?tab=studio To clone programmatically, see Clone Voice.

Sample requirements

For any engine, the source sample should have:
  • Clear enunciation
  • No background noise
  • A single speaker
  • At least 100 ms of silence at the start and end (avoid cutting off mid-word)
  • Emotional variety, for more expressive output
Tip: Use any audio editing tool to trim and clean your sample before uploading.

Per-engine constraints

V2 and V3 voices are single-sample by design.

Voice configuration

Each cloned voice has two adjustable defaults. Set them via the Studio UI or Update Voice Config, or override per call via the Speak body parameters.

Consistency (V2 and V3)

consistency controls how many frames the decoder waits before emitting the first audio frame.
  • Lower values: faster first audio, but slightly reduced quality in the opening few hundred milliseconds.
  • Higher values: smoother output, slightly slower time-to-first-audio.
Range: integer 1-32 (V2/V3), float 0.0-1.0 (V1, where higher = more consistent).

Boost / Expressiveness (V2 and V3 use boost; V1 uses expressiveness)

Adds prompting to align the output more closely with the original voice sample.
Important Note: Disable boost if your agent needs to code-switch or speak multiple languages not present in your sample. If you see broken or distorted output, try toggling it off.
V1 uses a continuous expressiveness (0.0-1.0) instead of the binary boost switch.

Text formatting

Spacing

V2 and V3 process text token by token, so spacing matters. Correct:
Incorrect:
Hyphenated or concatenated words can reduce accuracy:
Note: For Chinese and Japanese, the tokenizer handles character segmentation automatically. No manual spacing required.

Pause markers

Insert <|N|> where N is a duration in seconds (0.1-10.0) to add a pause:

Text normalization

The model automatically normalizes common patterns. You do not need to pre-format these:
  • Emails: john@gmail.com becomes john at gmail dot com
  • URLs: www.google.com becomes www dot google dot com
  • Smart quotes: converted to straight quotes
  • Repeated punctuation: Hello!!! becomes Hello!
  • Missing spaces: End.Start becomes End. Start

Numbers

For best results with numbers:
  • Keep sequences to roughly 6 characters or fewer
  • Format numbers as words when possible
  • End sentences containing numbers with a period
  • For long sequences, break them up with pause markers
Important Note: If a sentence does not end with proper punctuation, the model may drop the last number.

Punctuation

Punctuation directly affects speech delivery:
  • Ellipses (): add pauses and weight
  • CAPITALIZATION: increases emphasis
  • Standard punctuation (., ,, !): natural speech rhythm
  • Dashes: can add stutters or breaks

Best practices

  • Pick a sample with emotional variety for more expressive output.
  • Use natural speech patterns and proper punctuation.
  • Avoid unusual formatting (excessive dashes or ellipses) for timing control. Use pause markers (<|N|>) instead.
  • Keep word spacing clean.
  • End sentences with appropriate punctuation, especially when numbers are involved.

Docs for agents: llms.txt