Text-to-speech for AI voice agents.Unlimited minutes, one flat rate.
Drops into the voice stack you already run
p95, single stream
108ms
one millisecond above the median
Languages from one cloned voice
23
identity survives translation
Reference audio to a working clone
10s
no training job, no per-voice fee
Added cost when your volume doubles
$0
lines × rate, whatever the volume
00 · The console
Type a line. Hear it back.
Fig. 0 — Gandr console
the demo call runs this live
01 · The engine
every clip below · production API
The engine, played back.
Six cards, no mockups. The audio, the turn timing, and the languages are real production output — the same the demo call runs on.
One identity · 23 languages
The same voice, three alphabets.
languages the reference never spoke
identity held in blind tests
stock voices, all multilingual
no reference clip needed
The claimOne approval covers every market
The three chips play the same Jenny clone in English, Arabic, and Japanese. One approval covers every market your agent answers — there is no second clone to review.
Hear all 23 →Ten seconds in, a twin out
A reference clip of about ten seconds becomes a working clone — no training job, no per‑voice fee, cached after first use.
How cloning works →One spike, then a flat line
A call is judged by its slowest turn, not its median one — so the number to hold us to is the tail. Fig. 2 below draws the measured percentiles against the human handoff window.
The full benchmark →Three layers under every call
Primary GPU fleet, warm spill, independent fallback — one endpoint in front of all three. A full outage costs latency, never silence.
The serving tiers →Pressed with a seal, trained on nothing
An inaudible watermark is pressed into every clip at generation, on every tier — and nothing you send enters a training set.
The signed clip →02 · Latency
Production API · call-shaped load
Measured, not marketed.
The deadline
Inside the human handoff
Humans hand a conversation back inside ~200 milliseconds; past a second, callers talk over the agent or hang up. First audio lands at 107 ms — and every figure in this panel is server time to first audio on the production API, percentile attached.
Single stream
107 ms to first audio
107 ms at the 50th percentile, 108 ms at the 95th. One millisecond apart, which is the shape a latency curve has when nothing is hiding in the tail.
Past capacity
A busy signal, not a stall.
The API refuses fast: a retryable busy signal instead of a hang. Clients retry in milliseconds, the fleet scales up within seconds, and the call survives.
Collections · payment reminder
Sam · Dane
Agent · Leo
Sam · Dane
Recovery calls that keep the customer
The exchange
Both sides of a live call.
Two stock voices on one wire — every turn rendered on the production API and stamped with its date.
Sit in on three calls →Fig. 2 — time to first audio
SourceGandr engineering · p50/p95 server time to first audio · production API
ms · 0–1000
03 · The build
One request shape. No meter behind it.
Explore the docsthe request
Everything is a field on one POST.
Voice, language, delivery — one JSON body carries the whole read. The same shape streams over SSE and WebSocket; only the path changes.
- <break/>
- a timed pause — the line just holds
- <spell>
- read character by character
- emotion
- names the read — tuned presets under the hood
Listing 1 — POST /v1/tts/bytes — the request behind the player below
cap 2,000 characters · auth x-api-key or Bearer · usage per key at GET /v1/usage
the stream
The same request, played.
The paragraph is the transcript from Listing 1, controls inline. Pick the language, the voice, and the emotion — the audio renders on the production API when you press play.
the clock
the player below re-measures this figure on every take
Your appointment moved to Thursday at ten. <break time="600ms"/> The confirmation code is <spell>KH4T29</spell>. <break time="800ms"/> Take your time — I’ll hold the line while you write it down.
the cost
Nothing above is metered — not the characters, not the minutes, not the retakes. The bill is lines × rate, one number that holds still while your volume moves.
The whole price list04 · Book the call
Bring your script.
Table 3 — the 30 minutes, itemized
00–05
Your stack
Where TTS sits, who bills you, your volume.
05–20
Your script, live
Your production prompts in a cloned voice, latency readout running.
20–30
The arithmetic
Your volume on flat lines, and a 20-line pilot plan.
Bring
- Production prompts
- Current TTS invoice
- Ten seconds of your voice, to hear it cloned
You leave with — The recording, a one-page pilot plan — worst case, leverage on your current vendor.
Calendar broken?
contact@gandr.aiFig. 5 — 30 minutes · live synthesis of your script
