# Speko - full text of every page on speko.ai Index: https://speko.ai/llms.txt Each section below names its canonical HTML source and its exact Markdown twin. # The Router for Voice AI Source: https://speko.ai/ Markdown: https://speko.ai/index.html.md [Backed by Y Combinator](https://www.ycombinator.com/companies/speko) Every speech model, benchmarked language by language, wired into one API. [Get API key](https://platform.speko.ai/sign-in) ## Router A hosted, provider-neutral STT, LLM and TTS data plane at router.speko.dev, with typed contracts and managed routing. ### Benchmark coverage by language Model EN (English) AR (Arabic) FR (French) DE (German) HI (Hindi) NB (Norwegian) ES (Spanish) TA (Tamil) TE (Telugu) Nova-3 stt-rt-v5 GPT-4o Transcribe GPT-4o-mini Transcribe Qwen3-ASR Chirp 3 Ink-Whisper Pulse Pro Whisper-1 Nova-2 Gradium ASR Grok STT Ink-2 Pulse Realtime STT-1 bench Scribe v2 Realtime Solaria-1 Universal-3.5 Pro Velma 2 Flux GPT Live Transcribe Muse Voice Transcribe Hover a cell for its number. worse better 12 of 24 are only measured in English Their rank in any other language is unknown — including the model that sits at the top of the English table. 4 different models win across 9 languages No single model is best everywhere, so the right pick changes with the language your users speak. ### Score against cost, per stage Accuracy (WER) $0.0008 $0.0160 2.0% 12.0% Universal-3.5 Pro 2.0% · $0.0075 Velma 2 4.4% · $0.0008 GPT-4o Transcribe 2.3% · $0.0060 GPT Transcribe 2.5% · $0.0045 Qwen3-ASR Fast 3.3% · $0.0020 Cost ($/min) \# Model 1 Universal-3.5 Pro assemblyai:universal-3-5-pro 2.0% $0.0075 (Universal-3.5 Pro Realtime at $0.45/hr. Async pre-recorded is $0.0035. Diarization and other add-ons bill on top.) 2 GPT-4o Transcribe openai:gpt-4o-transcribe 2.3% $0.0060 3 GPT Transcribe openai:gpt-transcribe 2.5% $0.0045 (Billed per minute, not per token.) 4 GPT-4o-mini Transcribe openai:gpt-4o-mini-transcribe 2.7% $0.0030 5 Qwen3-ASR alibaba:qwen3-asr-flash 2.8% $0.0054 (qwen3-asr-flash-realtime, Singapore. The file/sync SKU is $0.0021.) 6 Realtime STT-1 inworld:inworld-stt-1 3.3% $0.0025 (On-demand $0.15/hr. The $0.10/hr headline needs a paid Creator subscription.) 7 Qwen3-ASR Fast nari:qwen3-asr-fast 3.3% $0.0020 (Vendor list $0.12 per input audio hour, Partner tier (docs.narilabs.com/models-and-pricing, read 2026-09-13). A free tier of the same model is listed at $0.) 8 Chirp 3 google:chirp_3 3.9% $0.0160 (Speech-to-Text V2 Standard, first tier — one rate for streaming, sync and batch. Dynamic Batch Recognition is $0.003.) 9 Velma 2 modulate:velma-2-stt-streaming-english-v2 4.4% $0.0008 (Published streaming rate for English Fast, $0.05/hr. Batch is $0.025/hr. The $0.06/hr this row used to carry is the MULTILINGUAL row, a different product from the one this id names. Not a measurement.) 10 Solaria-1 gladia:solaria-1 5.0% $0.0125 (Starter pay-as-you-go real-time ($0.75/hr). Pre-recorded is $0.0102/min, and committed Growth pricing goes to $0.0042.) 11 Pulse smallest:pulse 5.1% $0.0040 (Streaming Pulse, the vendor's published per-model rate (smallest.ai/pricing/models; pre-recorded Pulse is $0.003/min). The ~$0.009/min on the main pricing page is the STT slice of a blended voice-agent stack, not this API's list rate.) 12 stt-rt-v5 soniox:stt-rt-v5 7.5% $0.0020 13 Gradium ASR gradium:default 8.4% $0.0104 (3 credits/sec on the XS tier, the cheapest paid plan; $0.0068 at the L tier.) 14 Ink-2 cartesia:ink-2 11.0% $0.0090 (Ink-2 bills 3 credits/sec on Pro, the cheapest paid plan; $0.0071 at Startup, $0.0067 at Scale. The 1 credit/sec rate is Ink-Whisper, a different model.) 15 Nova-3 deepgram:nova-3 12.0% $0.0048 (Streaming pay-as-you-go. Vendor flags it as a limited-time promotional rate; pre-recorded is $0.0043.) — Flux deepgram:flux-general-en — $0.0065 (Flux English streaming pay-as-you-go. Vendor flags it as a limited-time promotional rate; flux-general-multi is $0.0078.) — Scribe v2 Realtime elevenlabs:scribe_v2_realtime — $0.0065 (Scribe v2 Realtime at $0.39/hr, flat across every tier. Batch Scribe v2 is $0.0037.) — GPT Live Transcribe openai:gpt-live-transcribe — $0.0170 (gpt-live-transcribe, the streaming path this row is recommended for.) — Muse Voice Transcribe meta:muse-voice-transcribe-1.0 — $0.0030 (Vendor list price: $3.00 per 1,000 minutes, equivalently $0.18/hr. Streaming and batch are priced identically -- the table does not differentiate -- and there is a single tier, no plan or volume rates.) — Gemini 3.5 Transcribe Live gemini:gemini-3-5-transcribe-live — ~$0.0090 (ESTIMATE, not a published per-minute rate. Google prices this model per token -- $3.50/1M audio in, $21.00/1M text out -- and the ~$0.005/min + ~$0.004/min figures on the pricing page are Google's own estimate at 25 audio tokens/sec input and 175 text tokens/min output, for a blended ~$0.009/min. Speech density moves it, so read it as an order of magnitude rather than a rate card. Every other price on this column is the vendor's published per-minute rate.) ## Gateway The open customer-side runtime for LiveKit and Pipecat: provider-direct streaming, local BYOK credentials and optional Speko-managed routes. ### Run and observe your voice workers Use the native Gateway integrations in your framework, or call the hosted Router through its public OpenAPI and AsyncAPI contracts. ```python from livekit.agents import AgentSession from speko_gateway.livekit import LLM, STT, TTS session = AgentSession( stt=STT(credential_source="auto"), llm=LLM(model="auto", objective="balanced"), tts=TTS(credential_source="auto"), ) ``` ## Point your agent at Speko ```bash $ claude mcp add --transport http speko https://mcp.speko.ai/mcp ``` [Read the docs](https://docs.speko.ai) [Get API key](https://platform.speko.ai/sign-in) # Voice agent infrastructure for STT, LLM and TTS Source: https://speko.ai/voice-agent-infrastructure Markdown: https://speko.ai/voice-agent-infrastructure/index.html.md Architecture Voice agent infrastructure across the hosted Speko Router, the open customer-side Gateway, and the separate hosted Agents API. ## The three Speko boundaries - **Router.** The hosted data plane at[router.speko.dev](https://router.speko.dev) accepts native, typed STT, LLM, and TTS requests. It owns managed routing, admission, provider dispatch, normalized errors, and usage settlement. - **Gateway.** The open runtime in[SpekoAI/gateway](https://github.com/SpekoAI/gateway)runs inside the customer workload. It keeps BYOK credentials local, provides one streaming protocol across providers, and ships native LiveKit and Pipecat integrations. - **Agents API.** The hosted API at[api.speko.dev](https://api.speko.dev) owns agents, sessions, phone numbers, calls, and the managed conversation loop. ## Choose by trust boundary Choose Router when Speko should operate the managed model data plane. Choose Gateway when provider-direct audio should stay in the customer workload or provider keys must remain inside a customer process. The two can coexist: a LiveKit session can use Gateway for direct STT and TTS while using Router for a managed LLM. Read Gateway's public trust document before deciding which process may inspect environment variables and which traffic crosses the hosted boundary. Choose the Agents API when Speko should also own the agent definition, session lifecycle, phone number, and call transport. A Router credential does not create an agent or place a call, and a Gateway local token is not a hosted API key. ## Use the contracts, not guessed compatibility Router is not an OpenAI-compatible hostname. Its canonical OpenAPI 3.1 document is available at[router.speko.dev/openapi.json](https://router.speko.dev/openapi.json), with streaming speech documented by the AsyncAPI contract in the public Gateway repository. Every POST requires an`Idempotency-Key`, and every non-2xx response uses the same typed error envelope with a stable code, message, recovery hint, and retryable flag. Start with the [Router quickstart](https://speko.ai/docs), the[LiveKit Gateway guide](https://speko.ai/docs/livekit), or the[Pipecat Gateway guide](https://speko.ai/docs/pipecat). The[versioning policy](https://speko.ai/developers/versioning) defines compatibility, deprecation, and Sunset behavior for durable clients. # Voice AI models and benchmarks Source: https://speko.ai/models Markdown: https://speko.ai/models/index.html.md Catalog Every model Speko has measured, and the 73 of 73 catalog entries a request can pin today. Accuracy, latency and price as each board published them — nothing on this page is estimated to fill a column. Provider 82 models ## Speech-to-text20 \# Model Provider Id 1 Pulse Smallest AI 5.1% 8.0% 178ms $0.0040 (Streaming Pulse, the vendor's published per-model rate (smallest.ai/pricing/models; pre-recorded Pulse is $0.003/min). The ~$0.009/min on the main pricing page is the STT slice of a blended voice-agent stack, not this API's list rate.) 2 Nova-3 Deepgram 12.0% 12.9% 106ms $0.0048 (Streaming pay-as-you-go. Vendor flags it as a limited-time promotional rate; pre-recorded is $0.0043.) 3 Flux Deepgram not measured 6.6% 406ms $0.0065 (Flux English streaming pay-as-you-go. Vendor flags it as a limited-time promotional rate; flux-general-multi is $0.0078.) 4 Ink-2 Cartesia 11.0% 9.9% 102ms $0.0090 (Ink-2 bills 3 credits/sec on Pro, the cheapest paid plan; $0.0071 at Startup, $0.0067 at Scale. The 1 credit/sec rate is Ink-Whisper, a different model.) 5 Qwen3-ASR Alibaba 2.8% 4.0% 424ms $0.0054 (qwen3-asr-flash-realtime, Singapore. The file/sync SKU is $0.0021.) 6 Chirp 3 Google 3.9% 7.4% 581ms $0.0160 (Speech-to-Text V2 Standard, first tier — one rate for streaming, sync and batch. Dynamic Batch Recognition is $0.003.) 7 Scribe v2 Realtime ElevenLabs not measured 3.4% 233ms $0.0065 (Scribe v2 Realtime at $0.39/hr, flat across every tier. Batch Scribe v2 is $0.0037.) 8 Realtime STT-1 Inworld 3.3% 3.6% 139ms $0.0025 (On-demand $0.15/hr. The $0.10/hr headline needs a paid Creator subscription.) 9 Universal-3.5 Pro AssemblyAI 2.0% 2.0% 66ms $0.0075 (Universal-3.5 Pro Realtime at $0.45/hr. Async pre-recorded is $0.0035. Diarization and other add-ons bill on top.) 10 Velma 2 Modulate 4.4% 5.4% 1.11s $0.0008 (Published streaming rate for English Fast, $0.05/hr. Batch is $0.025/hr. The $0.06/hr this row used to carry is the MULTILINGUAL row, a different product from the one this id names. Not a measurement.) 11 stt-rt-v5 Soniox 7.5% 7.3% 78ms $0.0020 12 GPT-4o Transcribe OpenAI 2.3% 5.8% 572ms $0.0060 13 GPT Transcribe OpenAI 2.5% 6.2% 817ms $0.0045 (Billed per minute, not per token.) 14 GPT Live Transcribe OpenAI not measured 4.5% 1.12s $0.0170 (gpt-live-transcribe, the streaming path this row is recommended for.) 15 Qwen3-ASR Fast Nari 3.3% 3.2% 33ms $0.0020 (Vendor list $0.12 per input audio hour, Partner tier (docs.narilabs.com/models-and-pricing, read 2026-09-13). A free tier of the same model is listed at $0.) 16 GPT-4o-mini Transcribe OpenAI 2.7% 6.4% 460ms $0.0030 17 Gradium ASR Gradium 8.4% 11.7% 334ms $0.0104 (3 credits/sec on the XS tier, the cheapest paid plan; $0.0068 at the L tier.) 18 Solaria-1 Gladia 5.0% 11.4% 596ms $0.0125 (Starter pay-as-you-go real-time ($0.75/hr). Pre-recorded is $0.0102/min, and committed Growth pricing goes to $0.0042.) 19 Muse Voice Transcribe Meta not measured 4.6% not measured $0.0030 (Vendor list price: $3.00 per 1,000 minutes, equivalently $0.18/hr. Streaming and batch are priced identically -- the table does not differentiate -- and there is a single tier, no plan or volume rates.) 20 Gemini 3.5 Transcribe Live Google not measured not measured 1.22s ~$0.0090 (ESTIMATE, not a published per-minute rate. Google prices this model per token -- $3.50/1M audio in, $21.00/1M text out -- and the ~$0.005/min + ~$0.004/min figures on the pricing page are Google's own estimate at 25 audio tokens/sec input and 175 text tokens/min output, for a blended ~$0.009/min. Speech density moves it, so read it as an order of magnitude rather than a rate card. Every other price on this column is the vendor's published per-minute rate.) ## LLM14 \# Model Provider Id 1 gpt-5.6-luna OpenAI 94.21% (84–100% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 659ms 70% 0% $1.20 2 gpt-4.1 OpenAI 91.40% (78–100% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 640ms 59% 10% $8.00 3 gpt-5.6-terra OpenAI 87.37% (74–98% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 701ms 66% 0% $12.00 4 gpt-4.1-mini OpenAI 87.19% (78–95% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 708ms 40% 57% $1.60 5 gpt-oss-120b (Baseten) Baseten 86.32% (72–98% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 393ms 71% 27% $0.50 6 gpt-oss-120b (Cerebras) Cerebras 85.00% (70–96% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 195ms 68% 30% $0.75 7 Claude Haiku 4.5 Anthropic 82.46% (67–95% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 532ms 2% 0% $5.00 8 Claude Sonnet 5 Anthropic 81.72% (65–95% 95% CI bootstrap over items · n=93 · measured 2026-08-25) 1.21s 40% 0% $10.00 9 DeepSeek-V4-Flash-0731 Baseten 80.18% (71–90% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 361ms 5% 10% $0.26 10 gemma-4-31b Cerebras 77.72% (62–92% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 192ms 53% 0% $1.49 11 gemini-3.8-flash Gemini 77.37% (61–92% 95% CI bootstrap over items · n=95 · measured 2026-09-03) not measured 69% 0% $3.75 12 GLM-4.7 Baseten 72.46% (59–85% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 275ms 2% 17% $2.20 13 Llama-3.3-70B Together 64.21% (43–84% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 698ms 74% 0% $1.04 14 inkling-small Baseten 57.72% (43–73% 95% CI bootstrap over items · n=95 · measured 2026-08-25) 177ms 72% 0% $1.20 ## Text-to-speech36 \# Model Provider Id 1 eleven_v3_conversational ElevenLabs 1590 266ms $50.0 2 gemini-3.1-flash-tts-preview Gemini 1591 978ms ~$33.3 3 aura-2 Deepgram 1584 125ms $30.0 4 flux Deepgram ~1550 106ms $45.0 5 sonic-3.5 Cartesia 1574 121ms $50.0 6 sonic-3.6 Cartesia ~1578 120ms $50.0 7 tts-rt-v1 Soniox 1569 362ms ~$13.0 8 tts-rt-v2 Soniox ~1606 381ms ~$13.0 9 simba-3.2 Speechify 1573 345ms $10.0 10 inworld-tts-2 Inworld 1561 116ms $25.0 11 inworld-tts-2-flash Inworld ~1501 82ms $15.0 12 s2.1-pro Fish Audio ~1566 185ms $15.0 13 lightning_v3.1 Smallest 1544 173ms $17.5 14 grok-tts xAI Grok 1495 272ms $15.0 15 Gradium TTS Gradium ~1585 272ms $57.8 16 gpt-4o-mini-tts OpenAI 1424 691ms ~$20.0 17 arcanav3 Rime 1429 238ms $40.0 18 speech-2.8-hd MiniMax 1431 294ms $100.0 19 octave-2 Hume 1377 448ms $100.0 20 qwen3-tts-flash Qwen 1310 472ms $10.0 21 palabra-tts-v1 Palabra ~1520 72ms $30.0 22 bland-speech Bland ~1569 303ms $40.0 23 Qwen3-TTS Fast Nari ~1536 not measured $10.0 24 Maya 2 Native Maya not measured 100ms ~$4.0 25 eleven_flash_v2_5 ElevenLabs ~1494 not measured $50.0 26 eleven_turbo_v2_5 ElevenLabs ~1466 not measured $50.0 27 eleven_multilingual_v2 ElevenLabs ~1472 not measured $100.0 28 eleven_flash_v2 ElevenLabs ~1507 not measured $50.0 29 eleven_turbo_v2 ElevenLabs ~1492 not measured $50.0 30 sonic-3 Cartesia ~1551 not measured $50.0 31 coda Rime ~1535 not measured $50.0 32 mistv3 Rime ~1428 not measured $30.0 33 octave-1 Hume ~1455 not measured $100.0 34 speech-2.6-hd MiniMax ~1450 not measured ~$100.0 35 speech-2.6-turbo MiniMax ~1408 not measured ~$60.0 36 lightning_v3.1_pro Smallest ~1447 not measured $19.5 ## Speech-to-speech12 \# Model Provider Id Price as published 1 grok-voice-think-fast-2.0 xAI 0.85 0.67 820ms $0.08 · min 2 gemini-3.1-flash-live Gemini 0.77 0.78 1.11s $3.00 / $12.00 · 1M tok 3 gpt-realtime OpenAI 0.79 0.84 494ms $32 / $64 · 1M tok 4 gpt-realtime-2.1-mini OpenAI 0.76 0.83 1.01s $10 / $20 · 1M tok 5 gemini-3.8-live Gemini 0.87 0.83 1.21s $0.005 · min 6 gemini-3.8-live-extended-thinking Gemini 0.83 0.83 844ms $0.005 · min 7 gpt-live-1 OpenAI 0.86 0.78 1.22s $0.05 · min 8 grok-voice-fast xAI 0.74 0.44 1.11s $0.05 · min 9 gpt-realtime-2 OpenAI 0.67 0.87 1.10s $32 / $64 · 1M tok 10 gpt-realtime-2.1 OpenAI 0.63 0.56 1.10s $32 / $64 · 1M tok 11 gpt-realtime-mini OpenAI 0.65 0.77 614ms $10 / $20 · 1M tok 12 grok-voice-think-fast-1.0 xAI 0.60 0.22 1.01s $0.05 · min ## Measured per language 26 studies across 13 languages. ### Spanish speech-to-text \# Model Provider Id WER batch 1 GPT-4o Transcribe OpenAI 3.8% 2 Universal-3.5 Pro AssemblyAI 4.0% 3 Qwen3-ASR Alibaba 4.4% 4 GPT-4o-mini Transcribe OpenAI 4.6% 5 Chirp 3 Google 5.4% 6 Gradium ASR Gradium 6.7% 7 Ink-Whisper Cartesia 7.3% 8 stt-rt-v5 Soniox 7.3% 9 Nova-3 Deepgram 8.4% 10 Pulse Pro Smallest AI 8.4% 11 Nova-2 Deepgram 11.3% 12 Scribe v2 Realtime ElevenLabs not measured 13 Qwen3-ASR Realtime Alibaba not measured 14 Pulse Smallest AI not measured ### German speech-to-text \# Model Provider Id WER batch 1 GPT-4o Transcribe OpenAI 2.1% 2 Universal-3.5 Pro AssemblyAI 2.6% 3 Qwen3-ASR Alibaba 3.0% 4 GPT-4o-mini Transcribe OpenAI 4.1% 5 Scribe v2 Realtime ElevenLabs not measured 6 Chirp 3 Google 5.0% 7 Qwen3-ASR Realtime Alibaba not measured 8 Gradium ASR Gradium 5.7% 9 Ink-Whisper Cartesia 7.4% 10 Pulse Smallest AI not measured 11 Pulse Pro Smallest AI 9.2% 12 Nova-3 Deepgram 11.2% 13 Nova-2 Deepgram 12.0% 14 stt-rt-v5 Soniox 13.4% ### French speech-to-text \# Model Provider Id WER batch 1 Universal-3.5 Pro AssemblyAI 3.3% 2 GPT-4o Transcribe OpenAI 4.0% 3 Qwen3-ASR Realtime Alibaba not measured 4 Qwen3-ASR Alibaba 4.4% 5 Scribe v2 Realtime ElevenLabs not measured 6 GPT-4o-mini Transcribe OpenAI 6.8% 7 GPT Live Transcribe OpenAI not measured 8 Chirp 3 Google not measured 9 stt-rt-v5 Soniox 8.6% 10 Nova-3 Deepgram 9.9% 11 Gradium ASR Gradium 10.0% 12 Ink-Whisper Cartesia 10.4% 13 Pulse Smallest AI not measured 14 Pulse Pro Smallest AI 11.8% 15 Nova-2 Deepgram 12.9% ### Arabic speech-to-text \# Model Provider Id CER batch 1 GPT-4o Transcribe OpenAI 2.7% 2 Universal-3.5 Pro AssemblyAI 3.3% 3 Qwen3-ASR Alibaba 3.5% 4 Qwen3-ASR Realtime Alibaba not measured 5 Scribe v2 Realtime ElevenLabs not measured 6 Grok STT xAI not measured 7 GPT-4o-mini Transcribe OpenAI 4.7% 8 S3 Hamsa 5.0% 9 stt-rt-v5 Soniox 5.1% 10 Nova-3 Deepgram 7.1% 11 Ink-Whisper Cartesia 10.2% ### Filipino speech-to-text \# Model Provider Id WER batch 1 GPT-4o Transcribe OpenAI 6.1% 4 GPT-4o-mini Transcribe OpenAI 10.8% 5 Scribe v2 Realtime ElevenLabs not measured 6 GPT Live Transcribe OpenAI not measured 7 Velma 2 multilingual Modulate 12.5% 8 Qwen3-ASR Alibaba 18.8% 9 Qwen-ASR Alibaba 18.8% 10 Ink-Whisper Cartesia 20.7% 11 stt-rt-v5 Soniox 21.9% 12 Nova-3 Deepgram 25.6% 13 Qwen3-ASR Fast Nari not measured 14 Chirp 3 Google 27.3% ### Norwegian speech-to-text \# Model Provider Id WER batch 2 Scribe v1 ElevenLabs 5.7% 3 GPT-4o Transcribe OpenAI 6.4% 5 Scribe v2 Realtime ElevenLabs not measured 6 Velma 2 multilingual Modulate 8.4% 7 stt-rt-v5 Soniox 8.6% 8 Universal-3.5 Pro AssemblyAI 10.1% 9 Chirp 3 Google 11.2% 10 Qwen3-ASR Alibaba 12.0% 11 Qwen-ASR Alibaba 12.0% 12 GPT-4o mini Transcribe OpenAI 14.4% 13 Qwen3-ASR Realtime Alibaba not measured 14 Ink-Whisper Cartesia 14.5% 15 Nova-3 Deepgram 14.6% 16 Nova-2 Deepgram 19.1% ### Hindi speech-to-text \# Model Provider Id WER batch 1 Chirp 3 Google 6.1% 2 Qwen3-ASR Alibaba 9.8% 3 stt-rt-v5 Soniox 12.3% 4 GPT-4o-mini Transcribe OpenAI 12.7% 5 Pulse Pro Smallest AI 13.4% 6 Universal-3.5 Pro AssemblyAI 17.2% 7 Nova-3 Deepgram 20.3% 8 GPT-4o Transcribe OpenAI 21.0% 9 Nova-2 Deepgram 25.1% 10 Ink-Whisper Cartesia 41.9% ### Tamil speech-to-text \# Model Provider Id CER batch 1 Chirp 3 Google 7.4% 2 GPT-4o Transcribe OpenAI 10.1% 3 Pulse Pro Smallest AI 12.1% 4 Nova-3 Deepgram 14.2% 5 stt-rt-v5 Soniox 14.6% 6 GPT-4o-mini Transcribe OpenAI 16.1% 7 Ink-Whisper Cartesia 30.6% ### Telugu speech-to-text \# Model Provider Id CER batch 1 Chirp 3 Google 3.2% 2 GPT-4o Transcribe OpenAI 7.5% 3 Pulse Pro Smallest AI 8.5% 4 stt-rt-v5 Soniox 9.8% 5 GPT-4o-mini Transcribe OpenAI 10.2% 6 Nova-3 Deepgram 13.4% ### Korean speech-to-text \# Model Provider Id CER stream 1 stt-rt-v5 Soniox not measured 2 Scribe v2 Realtime ElevenLabs not measured 3 Grok STT xAI direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 4 Qwen3-ASR Alibaba direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 5 GPT-4o Transcribe OpenAI not measured 6 Solaria-1 Gladia not measured 8 Nova-3 Deepgram not measured ### Chinese (Mandarin) speech-to-text \# Model Provider Id CER stream 1 stt-rt-v5 Soniox not measured 2 Qwen3-ASR Alibaba direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 3 Scribe v2 Realtime ElevenLabs not measured 4 Grok STT xAI direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 6 GPT-4o Transcribe OpenAI not measured 7 Nova-3 Deepgram not measured 8 Solaria-1 Gladia not measured ### Japanese speech-to-text \# Model Provider Id CER batch 1 GPT-4o Transcribe OpenAI 1.6% 3 stt-rt-v5 Soniox 2.0% 4 Scribe v1 ElevenLabs 2.1% 5 Qwen3-ASR Alibaba 2.1% 6 Qwen-ASR Alibaba 2.1% 8 GPT-4o mini Transcribe OpenAI 2.8% 9 Universal-3.5 Pro AssemblyAI direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 10 Scribe v2 Realtime ElevenLabs not measured 11 Velma 2 multilingual Modulate direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 4.8% 12 Pulse Pro Smallest AI 5.5% 13 Pulse Smallest AI direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 14 GPT Live Transcribe OpenAI direct benchmark (Measured directly; no Router model id exists for this benchmark row.) not measured 15 Solaria-1 Gladia 11.5% 16 Nova-3 Deepgram 20.7% 17 Ink-Whisper Cartesia 30.3% 18 Grok STT xAI 42.9% ### Thai speech-to-text \# Model Provider Id CER batch 1 Qwen-ASR Alibaba 3.5% 3 Qwen3-ASR Alibaba 3.5% 5 Scribe v1 ElevenLabs 4.3% 6 Qwen3-ASR Realtime Alibaba not measured 7 GPT Live Transcribe OpenAI not measured 8 stt-rt-v5 Soniox 4.7% 9 Scribe v2 Realtime ElevenLabs not measured 10 Velma 2 multilingual Modulate 5.1% 11 Qwen3-ASR Fast Nari not measured 12 GPT-4o mini Transcribe OpenAI 5.2% 13 GPT-4o Transcribe OpenAI 6.1% 14 Chirp 3 Google 6.4% 15 Solaria-1 Gladia 7.9% 16 Nova-3 Deepgram 8.4% 17 Universal (batch tier) AssemblyAI direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 11.2% 18 Grok STT xAI 16.6% 19 Ink-Whisper Cartesia 24.1% ### Spanish text-to-speech \# Model Provider Id Naturalness Elo 1 eleven_v3_conversational ElevenLabs 1951.00 2 sonic-3.5 Cartesia 1751.00 3 tts-rt-v2 Soniox 1696.00 4 grok-tts xAI Grok 1634.00 5 inworld-tts-2 Inworld 1598.00 6 octave-2 Hume 1568.00 7 tts-rt-v1 Soniox 1525.00 8 lightning_v3.1 Smallest 1487.00 9 speech-2.8-hd MiniMax 1460.00 10 qwen3-tts-flash Qwen 1437.00 11 gpt-4o-mini-tts OpenAI 1408.00 12 arcanav3 Rime 1172.00 13 aura-2 Deepgram 1055.00 ### German text-to-speech \# Model Provider Id Naturalness Elo 1 eleven_v3_conversational ElevenLabs 1798.00 2 grok-tts xAI Grok 1762.00 3 tts-rt-v1 Soniox 1717.00 4 tts-rt-v2 Soniox 1700.00 5 octave-2 Hume 1687.00 6 sonic-3.5 Cartesia 1665.00 7 inworld-tts-2 Inworld 1576.00 8 qwen3-tts-flash Qwen 1573.00 9 speech-2.8-hd MiniMax 1528.00 10 gpt-4o-mini-tts OpenAI 1497.00 11 arcanav3 Rime 1257.00 12 lightning_v3.1 Smallest 1254.00 13 Gradium TTS Gradium 1245.00 14 aura-2 Deepgram 1062.00 ### French text-to-speech \# Model Provider Id Naturalness Elo 1 eleven_v3_conversational ElevenLabs 1775.00 2 tts-rt-v2 Soniox 1695.00 3 grok-tts xAI Grok 1692.00 4 inworld-tts-2 Inworld 1684.00 5 octave-2 Hume 1671.00 6 tts-rt-v1 Soniox 1628.00 7 sonic-3.5 Cartesia 1622.00 8 gpt-4o-mini-tts OpenAI 1535.00 9 qwen3-tts-flash Qwen 1529.00 10 speech-2.8-hd MiniMax 1419.00 11 lightning_v3.1 Smallest 1416.00 12 arcanav3 Rime 1316.00 13 Gradium TTS Gradium 1233.00 14 aura-2 Deepgram 1114.00 ### Arabic text-to-speech \# Model Provider Id Naturalness Elo 1 grok-tts xAI Grok 1736.00 2 sonic-3.5 Cartesia 1644.00 3 tts-rt-v2 Soniox 1612.00 4 eleven_v3_conversational ElevenLabs 1564.00 5 inworld-tts-2 Inworld 1454.00 ### Filipino text-to-speech \# Model Provider Id Naturalness Elo 1 gemini-3.1-flash-tts-preview Gemini 2012.00 2 tts-rt-v2 Soniox 1790.00 3 eleven_v3_conversational ElevenLabs 1693.00 4 gpt-4o-mini-tts OpenAI 1676.00 5 grok-tts xAI Grok 1657.00 6 speech-2.8-hd MiniMax 1598.00 7 sonic-3.5 Cartesia 1597.00 8 inworld-tts-2 Inworld 1251.00 ### Norwegian text-to-speech \# Model Provider Id Naturalness Elo 1 sonic-3.5 Cartesia 1836.00 2 gemini-3.1-flash-tts-preview Gemini 1705.00 3 eleven_v3_conversational ElevenLabs 1628.00 4 tts-rt-v2 Soniox 1621.00 5 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1467.00 6 gpt-4o-mini-tts OpenAI 1420.00 7 speech-2.8-hd MiniMax 1386.00 ### Hindi text-to-speech \# Model Provider Id Naturalness Elo 1 sonic-3.5 Cartesia 1736.00 2 gemini-3.1-flash-tts-preview Gemini 1563.00 3 speech-2.8-hd MiniMax 1522.00 4 eleven_v3_conversational ElevenLabs 1490.00 5 Maya 2 Native Maya 1478.00 6 chirp-3-hd Google Chirp 1468.00 7 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1412.00 8 simba-multilingual Speechify 1310.00 ### Tamil text-to-speech \# Model Provider Id Naturalness Elo 1 gemini-3.1-flash-tts-preview Gemini 1676.00 2 sonic-3.5 Cartesia 1620.00 3 Maya 2 Native Maya 1603.00 4 chirp-3-hd Google Chirp 1555.00 5 eleven_v3_conversational ElevenLabs 1543.00 6 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1462.00 7 simba-multilingual Speechify 1144.00 ### Telugu text-to-speech \# Model Provider Id Naturalness Elo 1 sonic-3.5 Cartesia 1639.00 2 gemini-3.1-flash-tts-preview Gemini 1625.00 3 chirp-3-hd Google Chirp 1548.00 4 Maya 2 Native Maya 1540.00 5 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1419.00 6 simba-multilingual Speechify 1269.00 ### Chinese (Mandarin) text-to-speech \# Model Provider Id Naturalness Elo 1 inworld-tts-2 Inworld 1688.00 2 eleven_v3_conversational ElevenLabs 1675.00 3 gemini-3.1-flash-tts-preview Gemini 1649.00 4 sonic-3.5 Cartesia 1564.00 5 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1552.00 6 speech-2.6-hd MiniMax 1467.00 7 gpt-4o-mini-tts OpenAI 1365.00 ### Korean text-to-speech \# Model Provider Id Naturalness Elo 1 gemini-3.1-flash-tts-preview Gemini 1917.00 2 sonic-3.5 Cartesia 1859.00 3 inworld-tts-2 Inworld 1722.00 4 eleven_v3_conversational ElevenLabs 1628.00 5 gpt-4o-mini-tts OpenAI 1498.00 6 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1438.00 7 speech-2.6-hd MiniMax 1407.00 8 coda Rime 1187.00 9 generative AWS Polly 953.00 ### Japanese text-to-speech \# Model Provider Id Naturalness Elo 1 gemini-3.1-flash-tts-preview Gemini 1756.00 2 eleven_v3 ElevenLabs 1646.00 3 sonic-3.5 Cartesia 1600.00 4 inworld-tts-2 Inworld 1597.00 5 DragonHDLatestNeural Azure 1539.00 6 tts-rt-v2 Soniox 1447.00 7 speech-2.6-hd MiniMax 1441.00 8 chirp-3-hd Google Chirp 3 HD 1407.00 9 gpt-4o-mini-tts OpenAI 1338.00 10 octave-2 Hume 1228.00 ### Thai text-to-speech \# Model Provider Id Naturalness Elo 1 gemini-3.1-flash-tts-preview Gemini 1722.00 2 tts xAI Grok 1719.00 3 speech-2.6-hd MiniMax 1699.00 4 sonic-3.5 Cartesia 1688.00 5 eleven_v3 ElevenLabs 1605.00 6 tts-rt-v2 Soniox 1591.00 7 paxa-tts-flash-v1 Paxa direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1467.00 8 chirp-3-hd Google Chirp 3 HD 1442.00 9 Azure AI Speech (native) Azure direct benchmark (Measured directly; no Router model id exists for this benchmark row.) 1280.00 10 inworld-tts-2 Inworld 1202.00 11 gpt-4o-mini-tts OpenAI 1084.00 ## Published stacks What benchmarks.speko.ai picks for each job off the boards above, and the measurement that decided it. A stack whose legs are identical to another’s is one row: the publisher distinguishes four jobs and its boards distinguish two stacks. A stack with a leg Router cannot currently call is not shown at all — a measurement may stay visible in that state, an instruction you would copy may not. Use case Speech-to-text LLM Text-to-speech Accuracy-critical decided on 2.0% WER · 0% fabrication · 0.93 robustness Natural conversation decided on 2.0% WER · 1.6% dead-air · MOS 1561 Universal-3.5 Pro assemblyai:universal-3-5-pro Claude Haiku 4.5 anthropic:claude-haiku-4-5 inworld-tts-2 inworld:inworld-tts-2 Tool-heavy agent decided on 2.0% WER · 2.7% tool silence · 50ms Universal-3.5 Pro assemblyai:universal-3-5-pro Claude Haiku 4.5 anthropic:claude-haiku-4-5 inworld-tts-2-flash inworld:inworld-tts-2-flash ## How to read this **Every model id is copyable.** Click an id to copy it. An id offered by the current Router catalog can be sent as`model`; other ids identify benchmark evidence without claiming that the route is currently available. A direct benchmark label means the provider published no Router model id for that row. **Not measured is not zero.** A dash in a column of word error rates reads as a perfect score, so an unmeasured cell says so in words. A leading `~` is the board’s own mark for an estimate. **Nothing here re-ranks a board.** The `#` column indexes the order you sorted into. It is not a verdict. The catalog endpoint did not answer this request, so the routable column comes from the bundled snapshot. The boards are unaffected. # Speko Router API quickstart Source: https://speko.ai/docs Markdown: https://speko.ai/docs/index.html.md Docs Call Speko Router's native model discovery, speech-to-text, LLM, and text-to-speech operations with typed responses. ## Set the credential ```bash export SPEKO_API_KEY=sk_live_... export SPEKO_ROUTER=https://router.speko.dev ``` ## Discover models ```bash curl --fail --silent "$SPEKO_ROUTER/v1/models" \ -H "Authorization: Bearer $SPEKO_API_KEY" ``` ## Transcribe audio ```bash curl --fail --silent "$SPEKO_ROUTER/v1/stt/transcriptions" \ -H "Authorization: Bearer $SPEKO_API_KEY" \ -H "Idempotency-Key: stt-$(uuidgen)" \ -F 'request={"routing":{"mode":"auto","objective":"latency"},"language":"en"};type=application/json' \ -F 'audio=@sample.wav;type=application/octet-stream' ``` Response ```json { "text": "What time do you close on Saturday?", "route": {"provider": "deepgram", "model": "nova-3", "region": "us-west-2", "attempt_id": "att_..."}, "usage": {"duration_ms": 1840} } ``` ## Generate an LLM response ```bash curl --fail --silent "$SPEKO_ROUTER/v1/llm/responses" \ -H "Authorization: Bearer $SPEKO_API_KEY" \ -H "Idempotency-Key: llm-$(uuidgen)" \ -H "Content-Type: application/json" \ --data '{ "routing": {"mode": "auto", "objective": "quality"}, "input": [{"type": "message", "role": "user", "content": [{"type": "text", "text": "What time do you close on Saturday?"}]}], "max_output_tokens": 128 }' ``` Response ```json { "id": "resp_req_...", "route": {"provider": "openai", "model": "gpt-5.2", "region": "us-west-2", "attempt_id": "att_..."}, "output": [{"type": "message", "role": "assistant", "content": [{"type": "text", "text": "We close at six on Saturday."}]}], "stop_reason": "stop", "usage": {"input_tokens": 18, "output_tokens": 11} } ``` ## Synthesize speech ```bash curl --fail --silent "$SPEKO_ROUTER/v1/tts/speech" \ -H "Authorization: Bearer $SPEKO_API_KEY" \ -H "Idempotency-Key: tts-$(uuidgen)" \ -H "Content-Type: application/json" \ --data '{ "routing": {"mode": "auto", "objective": "balanced"}, "input": "We close at six on Saturday.", "language": "en", "audio": {"encoding": "pcm_s16le", "sample_rate_hz": 24000, "channels": 1} }' \ --output reply.pcm ``` ## Routes | | | | --- | --- | | GET /openapi.json | Download the canonical OpenAPI 3.1 contract without authentication | | GET /v1/models | List currently routable models and capabilities | | POST /v1/stt/transcriptions | Transcribe one uploaded audio file | | GET /v1/stt/stream | Open a realtime transcription WebSocket | | POST /v1/tts/speech | Synthesize one utterance to a raw audio stream | | GET /v1/tts/stream | Open a streaming synthesis WebSocket | | POST /v1/llm/responses | Generate a typed JSON or SSE LLM response | ## Request headers | | | | --- | --- | | `Authorization` | Bearer Speko API key. Required on every /v1 operation. | | `Idempotency-Key` | Required on every POST and WebSocket upgrade. Reuse only for a byte-identical retry. | | `Content-Type` | application/json, multipart/form-data, or the media type declared by the operation. | ## Response headers | | | | --- | --- | | `Speko-Request-ID` | Router correlation id; also appears in error envelopes when available. | | `Speko-Attempt-ID` | The attempt that produced the response after any pre-output fallback. | | `Speko-Provider` | The concrete provider selected for this response. | | `Speko-Model` | The concrete provider model selected for this response. | | `Speko-Region` | The Speko Router region that served the request. | | `RateLimit-Policy` | Default edge policy: "relay-ip";q=2000;w=300. Lower concurrency controls may also apply. | | `Retry-After` | Minimum delay on an application-generated 429; continue with exponential backoff. | ## Errors | | | | | --- | --- | --- | | `400` | `invalid_request` | Correct the fields named by message and hint. | | `401` | `authentication_failed` | Replace or reactivate the bearer key. | | `404` | `route_not_found` | Read /openapi.json and use a declared route. | | `405` | `method_not_allowed` | Use the method in the Allow header. | | `409` | `idempotency_conflict` | Use a new Idempotency-Key when content changes. | | `429` | `rate_limited` | Honor Retry-After and use exponential backoff. | | `429` | `concurrency_exhausted` | Wait for active work to finish, then retry. | | `502` | `provider_error` | Retry or allow Router to select another provider. | | `503` | `provider_unavailable` | Retry after a delay or use auto routing. | | `504` | `request_timeout` | Retry; the selected provider stopped making progress. | ## Give the contract to an agent ```text Read https://speko.ai/openapi.json. Integrate the native Speko Router contract into this repository. Do not treat Router as an OpenAI-compatible hostname. Use Idempotency-Key on every POST and preserve the typed error envelope. ``` # Pricing Source: https://speko.ai/pricing Markdown: https://speko.ai/pricing/index.html.md $0.09 per minute all-in on Speko infrastructure across speech-to-text, LLM and text-to-speech, or 5% on top of a provider's published rate when routed. $10 in signup credit applies to every account. | | Router | Speko infra | Enterprise | | --- | --- | --- | --- | | | +5% on the provider's rate | $0.09 per minute | Custom locked for the term | | Speech-to-text, LLM, TTS | The provider's published rate | Included | Included | | Routing | Measured selection and pre-response failover | Measured selection and pre-response failover | Plus deployment reviews | | Access | Public preview | Public preview | By contract | | Support | Email | Email | Dedicated | | SLA | None during preview | None during preview | In the contract | | Commitment | None | None | Committed monthly minimum | | | [Get API key](https://platform.speko.ai/sign-in) | [Get API key](https://platform.speko.ai/sign-in) | [team@speko.ai](mailto:team@speko.ai) | ## Choose the pricing path Pick the service boundary first. Router adds managed routing to your provider spend, Speko infrastructure bundles the three voice-model legs into one per-minute rate, and Enterprise covers committed usage and custom operating requirements. Signup credit is applied before paid usage. - ### Signup credit $10 in signup credit applies to every account. - ### Router +5% on the provider's rate. Speech-to-text, LLM, TTS: The provider's published rate. Routing: Measured selection and pre-response failover. Access: Public preview. Support: Email. SLA: None during preview. Commitment: None. - ### Speko infra $0.09 per minute. Speech-to-text, LLM, TTS: Included. Routing: Measured selection and pre-response failover. Access: Public preview. Support: Email. SLA: None during preview. Commitment: None. - ### Enterprise Custom locked for the term. Speech-to-text, LLM, TTS: Included. Routing: Plus deployment reviews. Access: By contract. Support: Dedicated. SLA: In the contract. Commitment: Committed monthly minimum. ## What each feature row means These are the boundaries used in the plan matrix. They separate the model bill, routing behavior, availability, support, service level, and commercial commitment so an automated buyer can compare like with like. - ### Speech-to-text, LLM, TTS Router: The provider's published rate. Speko infrastructure: Included. Enterprise: Included. - ### Routing Router: Measured selection and pre-response failover. Speko infrastructure: Measured selection and pre-response failover. Enterprise: Plus deployment reviews. - ### Access Router: Public preview. Speko infrastructure: Public preview. Enterprise: By contract. - ### Support Router: Email. Speko infrastructure: Email. Enterprise: Dedicated. - ### SLA Router: None during preview. Speko infrastructure: None during preview. Enterprise: In the contract. - ### Commitment Router: None. Speko infrastructure: None. Enterprise: Committed monthly minimum. ## What the 5% is 5% of Provider list rates, from the boards Speko routes on. Routed, you pay the rate of whichever model Router selects, plus 5%. On Speko infrastructure you pay $0.09 a minute for all three legs instead, and none of these apply. ### Speech-to-text $ / minute of audio · 19 models priced Lowest $0.0008 Velma 2 Highest $0.0170 GPT Live Transcribe Velma 2: Published streaming rate for English Fast, $0.05/hr. Batch is $0.025/hr. The $0.06/hr this row used to carry is the MULTILINGUAL row, a different product from the one this id names. Not a measurement. GPT Live Transcribe: gpt-live-transcribe, the streaming path this row is recommended for. ### LLM $ / M output tokens · 14 models priced Lowest $0.26 DeepSeek-V4-Flash-0731 Highest $12.00 gpt-5.6-terra ### Text-to-speech $ / M characters · 35 models priced Lowest ~$4.0 Maya 2 Native Highest $100.0 speech-2.8-hd Rates as transcribed from [benchmarks.speko.ai](https://benchmarks.speko.ai). A tilde is the board’s own: the vendor publishes no exact rate. # About Speko Source: https://speko.ai/about Markdown: https://speko.ai/about/index.html.md Company Speko Group, Inc. builds the hosted Speko Router and the open customer-side Speko Gateway for real-time voice AI workloads. ## What we build Speko Router is the hosted, provider-neutral data plane at[router.speko.dev](https://router.speko.dev). It exposes typed operations for model discovery, speech transcription, speech synthesis, and LLM responses. Teams can let Router choose an eligible route by latency, quality, cost, or a balanced objective, or pin a provider and model. Each response reports the selected route in structured metadata. Speko Gateway is a different product boundary: an open customer-side runtime that runs beside LiveKit or Pipecat, keeps BYOK provider credentials in the customer process, and exposes one local streaming protocol across providers. Gateway can use provider-direct routes, Speko-managed routes, or both. Its public repository also owns the canonical wire contract consumed by the hosted Router. ## Who it is for Router is for applications that want Speko to operate the managed STT, LLM, and TTS data plane. Gateway is for teams that own the conversation loop and want provider-direct streaming or local credential custody. The separate hosted Agents API at [api.speko.dev](https://api.speko.dev) owns agents, sessions, phone calls, and telephony. These surfaces are complementary, but they are not interchangeable. ## Company and contact Speko is operated by Speko Group, Inc. from the United States and is a Y Combinator company. Product questions, support requests, security reports, billing questions, and partnership inquiries all reach the team at [team@speko.ai](mailto:team@speko.ai). The public[support page](https://speko.ai/support) explains what to include for a faster reply, and the[privacy policy](https://speko.ai/privacy-policy) explains how the website, platform, APIs, SDKs, and demos process information. # Changelog Source: https://speko.ai/changelog Markdown: https://speko.ai/changelog/index.html.md Product updates Dated API, model, SDK, console and documentation changes, with the migration action each one needs. 2 entries [RSS](https://speko.ai/changelog.xml) [JSON](https://speko.ai/changelog.json) Aug 24, 2026 Improved Available Router Gateway API ## Router publishes its canonical machine-readable contract The hosted Router now serves the Gateway-owned OpenAPI 3.1 document at /openapi.json and returns typed JSON for unknown routes and unsupported methods. - GET https://router.speko.dev/openapi.json is public and returns the exact normative relayapi OpenAPI mirror embedded from the public Gateway repository. - Unknown paths return route_not_found with HTTP 404. Known paths called with the wrong method return method_not_allowed with HTTP 405 and an Allow header. - Every public Router response advertises the default edge quota through RateLimit-Policy. Application-generated 429 responses also include Retry-After and the normalized error envelope. - The contract documents the stable /v1 compatibility policy, RFC 9745 deprecation signal, migration link, and minimum 90-day Sunset notice. **Action:** No request migration is required. Agents and code generators should discover the Router contract from https://speko.ai/openapi.json or https://router.speko.dev/openapi.json instead of guessing routes. [Router OpenAPI](https://router.speko.dev/openapi.json) [Versioning policy](https://speko.ai/developers/versioning) Aug 24, 2026 Added Available Gateway LiveKit Pipecat ## Gateway is the open customer-side voice runtime Speko Gateway provides one local streaming protocol across voice providers, native LiveKit and Pipecat integrations, and local BYOK credential custody. - Gateway runs in the customer workload and can call voice providers directly while keeping BYOK credentials inside the Gateway process. - The public image ships native LiveKit and Pipecat integrations for streaming STT and TTS, interruption handling, usage, and timing events. - Gateway can combine provider-direct voice legs with Speko-managed routes. The hosted Router remains a separate Speko-operated data plane at router.speko.dev. - The public relayapi package in the Gateway repository is the canonical HTTP, SSE, and WebSocket wire contract for hosted Router traffic. **Action:** Choose Gateway for provider-direct or local-BYOK workloads. Choose Router for the hosted managed data plane; the two surfaces are complementary, not interchangeable. [Gateway repository](https://github.com/SpekoAI/gateway) [LiveKit guide](https://speko.ai/docs/livekit) [Pipecat guide](https://speko.ai/docs/pipecat) # Speko developer resources Source: https://speko.ai/developers Markdown: https://speko.ai/developers/index.html.md Developers Speko Router, Gateway, Agents API, OpenAPI, framework guides, MCP, CLI, and machine-readable discovery resources in one place. ## Choose the right Speko surface **Router** is Speko's hosted STT, LLM, and TTS data plane at [router.speko.dev](https://router.speko.dev).**Gateway** is the open customer-side runtime in the[SpekoAI/gateway](https://github.com/SpekoAI/gateway)repository; it keeps BYOK credentials in your process and integrates natively with LiveKit and Pipecat. The separate hosted**Agents API** at[api.speko.dev](https://api.speko.dev) owns agents, sessions, phone numbers, and calls. They solve different jobs and do not share an OpenAI-compatible facade. - **Router quickstart.** The[native Router docs](https://speko.ai/docs) show model discovery, STT, LLM, and TTS calls with typed request and response bodies. - **OpenAPI.** The canonical Router HTTP contract is served without authentication at[https://router.speko.dev/openapi.json](https://router.speko.dev/openapi.json). - **Gateway integrations.** Use the public[LiveKit](https://speko.ai/docs/livekit) and[Pipecat](https://speko.ai/docs/pipecat) guides for the customer-side Gateway runtime and its native adapters. - **Changes.** The[Speko changelog](https://speko.ai/changelog) also publishes[JSON Feed](https://speko.ai/changelog.json) and[RSS](https://speko.ai/changelog.xml) representations. - **Versioning.** The[API versioning and deprecation policy](https://speko.ai/developers/versioning) defines compatible v1 changes, RFC 9745 deprecation signals, a minimum 90-day Sunset window, typed errors, and rate-limit fields. ## Call Router directly Every Router request sends`Authorization: Bearer $SPEKO_API_KEY`. Every POST also sends an `Idempotency-Key`. Use[GET /v1/models](https://router.speko.dev/v1/models) to discover currently routable models and their capabilities. Use`routing: { mode: "auto", objective: "balanced" }`for managed selection, or provide an explicit provider and model. Router is a native contract, not a hostname replacement for an OpenAI SDK. ## Connect an agent The public Speko Docs MCP server is a read-only Streamable HTTP endpoint at[https://speko.ai/.well-known/mcp](https://speko.ai/.well-known/mcp). It requires no authentication: initialize the connection, list resources, read `spekoai://docs/index`, and then open the matching documentation resource rather than guessing a page or tool name. Account data and write tools remain on the protected operational MCP endpoint at[https://mcp.speko.ai/mcp](https://mcp.speko.ai/mcp). Clients use OAuth or a Speko bearer key and should follow the authorization metadata URL in its 401 challenge. - **Agent index.** [llms.txt](https://speko.ai/llms.txt) explains when to use Speko and lists the exact Markdown representation for every canonical page. - **Whole corpus.**[llms-full.txt](https://speko.ai/llms-full.txt) contains the complete public site text in one file for retrieval and offline context. - **Agent skill.** The[Speko get-started skill](https://speko.ai/.well-known/agent-skills/get-started/SKILL.md) is for governed voice-front-desk tasks with explicit approval gates before purchases or calls to a human. ## Use the official CLI Speko publishes first-party command-line packages on npm. Use`npx @spekoai/mcp-calls init` for the disclosed agent-call setup flow, or `npx @spekoai/mcp` as a local stdio bridge when an MCP client cannot connect to Streamable HTTP directly. The[Speko CLI guide](https://speko.ai/developers/cli) links both registry packages and explains which interface fits each job. # Speko CLI Source: https://speko.ai/developers/cli Markdown: https://speko.ai/developers/cli/index.html.md Developers Official Speko command-line tools on npm for disclosed agent phone calls and local access to the hosted Speko MCP server. ## Install the CLI [@spekoai/cli](https://www.npmjs.com/package/@spekoai/cli) is the Speko CLI: sign in, create agents, place calls, read transcripts, and run an agent’s eval suite. It publishes the `speko-cli` executable. Reference is at [docs.speko.ai/cli](https://docs.speko.ai/cli). `npm install -g @spekoai/cli` `speko-cli login` ## Placing disclosed phone calls [@spekoai/mcp-calls](https://www.npmjs.com/package/@spekoai/mcp-calls) is a separate package, for an AI agent that must place a real, disclosed phone call to a business or call its verified owner for input. It publishes the `speko` executable on npm. Start the guided setup without a global install: `npx @spekoai/mcp-calls init` Use this package only when a task genuinely needs a phone call and the caller can disclose that it is an AI agent. The setup flow owns credentials and consent configuration; do not put secrets in command arguments or source control. ## Bridge a local MCP client [@spekoai/mcp](https://www.npmjs.com/package/@spekoai/mcp) is the official local stdio bridge for MCP clients that cannot connect directly to Speko's hosted Streamable HTTP endpoint. It publishes the `spekoai-mcp` executable: `npx @spekoai/mcp` - **Public documentation.** Agents can list and read docs without authentication at[https://speko.ai/.well-known/mcp](https://speko.ai/.well-known/mcp). - **Account operations.** OAuth and API-key clients use the protected endpoint at[https://mcp.speko.ai/mcp](https://mcp.speko.ai/mcp). For direct application integrations, use the[REST API and OpenAPI resources](https://speko.ai/developers)instead of wrapping API calls in shell commands. # Speko API versioning and deprecation policy Source: https://speko.ai/developers/versioning Markdown: https://speko.ai/developers/versioning/index.html.md Developers Speko REST API versioning, backward-compatibility, deprecation, sunset, migration, and rate-limit conventions for durable agent integrations. ## Stable major versions Speko's stable REST operations use a major version in the URL, beginning with `/v1`. Backward-compatible fields, enum values, and endpoints may be added within v1. A change that removes a field, changes its meaning, or makes a previously valid request invalid requires a new major path. The[OpenAPI 3.1 contract](https://router.speko.dev/openapi.json) is the language-neutral source for current request and response shapes. ## Deprecation and sunset signals No v1 operation is currently deprecated. Before Speko removes a stable operation, the response will carry the RFC 9745`Deprecation` header and a `Link` with the`deprecation` relation to its migration instructions. A dated `Sunset` header will be announced at least 90 days before shutdown. The same change appears in the[dated public changelog](https://speko.ai/changelog), JSON Feed, and RSS feed with an effective date, sunset date, and concrete migration action. - **Compatible change.** Continue using v1; tolerate unknown response fields and enum values where the contract allows them. - **Deprecated operation.** Follow the linked migration and move before the advertised Sunset date. - **Model identifiers.** A renamed model keeps an input alias; catalog and response headers publish the canonical identifier. ## Errors and request quotas Router errors use a JSON `error` object with stable`code`, `message`, `hint`, and`retryable` fields. Every public Router response advertises the default edge quota as`RateLimit-Policy: "relay-ip";q=2000;w=300`: 2,000 requests per five-minute window for each public source IP. Organization and provider concurrency controls can impose a lower effective limit. An application-generated 429 also includes`Retry-After`; agents must wait at least that long and then continue with exponential backoff rather than retrying in a tight loop. # Speko Gateway for LiveKit Source: https://speko.ai/docs/livekit Markdown: https://speko.ai/docs/livekit/index.html.md Docs Run the open Speko Gateway beside a LiveKit AgentSession for provider-direct voice legs and optional managed Router LLMs. ## Use the native Gateway integration Speko Gateway is a customer-side runtime that runs in the same image or beside the LiveKit agent. It is not an OpenAI-compatible base URL. The public Gateway image includes the binary and Python integration; follow the complete container diff in the[Gateway README](https://github.com/SpekoAI/gateway#add-gateway-to-a-livekit-agent). ```python from livekit.agents import AgentSession from livekit.plugins import openai from speko_gateway.livekit import LLM, STT, TTS session = AgentSession( stt=STT( language="en", credential_source="auto", # managed or local BYOK ), llm=LLM( model="auto", objective="balanced", max_output_tokens=8192, ), tts=TTS( language="en", credential_source="auto", ), ) ``` ## Managed credentials ```text lk agent update-secrets \ --secrets "SPEKO_LOCAL_AUTH_TOKEN=$(openssl rand -hex 32)" \ --secrets "SPEKO_API_KEY=$SPEKO_API_KEY" ``` ## Local BYOK credentials ```text lk agent update-secrets \ --secrets "SPEKO_LOCAL_AUTH_TOKEN=$(openssl rand -hex 32)" \ --secrets "SPEKO_DEEPGRAM_BYOK_API_KEY=$DEEPGRAM_API_KEY" ``` ## Choose the trust boundary | | | | --- | --- | | `Managed` | Gateway requests Speko-managed routes; Router handles the hosted LLM data plane. | | `BYOK` | Provider credentials stay inside the Gateway process and provider-direct voice traffic does not traverse Router. | | `Mixed` | Use BYOK for selected voice legs and a Speko API key for managed or Router-backed work. | # Speko Gateway for Pipecat Source: https://speko.ai/docs/pipecat Markdown: https://speko.ai/docs/pipecat/index.html.md Docs Add Speko Gateway's native STT and TTS services to a Pipecat cascade while keeping the rest of the pipeline unchanged. ## Replace only the voice services Gateway implements native Pipecat STT and TTS services. Turn aggregation, tools, transports, observers, and the LLM remain normal Pipecat components. See the complete sidecar and Pipecat Cloud setup in the[public Gateway guide](https://github.com/SpekoAI/gateway/blob/main/docs/PIPECAT.md). ```python from pipecat.services.openai.llm import OpenAILLMService from speko_gateway.pipecat import SpekoSTTService, SpekoTTSService stt = SpekoSTTService(language="en") llm = OpenAILLMService(model="gpt-4.1-mini") # any Pipecat LLM service tts = SpekoTTSService(language="en") pipeline = Pipeline([ transport.input(), stt, user_aggregator, llm, tts, transport.output(), assistant_aggregator, ]) ``` ## Configure managed or BYOK credentials ```text SPEKO_LOCAL_AUTH_TOKEN=replace-with-a-random-local-token SPEKO_API_KEY=sk_live_... # Or keep a provider credential local to Gateway: SPEKO_DEEPGRAM_BYOK_API_KEY=... ``` ## Pipeline behavior | | | | --- | --- | | `STT` | Native streaming SpekoSTTService with utterance commits, final transcripts, usage, and cancellation. | | `LLM` | Keep any Pipecat LLM service, or use Router through a Gateway integration when managed LLM routing is desired. | | `TTS` | Native streaming SpekoTTSService with sentence synthesis, first-audio timing, and barge-in cancellation. | # Privacy Policy Source: https://speko.ai/privacy-policy Markdown: https://speko.ai/privacy-policy/index.html.md Legal How Speko collects, uses, shares, and protects information when you use the Speko website, platform, APIs, SDKs, demos, and integrations. Effective May 23, 2026 Speko Group, Inc. ("Speko", "we", "us", or "our") provides a voice AI gateway and platform for routing speech-to-text, language model, text-to-speech, and real-time voice agent workloads across providers. This Privacy Policy explains how we handle information for our public website, dashboard, APIs, SDKs, demos, documentation, support channels, and connected integrations. ## 1. Information We Collect We collect information in the following categories: - **Account and identity information.** Name, email address, organization, authentication identifiers, role, workspace membership, and security settings. - **Platform configuration.** Agents, prompts, routing preferences, provider selections, tool definitions, knowledge base metadata, API key metadata, and encrypted provider credentials you choose to store with Speko. - **Voice session and API content.** Audio, transcripts, generated responses, tool inputs and outputs, session recordings, phone numbers, request metadata, latency, routing decisions, logs, and usage data generated when you or your users use Speko. - **Integration data.** Information from third-party services you connect, such as account identifiers, access tokens, calendars, events, availability, messages, files, or other data exposed by the scopes you approve. - **Website, device, and support data.** IP address, browser and device metadata, pages visited, referral source, diagnostics, cookies or similar technologies, support messages, and feedback. - **Billing data.** Billing contact details, subscription status, usage credits, invoices, and payment processing records handled by our payment providers. ## 2. How We Use Information We use information to: - create and secure accounts, organizations, workspaces, API keys, and sessions; - provide the Speko platform, APIs, SDKs, demos, integrations, and support; - route voice and AI requests to selected providers, perform failover, return transcripts, play generated audio, execute configured tools, and show operational logs; - measure usage, manage billing, enforce limits, detect abuse, and prevent fraud; - debug, maintain, secure, and improve Speko services; - communicate about service updates, security events, support requests, and billing; and - comply with legal obligations and enforce our terms. We do not sell personal information. We do not use customer voice session content or Google user data for advertising. ## 3. Voice, Audio, and Transcript Data Speko processes voice data so the service can create live voice sessions, transcribe speech, route model requests, synthesize responses, provide observability, and allow customers to inspect or debug their own sessions. Depending on your configuration, Speko may send audio, transcripts, prompts, and related request data to third-party speech, language model, and voice providers selected by the routing system or by your organization. Session recordings are generally retained for 30 days after a session ends, then deleted by lifecycle policy, unless a different product configuration or legal requirement applies. Customers should avoid sending sensitive information unless their workspace and providers are configured for that use case. ## 4. Google User Data Speko's use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements. If you connect a Google account or install a Google integration, Speko requests only the scopes needed for the feature you choose to use. For example, a calendar integration may use Google account identifiers, calendar lists, event details, availability, and event write access so your configured agents can check schedules, create bookings, update meetings, or perform related actions you authorize. We use Google user data only to provide and maintain the connected Speko feature, including: - authenticating the connected Google account; - displaying and managing integration status inside Speko; - executing user-configured agent actions, such as reading availability or creating events; - debugging, securing, and auditing the integration; and - complying with law, security obligations, and user instructions. We do not sell Google user data, use it for advertising, or use it to train generalized AI or machine learning models. We do not allow humans to read Google user data except when necessary for security, legal compliance, support you request, or internal operations with appropriate access controls. ## 5. Sharing and Subprocessors We share information only as needed to operate Speko or as you direct, including with: - cloud hosting, database, storage, analytics, security, observability, and support vendors; - speech, language model, voice, telephony, and media transport providers used to fulfill requests; - payment processors and billing vendors; - third-party integrations you connect or instruct Speko to use; - professional advisors, auditors, and legal authorities when required; and - successors in a merger, acquisition, financing, or sale of assets. Customers are responsible for reviewing the third-party providers they configure, including any provider-specific privacy, security, retention, and compliance terms. ## 6. Cookies and Analytics We may use cookies, local storage, and similar technologies to keep you signed in, remember preferences, protect against abuse, understand website traffic, and improve the product. Browser settings may let you block or delete some cookies, but the platform may not work correctly without required authentication or security cookies. ## 7. Data Retention We retain information for as long as needed to provide Speko, comply with legal obligations, resolve disputes, maintain security, and enforce agreements. Account, billing, audit, and security records may be retained longer than product content where necessary. You may request deletion of your account or certain data by contacting us. ## 8. Security We use administrative, technical, and organizational safeguards designed to protect information, including access controls, encryption for sensitive credentials, logging, and monitoring. No system is perfectly secure, so customers should protect their API keys, configure least-privilege integrations, and notify us promptly of suspected misuse. ## 9. Your Choices and Rights Depending on your location, you may have rights to access, correct, delete, export, or object to certain processing of your personal information. Workspace administrators can manage many settings directly in the dashboard. You can disconnect integrations, revoke API keys, and request account or data deletion by contacting us. ## 10. International Transfers Speko is operated from the United States and may process information in the United States and other countries where we or our subprocessors operate. Those countries may have data protection laws different from the laws where you live. ## 11. Children Speko is not directed to children under 13, and we do not knowingly collect personal information from children under 13. ## 12. Changes We may update this Privacy Policy from time to time. If we make material changes, we will update the effective date and provide additional notice when required. ## 13. Contact Questions or requests about this Privacy Policy can be sent to [team@speko.ai](mailto:team@speko.ai). # Speko vs Bland AI Source: https://speko.ai/speko-vs-bland Markdown: https://speko.ai/speko-vs-bland/index.html.md Comparison Speko offers a hosted Router and an open customer-side Gateway for STT, LLM and TTS workloads; Bland AI is a hosted phone automation platform that executes calls and campaigns, so the useful comparison is which boundary your team wants to own. Short answer Choose Bland when managed phone automation is the product requirement. Choose Speko when your runtime owns the conversation loop and model selection is the boundary to make interchangeable. Author Speko engineering Reviewed by Speko engineering Published August 7, 2026 Last reviewed August 7, 2026 ## How do Speko and Bland AI compare? Bland AI category, scope and billing statements were checked against the official sources below on July 31, 2026. The table compares product boundaries, not overall quality. A dash means this site publishes no sourced statement for that cell. | Dimension | Speko Router + Gateway | Bland AI | | --- | --- | --- | | Category | Voice model router. | Hosted phone automation platform. | | Scope | Compatible model calls for STT, LLM and TTS. It does not run the conversation loop. | Managed phone-call automation, including campaign and call execution inside the Bland product. | | Telephony | Not included in the Router or Gateway boundary. Telephony and WebRTC remain with the application runtime. | Bland supports its own telephony and BYOT. Carrier, transfer and some outbound charges can be separate from connected-minute usage. | | Model routing | The application can pin a model or request measured automatic selection from eligible routes. | STT, LLM and TTS are integrated into the connected-minute product rather than exposed as a neutral router. | | Runtime ownership | Speko operates the routing API; the customer keeps LiveKit, Pipecat or a custom runtime. | Bland operates the phone automation stack; the customer configures workflows and integrations. | | Observability and failover | Route, reason, failover-count and first-byte headers. Failover is pre-response only, not mid-stream. | Call execution and logs are platform-managed inside the phone automation boundary. | | Benchmark transparency | Public voice benchmark boards at benchmarks.speko.ai; automatic selection ranks over the published snapshot. | - | | Pricing model | USD 0.09 per minute all-in on Speko infrastructure; current terms are kept on the pricing page. | Tiered monthly plans plus connected-minute usage. Carrier, BYOT, transfer and some outbound charges can add telephony cost. | Bland AI sources: [Bland AI pricing](https://www.bland.ai/pricing) [Bland AI billing](https://docs.bland.ai/platform/billing) [Bland AI documentation](https://docs.bland.ai/) Checked 2026-07-31 ## When to choose Bland AI - The managed phone automation workflow is the product requirement. - Managed campaign and call execution should live inside one product boundary. - Integrated model components should reduce the number of services the application wires directly. ## When to choose Speko - Automatic routing considers only models in the published benchmark snapshot. If the request constraints leave no eligible candidate, the router returns no_candidate rather than selecting outside that snapshot. - The route is decided when your session opens, not while you speak. - A preview endpoint returns the provider Speko would pick for a language and objective, with its runners-up, before you send a request. ## Method and provenance Every Bland AI cell is copied from the sourced comparison this site maintains on the [voice agent platforms page](https://speko.ai/voice-agent-platforms), where each statement carries its official source and check date. Speko cells are verified against the public contracts and claim ledger this site builds from; the benchmark snapshot behind routing is published at [benchmarks.speko.ai/data.json](https://benchmarks.speko.ai/data.json). Choose the layer first. Compare products inside that boundary second. Related pages - [Voice agent platforms, runtimes and model routers](https://speko.ai/voice-agent-platforms) - [Speko vs Vapi](https://speko.ai/speko-vs-vapi) - [Speko vs Retell AI](https://speko.ai/speko-vs-retell) - [Vapi alternatives](https://speko.ai/vapi-alternatives) - [Current model catalog](https://speko.ai/models) - [Speko pricing](https://speko.ai/pricing) # Speko vs Retell AI Source: https://speko.ai/speko-vs-retell Markdown: https://speko.ai/speko-vs-retell/index.html.md Comparison Speko offers a hosted Router and an open customer-side Gateway for STT, LLM and TTS workloads; Retell AI is a hosted phone-agent platform that runs the agent for you, so the useful comparison is which boundary your team wants to own. Short answer Choose Retell when the requirement is a managed phone-agent product. Choose Speko when your runtime owns the conversation loop and model selection is the boundary to make interchangeable. Author Speko engineering Reviewed by Speko engineering Published August 7, 2026 Last reviewed August 7, 2026 ## How do Speko and Retell AI compare? Retell AI category, scope and billing statements were checked against the official sources below on July 31, 2026. The table compares product boundaries, not overall quality. A dash means this site publishes no sourced statement for that cell. | Dimension | Speko Router + Gateway | Retell AI | | --- | --- | --- | | Category | Voice model router. | Hosted phone-agent platform. | | Scope | Compatible model calls for STT, LLM and TTS. It does not run the conversation loop. | Managed phone agents assembled from Retell-supported infrastructure and model components. | | Telephony | Not included in the Router or Gateway boundary. Telephony and WebRTC remain with the application runtime. | Published options include Retell carrier service and custom SIP, priced as separate components. | | Model routing | The application can pin a model or request measured automatic selection from eligible routes. | The agent uses model and infrastructure choices supported by the Retell configuration surface. | | Runtime ownership | Speko operates the routing API; the customer keeps LiveKit, Pipecat or a custom runtime. | Retell operates the phone-agent platform and runtime; the customer configures the agent. | | Observability and failover | Route, reason, failover-count and first-byte headers. Failover is pre-response only, not mid-stream. | Call operations and logs are platform-managed within the supported component boundary. | | Benchmark transparency | Public voice benchmark boards at benchmarks.speko.ai; automatic selection ranks over the published snapshot. | - | | Pricing model | USD 0.09 per minute all-in on Speko infrastructure; current terms are kept on the pricing page. | Component pricing: voice infrastructure plus selected TTS, LLM, telephony and optional features. | Retell AI sources: [Retell AI pricing](https://www.retellai.com/pricing) [Retell AI documentation](https://docs.retellai.com/) Checked 2026-07-31 ## When to choose Retell AI - The requirement is a managed phone-agent product rather than a standalone model-routing API. - Telephony and agent operations should live in one hosted workflow. - A component-based configuration and pricing surface fits how the team buys. ## When to choose Speko - Automatic routing considers only models in the published benchmark snapshot. If the request constraints leave no eligible candidate, the router returns no_candidate rather than selecting outside that snapshot. - The route is decided when your session opens, not while you speak. - A preview endpoint returns the provider Speko would pick for a language and objective, with its runners-up, before you send a request. ## Method and provenance Every Retell AI cell is copied from the sourced comparison this site maintains on the [voice agent platforms page](https://speko.ai/voice-agent-platforms), where each statement carries its official source and check date. Speko cells are verified against the public contracts and claim ledger this site builds from; the benchmark snapshot behind routing is published at [benchmarks.speko.ai/data.json](https://benchmarks.speko.ai/data.json). Choose the layer first. Compare products inside that boundary second. Related pages - [Voice agent platforms, runtimes and model routers](https://speko.ai/voice-agent-platforms) - [Speko vs Vapi](https://speko.ai/speko-vs-vapi) - [Speko vs Bland AI](https://speko.ai/speko-vs-bland) - [Vapi alternatives](https://speko.ai/vapi-alternatives) - [Current model catalog](https://speko.ai/models) - [Speko pricing](https://speko.ai/pricing) # Speko vs Vapi Source: https://speko.ai/speko-vs-vapi Markdown: https://speko.ai/speko-vs-vapi/index.html.md Comparison Speko offers a hosted Router and an open customer-side Gateway for STT, LLM and TTS workloads; Vapi is a hosted developer platform that runs the whole voice agent, so the useful comparison is which boundary your team wants to own. Short answer Choose Vapi when a managed platform should own agent orchestration. Choose Speko when your runtime owns the conversation loop and model selection is the boundary to make interchangeable. Author Speko engineering Reviewed by Speko engineering Published August 7, 2026 Last reviewed August 7, 2026 ## How do Speko and Vapi compare? Vapi category, scope and billing statements were checked against the official sources below on July 31, 2026. The table compares product boundaries, not overall quality. A dash means this site publishes no sourced statement for that cell. | Dimension | Speko Router + Gateway | Vapi | | --- | --- | --- | | Category | Voice model router. | Hosted developer platform for voice agents. | | Scope | Compatible model calls for STT, LLM and TTS. It does not run the conversation loop. | Managed agent orchestration with prompts, tools and a provider stack configured in the platform. | | Telephony | Not included in the Router or Gateway boundary. Telephony and WebRTC remain with the application runtime. | Telephony is connected and billed separately from Vapi hosting and orchestration. | | Model routing | The application can pin a model or request measured automatic selection from eligible routes. | Developers configure supported STT, LLM and TTS choices. Model usage can be pass-through or BYOK. | | Runtime ownership | Speko operates the routing API; the customer keeps LiveKit, Pipecat or a custom runtime. | Vapi operates the hosted platform; the customer configures the agent and connected services. | | Observability and failover | Route, reason, failover-count and first-byte headers. Failover is pre-response only, not mid-stream. | The platform owns call logs and orchestration. Fallback behavior stays within the configured provider paths. | | Benchmark transparency | Public voice benchmark boards at benchmarks.speko.ai; automatic selection ranks over the published snapshot. | - | | Pricing model | USD 0.09 per minute all-in on Speko infrastructure; current terms are kept on the pricing page. | Usage-based hosting and orchestration, plus model and telephony charges; BYOK providers can bill directly. | Vapi sources: [Vapi pricing](https://vapi.ai/pricing) [Vapi pricing FAQ](https://docs.vapi.ai/faq) [Vapi documentation](https://docs.vapi.ai/) Checked 2026-07-31 ## When to choose Vapi - A managed developer platform should own agent orchestration and provider configuration. - You want a developer-facing managed agent surface with a configurable provider stack. - The platform should own more of deployment and call orchestration than a model router does. ## When to choose Speko - Automatic routing considers only models in the published benchmark snapshot. If the request constraints leave no eligible candidate, the router returns no_candidate rather than selecting outside that snapshot. - The route is decided when your session opens, not while you speak. - A preview endpoint returns the provider Speko would pick for a language and objective, with its runners-up, before you send a request. ## Method and provenance Every Vapi cell is copied from the sourced comparison this site maintains on the [voice agent platforms page](https://speko.ai/voice-agent-platforms), where each statement carries its official source and check date. Speko cells are verified against the public contracts and claim ledger this site builds from; the benchmark snapshot behind routing is published at [benchmarks.speko.ai/data.json](https://benchmarks.speko.ai/data.json). Choose the layer first. Compare products inside that boundary second. Related pages - [Voice agent platforms, runtimes and model routers](https://speko.ai/voice-agent-platforms) - [Speko vs Retell AI](https://speko.ai/speko-vs-retell) - [Speko vs Bland AI](https://speko.ai/speko-vs-bland) - [Vapi alternatives](https://speko.ai/vapi-alternatives) - [Current model catalog](https://speko.ai/models) - [Speko pricing](https://speko.ai/pricing) # Support Source: https://speko.ai/support Markdown: https://speko.ai/support/index.html.md Help How to reach the Speko team, what to include so we can help on the first reply, and where to check whether something is already known to be down. ## Email us [team@speko.ai](mailto:team@speko.ai) reaches the whole team, including the engineers who built the thing you are writing about. It is the right address for everything: a bug, a question about the API, help picking a voice stack, billing, security, or a partnership. We answer during business hours, Monday to Friday. If something is actively broken in production, say so in the subject line and it gets picked up ahead of the queue. ## What to include None of this is required, but each one usually saves a round trip: - **A session or call id.** Almost every question about a call is answerable in one step from its id. - **The time it happened, with a timezone.** "This morning" is a wide window in our logs. - **What you expected, and what happened instead.** The gap between those two is the actual report. - **The exact error.** Pasted verbatim, including the status code, rather than described. ## Before you write Two places worth a look first, because they answer faster than we can. [status.speko.ai](https://status.speko.ai) shows whether a provider or a Speko service is degraded right now, and [docs.speko.dev](https://docs.speko.dev) carries the API reference, the quickstarts, and the migration guides. ## Security If you have found a vulnerability, write to [team@speko.ai](mailto:team@speko.ai) with "security" in the subject and please give us a chance to fix it before disclosing it publicly. We will confirm receipt and keep you updated through the fix. # Terms of Service Source: https://speko.ai/terms-of-service Markdown: https://speko.ai/terms-of-service/index.html.md Legal The terms that govern access to and use of Speko's voice routing platform, APIs, SDKs, and demos: accounts, acceptable use, billing, and liability. Effective May 23, 2026 These Terms of Service ("Terms") govern access to and use of the websites, dashboard, APIs, SDKs, demos, documentation, integrations, and other services provided by Speko Group, Inc. ("Speko", "we", "us", or "our"). By using Speko, you agree to these Terms. ## 1. Speko Services Speko provides a voice AI gateway and platform that helps teams build, operate, and observe voice agents and voice workflows. The service may route speech-to-text, language model, text-to-speech, telephony, media transport, and tool requests across Speko-managed or customer-configured providers. ## 2. Accounts and Organizations You must provide accurate account information and keep your credentials secure. If you use Speko for an organization, you represent that you have authority to bind that organization. Organization administrators may manage members, settings, integrations, billing, API keys, and data associated with the organization. ## 3. Customer Data "Customer Data" means content, prompts, audio, recordings, transcripts, files, tool inputs and outputs, integration data, configuration, and other data submitted to or generated through Speko by you or your users. As between you and Speko, you retain ownership of Customer Data. You grant Speko the rights needed to host, process, transmit, display, store, and otherwise use Customer Data to provide, secure, support, and improve the services. You are responsible for Customer Data, including obtaining all rights, permissions, notices, and consents required for Speko and its providers to process it. You should not submit regulated or highly sensitive data unless your Speko workspace and selected providers are configured for that use case. ## 4. Voice Sessions and Recordings Speko may process microphone audio, call audio, transcripts, generated speech, and session recordings to deliver real-time voice features, demos, observability, debugging, and failover. You are responsible for complying with recording consent, call monitoring, biometrics, privacy, and communications laws that apply to your use of Speko. ## 5. Third-Party Providers and Integrations Speko may rely on third-party providers for speech recognition, language models, text to speech, telephony, media transport, authentication, analytics, billing, infrastructure, and connected integrations. Third-party services are governed by their own terms and policies. Speko is not responsible for third-party services outside our control. If you connect a third-party account, such as Google Calendar, you authorize Speko to access and use the connected data and tokens only as needed to provide the integration and actions you configure. You may disconnect integrations through the platform or the third-party service. ## 6. API Keys and Security You are responsible for safeguarding API keys, provider keys, passwords, session tokens, and other credentials. You must promptly revoke compromised credentials and notify Speko of suspected unauthorized access. You may not share credentials in a way that bypasses account, billing, rate limit, or security controls. ## 7. Acceptable Use You may not use Speko to: - violate laws, contracts, privacy rights, intellectual property rights, or platform rules; - send spam, phishing, malware, abusive traffic, or unauthorized communications; - impersonate people or organizations without permission; - collect or process sensitive data without required rights, notices, and consents; - attempt to reverse engineer, overload, scan, scrape, or disrupt Speko systems; - circumvent usage limits, security controls, billing controls, or access restrictions; or - use Speko for high-risk activities where failure could cause death, injury, or severe harm. ## 8. Fees and Billing Paid features, usage credits, subscriptions, overages, and provider pass-through costs are billed according to the plan, order form, dashboard, or written agreement that applies to your account. Fees are non-refundable except where required by law or expressly stated in a written agreement. You authorize Speko and its payment processors to charge applicable fees and taxes. ## 9. Benchmarks, Demos, and Beta Features Benchmarks, demos, previews, and beta features are provided for evaluation and may change, fail, or be discontinued. Benchmark results depend on datasets, provider availability, model versions, measurement methods, and network conditions. You should validate results for your own workloads before relying on them in production. ## 10. Intellectual Property Speko and its licensors retain all rights in the Speko services, software, designs, logos, documentation, benchmarks, and related technology. Subject to these Terms, Speko grants you a limited, non-exclusive, non-transferable right to use the services for your internal business purposes. You may not remove proprietary notices or use Speko marks without our permission. ## 11. Confidentiality Each party may receive non-public information from the other party. The receiving party will use reasonable care to protect confidential information and will use it only to perform under these Terms, unless disclosure is required by law or authorized by the disclosing party. ## 12. Service Changes and Suspension We may modify, suspend, or discontinue features, providers, models, integrations, limits, or availability from time to time. We may suspend or restrict access if we believe use of Speko violates these Terms, creates security or legal risk, threatens service reliability, or could harm Speko, customers, providers, or third parties. ## 13. Disclaimers Speko is provided "as is" and "as available" to the fullest extent permitted by law. We disclaim warranties of merchantability, fitness for a particular purpose, non-infringement, uninterrupted operation, and error-free results. AI, speech, and routing outputs may be inaccurate, incomplete, delayed, or unavailable. ## 14. Limitation of Liability To the fullest extent permitted by law, Speko will not be liable for indirect, incidental, special, consequential, exemplary, or punitive damages, or for lost profits, revenue, goodwill, data, or business interruption. Speko's total liability for any claim arising out of or relating to the services or these Terms will not exceed the amounts paid by you to Speko for the services in the 12 months before the event giving rise to the claim. ## 15. Indemnity You will defend, indemnify, and hold harmless Speko from claims, damages, liabilities, and expenses arising from your Customer Data, your use of Speko, your connected providers or integrations, your violation of these Terms, or your violation of law or third-party rights. ## 16. Termination You may stop using Speko at any time. We may terminate or suspend access as described in these Terms. After termination, you remain responsible for amounts owed and for obligations that by their nature should survive, including confidentiality, payment, acceptable use, disclaimers, limitations of liability, and indemnity. ## 17. Governing Law These Terms are governed by the laws of the State of Delaware, without regard to conflict of law rules, unless a separate written agreement states otherwise. ## 18. Changes We may update these Terms from time to time. If we make material changes, we will update the effective date and provide additional notice when required. Continued use of Speko after an update means you accept the updated Terms. ## 19. Contact Questions about these Terms can be sent to [team@speko.ai](mailto:team@speko.ai). # Vapi Alternatives Source: https://speko.ai/vapi-alternatives Markdown: https://speko.ai/vapi-alternatives/index.html.md Comparison Vapi is a hosted developer platform for voice agents; teams usually compare alternatives when the bill spans platform, model and telephony components, or when moving to or from a hosted agent abstraction becomes the migration to plan for - and the closest options sit at different layers, so category comes before feature lists. Short answer There is no drop-in swap. Retell AI and Bland AI are hosted products, Pipecat and LiveKit Agents are runtime frameworks, Speko Router is a hosted data plane, and Speko Gateway is a customer-side runtime. Author Speko engineering Reviewed by Speko engineering Published August 7, 2026 Last reviewed August 7, 2026 ## The candidates, by product boundary Competitor category and billing statements were checked against official sources on July 31, 2026. The table compares product boundaries, not overall quality; a dash means this site publishes no sourced statement for that cell. | Option | Category | Telephony | Pricing model | Sources | | --- | --- | --- | --- | --- | | Vapi the baseline | Hosted developer platform for voice agents. | Telephony is connected and billed separately from Vapi hosting and orchestration. | Usage-based hosting and orchestration, plus model and telephony charges; BYOK providers can bill directly. | [Vapi pricing](https://vapi.ai/pricing) [Vapi pricing FAQ](https://docs.vapi.ai/faq) [Vapi documentation](https://docs.vapi.ai/) Checked 2026-07-31 | | Speko Router + Gateway our product | Hosted Router plus an open customer-side Gateway for STT, LLM and TTS. | Not included in the Router or Gateway boundary. Telephony and WebRTC remain with the application runtime. | USD 0.09 per minute all-in on Speko infrastructure; current terms are kept on the pricing page. | [Speko infrastructure guide](https://speko.ai/voice-agent-infrastructure) [Speko pricing](https://speko.ai/pricing) Checked 2026-08-07 | | Retell AI | Hosted phone-agent platform. | Published options include Retell carrier service and custom SIP, priced as separate components. | Component pricing: voice infrastructure plus selected TTS, LLM, telephony and optional features. | [Retell AI pricing](https://www.retellai.com/pricing) [Retell AI documentation](https://docs.retellai.com/) Checked 2026-07-31 | | Bland AI | Hosted phone automation platform. | Bland supports its own telephony and BYOT. Carrier, transfer and some outbound charges can be separate from connected-minute usage. | Tiered monthly plans plus connected-minute usage. Carrier, BYOT, transfer and some outbound charges can add telephony cost. | [Bland AI pricing](https://www.bland.ai/pricing) [Bland AI billing](https://docs.bland.ai/platform/billing) [Bland AI documentation](https://docs.bland.ai/) Checked 2026-07-31 | | Pipecat | Open-source framework with an optional managed cloud. | A self-hosted application selects its transport or telephony integration. Pipecat Cloud offers managed deployment around Pipecat workloads. | The framework is open source. Self-hosted model, transport and hosting costs are separate; Pipecat Cloud is a separately priced managed service. | [Pipecat documentation](https://docs.pipecat.ai/) [Pipecat Cloud documentation](https://docs.pipecat.ai/pipecat-cloud/introduction) [Pipecat repository](https://github.com/pipecat-ai/pipecat) Checked 2026-07-31 | | LiveKit Agents | Agent framework; the application team owns the conversation loop. | - | - | [LiveKit Agents documentation](https://docs.livekit.io/agents/) [LiveKit with Speko](https://speko.ai/docs/livekit) | ## The alternatives, one by one ### Speko Router + Gateway Our product - read this entry as the vendor describing itself. Speko replaces separate compatible model clients and application-owned selection policy. It does not replace the phone carrier, media transport, turn detector, context, tools or deployment runtime, so it is not a drop-in Vapi replacement. When to choose it Choose it when the application already owns the realtime loop and model selection is the boundary to make interchangeable. [Speko vs Vapi](https://speko.ai/speko-vs-vapi) ### Retell AI Managed phone agents assembled from Retell-supported infrastructure and model components. Telephony and agent operations live in one hosted workflow, and the final rate depends on the selected model, telephony and optional components. When to choose it Choose Retell when the requirement is a managed phone-agent product rather than a standalone model-routing API. [Speko vs Retell AI](https://speko.ai/speko-vs-retell) ### Bland AI Managed phone-call automation, including campaign and call execution inside the Bland product. The product boundary is phone automation, not a provider-neutral model API, so model-level control is bounded by the platform surface. When to choose it Choose Bland when the managed phone automation workflow is the product requirement. [Speko vs Bland AI](https://speko.ai/speko-vs-bland) ### Pipecat Pipecat is a code framework for realtime pipelines; Pipecat Cloud is a separate managed deployment service. Developers wire individual STT, LLM and TTS services in code, or point those services at an external router. When to choose it Choose Pipecat for code-level control of the realtime conversation loop; choose Pipecat Cloud when its managed deployment boundary fits. [Pipecat with Speko](https://speko.ai/docs/pipecat) ### LiveKit Agents LiveKit Agents is an agent framework; its own documentation is the source for what it runs, and the application team owns the conversation loop. Speko publishes the @spekoai/adapter-livekit package (0.1.3 on npm) and an integration guide for routing model calls inside that loop. When to choose it Choose LiveKit Agents when the team wants to own the runtime on the LiveKit stack. [LiveKit with Speko](https://speko.ai/docs/livekit) ## Which alternative for which team? **A managed platform should still own the agent. +** Compare Vapi with Retell AI: both are hosted products, and the choice is orchestration surface and component pricing, not architecture. **The requirement is outbound phone automation. +** Compare Vapi with Bland AI, whose product boundary is campaign and call execution. **The team wants to own the runtime. +** Move to Pipecat or LiveKit Agents for the conversation loop, then add Speko Gateway for provider-direct voice services or Router for managed routes. Every non-Speko statement on this page is copied from the sourced comparison this site maintains on the [voice agent platforms page](https://speko.ai/voice-agent-platforms); the benchmark snapshot behind Speko routing is published at [benchmarks.speko.ai/data.json](https://benchmarks.speko.ai/data.json). There are no rankings here because this site measures models, not platforms. Choose the layer first. Compare products inside that boundary second. Related pages - [Voice agent platforms, runtimes and model routers](https://speko.ai/voice-agent-platforms) - [Speko vs Vapi](https://speko.ai/speko-vs-vapi) - [Speko vs Retell AI](https://speko.ai/speko-vs-retell) - [Speko vs Bland AI](https://speko.ai/speko-vs-bland) - [Current model catalog](https://speko.ai/models) - [Speko pricing](https://speko.ai/pricing) # Voice agent latency measurement framework Source: https://speko.ai/voice-agent-latency Markdown: https://speko.ai/voice-agent-latency/index.html.md Measurement A production framework for tracing voice agent latency across turn detection, streaming STT, LLM first token, TTS first audio and transport. The useful voice agent latency number is the time from the caller finishing a turn to the first audible agent response. Trace it across turn detection, streaming speech-to-text, LLM first token, streaming text-to-speech and media transport. This page defines the clocks and test controls; it does not combine measurements from different benchmark runs into a synthetic latency budget. **Measurement rule** Keep one end-to-end clock. Component clocks explain the result; they do not replace it. **Author** Speko engineering **Reviewed by** Speko engineering **Published** August 2, 2026 **Last reviewed** August 2, 2026 ## Which clocks should a latency trace record? | Stage | Clock | Production check | Evidence | | --- | --- | --- | --- | | Turn detection | Last caller audio to a committed end-of-turn decision | Test pauses and backchannels, not only clean read speech. | [Turn-taking board](https://benchmarks.speko.ai/turntaking/) [Smart Turn method](https://benchmarks.speko.ai/blog/how-speko-uses-smart-turn/) | | Streaming STT | Committed turn to the final transcript used by the agent | Record partial and final timestamps. A fast partial is not a usable final. | [Streaming STT board](https://benchmarks.speko.ai/streaming-stt/) | | LLM | Final transcript available to the first usable output token | Measure first token on the prompts, tools and guardrails used in calls. | [LLM board](https://benchmarks.speko.ai/llm/) [Model size test](https://benchmarks.speko.ai/blog/mini-is-not-a-latency-tier/) | | Streaming TTS | First speakable text chunk to the first playable audio | Measure first audio and long-form stability separately. | [TTS board](https://benchmarks.speko.ai/tts/) [Speed and quality profile](https://benchmarks.speko.ai/blog/cartesia-fast-and-natural/) | | Full response | Last caller audio to the first audible agent response | Trace the complete call in one region; do not add medians from separate runs. | [Speech-to-speech board](https://benchmarks.speko.ai/s2s/) [Conversation latency test](https://benchmarks.speko.ai/blog/gpt-realtime-2-1-mini-fastest/) | ## How should production latency be measured? 1. 01 Timestamp the last caller audio, committed transcript, first LLM token, first TTS byte and first played audio. 2. 02 Run the same prompts, tools, voices, regions and network path for every candidate. 3. 03 Publish sample size, run date, median and tail latency. Keep errors and empty responses in the denominator. 4. 04 Replay pauses, backchannels, noisy audio and tool calls from the calls the agent must actually handle. ### What usually moves the number? - Endpointing can add delay before any model request begins. - LLM tokens per second do not answer the first-token question. - TTS must receive a speakable chunk before it can stream audio. - Region placement and media playback add time outside the model APIs. - A model or provider change should be evaluated on the full call, not a single component score. ## Cascade or speech-to-speech? A cascade exposes separate STT, LLM and TTS clocks and lets the application replace one component. A speech-to-speech model can shorten the path, but it changes the observability, cost and component-control tradeoff. Compare both on the same complete conversation before changing the architecture. Further evidence Read the measured [cascade and speech-to-speech comparison](https://benchmarks.speko.ai/blog/can-s2s-replace-the-cascade/), then inspect the [voice agent infrastructure map](https://speko.ai/voice-agent-infrastructure). Measure the complete turn, then change one stage at a time. # Voice agent platforms, runtimes and model routers Source: https://speko.ai/voice-agent-platforms Markdown: https://speko.ai/voice-agent-platforms/index.html.md Comparison A sourced comparison of Vapi, Retell AI, Bland AI, Pipecat and Speko across telephony, provider choice, runtime ownership, operations, pricing and tradeoffs. A hosted voice agent platform, an agent runtime and a voice model router are not interchangeable. The platform manages more of the deployed agent. The runtime owns the realtime conversation loop. The model router selects or pins model APIs. Compare products only after choosing which boundary the team intends to own. **Short answer** Vapi, Retell AI and Bland AI are hosted products. Pipecat is a runtime framework. Speko Router is a hosted data plane and Gateway is a customer-side runtime. **Author** Speko engineering **Reviewed by** Speko engineering **Published** August 2, 2026 **Last reviewed** August 7, 2026 ## Comparison matrix Competitor category and billing statements were checked against official sources on July 31, 2026; Pipecat was checked on July 31, 2026. The matrix compares product boundaries, not overall quality. Follow the source before making a purchasing decision. | Option | Scope | Telephony | Provider choice and routing | | --- | --- | --- | --- | | [Speko Router + Gateway](#speko) Voice model router | Compatible model calls for STT, LLM and TTS. It does not run the conversation loop. | Not included in the Router or Gateway boundary. Telephony and WebRTC remain with the application runtime. | The application can pin a model or request measured automatic selection from eligible routes. | | [Vapi](#vapi) Hosted developer platform for voice agents | Managed agent orchestration with prompts, tools and a provider stack configured in the platform. | Telephony is connected and billed separately from Vapi hosting and orchestration. | Developers configure supported STT, LLM and TTS choices. Model usage can be pass-through or BYOK. | | [Retell AI](#retell) Hosted phone-agent platform | Managed phone agents assembled from Retell-supported infrastructure and model components. | Published options include Retell carrier service and custom SIP, priced as separate components. | The agent uses model and infrastructure choices supported by the Retell configuration surface. | | [Bland AI](#bland) Hosted phone automation platform | Managed phone-call automation, including campaign and call execution inside the Bland product. | Bland supports its own telephony and BYOT. Carrier, transfer and some outbound charges can be separate from connected-minute usage. | STT, LLM and TTS are integrated into the connected-minute product rather than exposed as a neutral router. | | [Pipecat](#pipecat) Open-source framework with an optional managed cloud | Pipecat is a code framework for realtime pipelines; Pipecat Cloud is a separate managed deployment service. | A self-hosted application selects its transport or telephony integration. Pipecat Cloud offers managed deployment around Pipecat workloads. | Developers wire individual STT, LLM and TTS services in code, or point those services at an external router. | | Option | Runtime ownership | Observability and failover | Pricing model | | --- | --- | --- | --- | | [Speko Router + Gateway](#speko) Voice model router | Speko operates the routing API; the customer keeps LiveKit, Pipecat or a custom runtime. | Route, reason, failover-count and first-byte headers. Failover is pre-response only, not mid-stream. | Router markup or an infrastructure rate; current terms are kept on the pricing page. | | [Vapi](#vapi) Hosted developer platform for voice agents | Vapi operates the hosted platform; the customer configures the agent and connected services. | The platform owns call logs and orchestration. Fallback behavior stays within the configured provider paths. | Usage-based hosting and orchestration, plus model and telephony charges; BYOK providers can bill directly. | | [Retell AI](#retell) Hosted phone-agent platform | Retell operates the phone-agent platform and runtime; the customer configures the agent. | Call operations and logs are platform-managed within the supported component boundary. | Component pricing: voice infrastructure plus selected TTS, LLM, telephony and optional features. | | [Bland AI](#bland) Hosted phone automation platform | Bland operates the phone automation stack; the customer configures workflows and integrations. | Call execution and logs are platform-managed inside the phone automation boundary. | Tiered monthly plans plus connected-minute usage. Carrier, BYOT, transfer and some outbound charges can add telephony cost. | | [Pipecat](#pipecat) Open-source framework with an optional managed cloud | The application team owns a self-hosted Pipecat runtime. Pipecat Cloud manages deployment infrastructure, scaling, operations and monitoring for hosted workloads. | Self-hosted teams own runtime operations; Pipecat Cloud provides a managed operational layer. Model-service behavior still depends on the configured services. | The framework is open source. Self-hosted model, transport and hosting costs are separate; Pipecat Cloud is a separately priced managed service. | Each option’s official sources and check date sit with its tradeoffs below. ## What Speko Router and Gateway replace Speko replaces separate compatible model clients and application-owned selection policy. It does not replace the phone carrier, media transport, turn detector, context, tools or deployment runtime. Current Router and Gateway evidence - [Speko infrastructure guide](https://speko.ai/voice-agent-infrastructure) - [Speko pricing](https://speko.ai/pricing) - [Current model catalog](https://speko.ai/models) Last checked 2026-08-07 ## Competitor-specific tradeoffs ### Speko vs Vapi Managed agent orchestration with prompts, tools and a provider stack configured in the platform. Strengths of this option - Developer-facing managed agent surface - Configurable provider stack - Platform owns more of deployment and call orchestration than a model router Watch-outs - The bill spans platform, model and telephony components - Provider compatibility and fallback coverage depend on the current platform configuration - Moving to or from a hosted agent abstraction is a wider change than swapping a model API When to choose it Choose Vapi when a managed developer platform should own agent orchestration and provider configuration. Official sources [Vapi pricing](https://vapi.ai/pricing) [Vapi pricing FAQ](https://docs.vapi.ai/faq) [Vapi documentation](https://docs.vapi.ai/) Last checked 2026-07-31 [Full comparison: Speko vs Vapi](https://speko.ai/speko-vs-vapi) ### Speko vs Retell AI Managed phone agents assembled from Retell-supported infrastructure and model components. Strengths of this option - Managed phone-agent product - Component-based configuration and pricing surface - Telephony and agent operations live in one hosted workflow Watch-outs - The final rate depends on the selected model, telephony and optional components - Provider choice is bounded by the platform-supported combinations - A platform-managed runtime offers less code-level control than owning the loop When to choose it Choose Retell when the requirement is a managed phone-agent product rather than a standalone model-routing API. Official sources [Retell AI pricing](https://www.retellai.com/pricing) [Retell AI documentation](https://docs.retellai.com/) Last checked 2026-07-31 [Full comparison: Speko vs Retell AI](https://speko.ai/speko-vs-retell) ### Speko vs Bland AI Managed phone-call automation, including campaign and call execution inside the Bland product. Strengths of this option - Phone-automation product boundary - Managed campaign and call execution - Integrated model components reduce the number of services the application wires directly Watch-outs - The product boundary is phone automation, not a provider-neutral model API - Monthly tier, connected-minute, carrier, BYOT and applicable transfer or outbound charges must be compared together - Model-level control is bounded by the platform surface When to choose it Choose Bland when the managed phone automation workflow is the product requirement. Official sources [Bland AI pricing](https://www.bland.ai/pricing) [Bland AI billing](https://docs.bland.ai/platform/billing) [Bland AI documentation](https://docs.bland.ai/) Last checked 2026-07-31 [Full comparison: Speko vs Bland AI](https://speko.ai/speko-vs-bland) ### Speko vs Pipecat Pipecat is a code framework for realtime pipelines; Pipecat Cloud is a separate managed deployment service. Strengths of this option - Code-level control of the realtime pipeline - Open-source framework and service ecosystem - Can use direct providers or an external model router Watch-outs - Self-hosting leaves deployment, scaling and operational monitoring with the team - Provider setup and cross-service policy live in application code - Hosting and provider costs remain separate When to choose it Choose Pipecat for code-level control of the realtime conversation loop; choose Pipecat Cloud when its managed deployment boundary fits. Add Speko only if routed model services are useful inside that loop. Official sources [Pipecat documentation](https://docs.pipecat.ai/) [Pipecat Cloud documentation](https://docs.pipecat.ai/pipecat-cloud/introduction) [Pipecat repository](https://github.com/pipecat-ai/pipecat) Last checked 2026-07-31 ## A practical evaluation order 1. 01 Decide who owns telephony and media transport. 2. 02 Decide whether the conversation loop lives in a hosted product or in your runtime. 3. 03 Decide whether model choice is fixed, application-managed or delegated to a router. 4. 04 Compare latency, quality, cost, failure behavior and observability on the same calls. Implementation paths - [Voice agent infrastructure map](https://speko.ai/voice-agent-infrastructure) - [Latency measurement framework](https://speko.ai/voice-agent-latency) - [Vapi alternatives, compared](https://speko.ai/vapi-alternatives) - [Pipecat with Speko](https://speko.ai/docs/pipecat) - [LiveKit with Speko](https://speko.ai/docs/livekit) - [LiveKit Agents documentation](https://docs.livekit.io/agents/) Choose the layer first. Compare products inside that boundary second. # Find a voice Source: https://speko.ai/voices Markdown: https://speko.ai/voices/index.html.md Voices Measured voice models, with the published naturalness evidence behind them. ## Browse the roster The catalog endpoint did not answer, so this is the bundled snapshot — which carries the voice models but not their per-voice rosters. The boards below are unaffected. No per-voice roster in this snapshot. The models are listed below. ## What each one scored Naturalness is measured per language, not inferred from English — the model that wins one study routinely loses another. Every figure is the board's own. \# Model Naturalness Elo Synth english board p50 Cost $ / M chars 1 gemini-3.1-flash-tts-preview google-tts:gemini-3.1-flash-tts-preview 1591 978ms ~$33.3 2 eleven_v3 elevenlabs:eleven_v3 1590 481ms $100.0 3 aura-2 deepgram:aura-2 1584 125ms $30.0 4 sonic-3.5 cartesia:sonic-3.5 1574 121ms $50.0 5 simba-3.2 speechify:simba-3.2 1573 345ms $10.0 6 tts-rt-v1 soniox:tts-rt-v1 1569 362ms ~$13.0 7 s2.1-pro fishaudio:s2.1-pro ~1566 185ms $15.0 8 inworld-tts-2 inworld:inworld-tts-2 1561 116ms $25.0 9 inworld-tts-2-flash inworld:inworld-tts-2-flash ~1501 82ms $15.0 10 lightning_v3.1 smallest:lightning_v3.1 1544 173ms $25.0 11 palabra-tts-v1 palabra:palabra-tts-v1 ~1520 72ms $30.0 12 grok-tts xai:tts 1495 272ms $15.0 13 default gradium:default 1448 244ms $57.8 14 speech-2.8-hd minimax:speech-2.8-hd 1431 294ms $100.0 15 arcanav3 rime:arcanav3 1429 238ms $40.0 16 gpt-4o-mini-tts openai:gpt-4o-mini-tts 1424 691ms ~$20.0 17 octave-2 hume:octave-2 1377 448ms $100.0 18 qwen3-tts-flash alibaba:qwen3-tts-flash 1310 472ms $10.0 Latency and price are the English board’s, by model — a model measured only in this study carries neither. ## Voice models and language coverage Which model each voice belongs to, and the languages Router can select it for. Model Provider Voices Routable for sonic-3.5 cartesia:sonic-3.5 cartesia — en (English) ar (Arabic) de (German) es (Spanish) fil (Filipino) fr (French) hi (Hindi) nb (Norwegian) ta (Tamil) te (Telugu) gpt-4o-mini-tts openai:gpt-4o-mini-tts openai — en (English) de (German) es (Spanish) fil (Filipino) fr (French) nb (Norwegian) inworld-tts-2 inworld:inworld-tts-2 inworld — en (English) ar (Arabic) de (German) es (Spanish) fil (Filipino) fr (French) lightning_v3.1 smallest:lightning_v3.1 smallest — en (English) de (German) es (Spanish) fr (French) octave-2 hume:octave-2 hume — en (English) de (German) es (Spanish) fr (French) tts-rt-v1 soniox:tts-rt-v1 soniox — en (English) de (German) es (Spanish) fr (French) s2.1-pro fish:s2.1-pro fish — en (English) tts-rt-v2 soniox:tts-rt-v2 soniox — en (English) chirp-3-hd google:chirp-3-hd google — no languages declared coda rime:coda rime — no languages declared eleven_flash_v2 elevenlabs:eleven_flash_v2 elevenlabs — no languages declared eleven_flash_v2_5 elevenlabs:eleven_flash_v2_5 elevenlabs — no languages declared eleven_multilingual_v2 elevenlabs:eleven_multilingual_v2 elevenlabs — no languages declared eleven_turbo_v2 elevenlabs:eleven_turbo_v2 elevenlabs — no languages declared eleven_turbo_v2_5 elevenlabs:eleven_turbo_v2_5 elevenlabs — no languages declared flux-haley-en deepgram:flux-haley-en deepgram — no languages declared grok-tts xai:grok-tts xai — no languages declared lightning_v3.1_pro smallest:lightning_v3.1_pro smallest — no languages declared mistv3 rime:mistv3 rime — no languages declared octave-1 hume:octave-1 hume — no languages declared qwen3-tts-flash-realtime alibaba:qwen3-tts-flash-realtime alibaba — no languages declared qwen3-tts-instruct-flash-realtime alibaba:qwen3-tts-instruct-flash-realtime alibaba — no languages declared sonic-3 cartesia:sonic-3 cartesia — no languages declared speech-2.6-hd minimax:speech-2.6-hd minimax — no languages declared speech-2.6-turbo minimax:speech-2.6-turbo minimax — no languages declared speech-2.8-turbo minimax:speech-2.8-turbo minimax — no languages declared ## Take one to the API Pin a voice route with the provider and model in an explicit`routing` object, then send the provider's voice id in`voice`. Router returns raw audio in the encoding declared by the request. ```bash curl https://router.speko.dev/v1/tts/speech \ -H "Authorization: Bearer $SPEKO_API_KEY" \ -H "Idempotency-Key: tts-$(uuidgen)" \ -H "Content-Type: application/json" \ -d '{ "routing": {"mode":"auto","objective":"balanced"}, "voice": "", "input": "Hello from Speko.", "audio": {"encoding": "pcm_s16le", "sample_rate_hz": 24000, "channels": 1} }' ``` Use `routing.mode: "auto"` to let Router select the voice model by language and objective instead of pinning a route.