The tools for producing narration without hiring voice actors, compared on cost per finished hour rather than per seat. Studio subscriptions cap downloaded minutes; per-character APIs do not. One hour of audio runs from $0.31 to $40 depending on which you pick.
What engineers actually use to add voice to web and mobile apps, and the four decisions that matter: the browser's built-in API versus a cloud one, streaming versus batch, where the key lives, and how to keep audio playing on iOS.
Which speech platform to pick when your chatbot has to talk. The decision is not voice quality, it is whether you need a TTS API or a full voice agent, plus how the model reads account numbers and order IDs back to a caller.
GET /v1/audio/models now returns endpoints and curated_voices per model, so a model picker can show only valid synthesis routes and reject unsuitable voice selections before the request reaches the server.
Generate the same script in English, German, Spanish, French, Italian, and Portuguese with the Speechify TTS API. Pick a simba-3.0 voice for each locale, call POST /v1/audio/speech per language, keep the key server-side.
POST /v1/audio/speech, /stream, and /stream/with-timestamps now return voice_not_found or a model-not-found message on a missing voice or model, instead of an opaque passthrough 404.
The AI SDK ships generateSpeech() but no Speechify provider. So we wrote one: a dependency-free custom speech model that maps POST /v1/audio/speech onto the SDK's SpeechModelV4 interface, key held server-side in a Next.js route.
simba-3.2 is now the recommended Speechify TTS model, and GET /v1/audio/models lets you discover it at runtime instead of hardcoding a model list. What shipped, the voice allow-list, and how to move off simba-3.0.
The top 10 text-to-speech APIs of 2026, benchmarked on the independent Artificial Analysis Speech Arena. Simba 3.2 is #1 on Artificial Analysis at $6 to $10 per million characters, above every ElevenLabs, Cartesia and Google model. Self-hosted models left out.
Simba 3.0 is no longer English-only — it now officially covers English plus German, Spanish (ES/MX), French, Italian, and Brazilian Portuguese. The same release flags the Simba 1.6 models as legacy and confirms Simba 3.0 accepts cloned voices.
GET /v1/voices now accepts type, locale, gender, and model query filters, applied before pagination so pages stay full — so you can fetch, say, only English cloned voices that support Simba 3.2 in a single call.
simba-3.0 accepts cloned and personal voice_id values self-serve on POST /v1/audio/speech and /v1/audio/stream, the same way simba-english does; simba-3.2 cloning still requires manual approval.
Personal cloned voices can now be synthesized on the curated Simba 3.2 model. Given the model's quality bar, each clone is gated on manual Speechify approval of the voice key, while simba-english and simba-multilingual keep serving clones self-serve.
A new GET /v1/audio/models endpoint returns the models you can pass as the model parameter, each with a default and recommended flag plus the languages it supports — so a model picker can be built at runtime instead of hardcoding the list.
Simba 3.2 is now available on POST /v1/audio/speech and /v1/audio/stream — a streaming-native Simba 3 model with lower TTFB, richer expressivity, and a curated voice allow-list, recommended for new English integrations.
Simba 3.2 is #1 on Artificial Analysis, the independent TTS benchmark. On Voice Arena's blind, listener-voted board it's the #1 real-time voice and #1 on price — the model above it isn't real-time, the nearest at its quality costs 7x more. Nothing you can ship beats it.
Turn long-form ePub or Markdown into a single narrated chapter MP3 with a runnable Python demo: chunk on sentence boundaries, synthesize each chunk, stitch with ffmpeg.
Speechify TTS speech and streaming endpoints now accept output_format values like pcm_16000, ulaw_8000, and bitrate-tuned mp3 variants without changing existing callers.
How to stream audio from the Speechify TTS API in Python using the SDK and native requests. Covers chunked streaming to disk and piping audio to a player without waiting for the full payload.
The Build API moved GET /v1/voices from a bare array to a voices object with pagination fields, making the response shape safer for SDKs and future growth.
A practical guide to synthesizing speech in Node.js using the Speechify TTS API. Covers installation, a basic synthesis call, streaming audio to disk, and what to reach for next.
A small, public repo of runnable Speechify recipes. Pick a folder, drop in your API key, run it. TypeScript and Python today, SDK and native REST side by side.