Speko Review: A Router for Voice AI Models (STT, LLM, TTS) in One API
A production voice agent is not one model. It is an ensemble: speech-to-text listens, an LLM thinks, and text-to-speech speaks. Each layer has a dozen credible vendors, each vendor ships new models every month, and almost every team evaluates once, picks a stack, and never rechecks â because switching vendors means another integration and another argument about whose numbers are right. Speko, a YC S26 startup that launched publicly on Hacker News in August 2026, wants to be the routing layer that fixes this: one API that picks an optimal STT + LLM + TTS combination for your constraints, out of publicly benchmarked options, and tells you why. This review looks at what it actually does, where it is genuinely useful, and what to verify before you build on it.Quick Verdict
| Question | Answer |
|---|---|
| What is it? | A managed router for voice AI models, plus an open customer-side gateway runtime |
| Best for | Teams building or scaling voice agents who do not want to re-run vendor evals every quarter |
| Biggest strength | Language-by-language public benchmarks instead of English-only leaderboards |
| Biggest caveat | Early-stage: YC S26, launched days ago, breaking changes possible before stable release |
| Pricing | Managed routing is free until November 1, 2026; the team says it plans roughly 10% of traffic cost after that and is open to changing the model |
What Speko Actually Does
Two pieces matter: The managed router. You send one request describing your constraints â language, accuracy target, cost ceiling â and Speko selects a model combination per stage (STT, LLM, TTS, or end-to-end speech-to-speech) from its benchmarked catalog. The pitch is that the decision comes from published measurements, not a vendor's own leaderboard. The Speko Gateway. This is the open, customer-side runtime (github.com/SpekoAI/gateway). It gives your agent one local streaming protocol across voice providers, keeps your BYOK (bring-your-own-key) credentials inside your own process, and can optionally talk to Speko's managed service for routing, observability, and consolidated billing. Integration is deliberately lightweight: for LiveKit agents, it is a few lines added to a standard Python agent Dockerfile, and the team has contributed examples to Pipecat as well. The key numbers on Speko's public benchmark matrix are worth pausing on. Of the 23 speech models it tracks, 11 are only measured in English â their rank in any other language is unknown, including the model at the top of the English table. And across the 9 languages in its current matrix, 4 different models win. There is no universally best voice model; the right pick genuinely changes with the language your users speak.Where It Shines
Multilingual products. If your users speak only English, almost any top-tier vendor works and routing adds modest value. If you serve Arabic, Hindi, Spanish, or Tamil speakers, the benchmark gap Speko exposes is real: per-language WER and cost-per-minute data lets you justify a pick with numbers instead of vendor marketing. Cost-accuracy tradeoffs per stage. The matrix scores accuracy against cost per minute for each stage separately. That makes the cheap-model-for-easy-calls strategy concrete: route simple, high-volume calls to a low-cost stack and reserve premium models for the calls that need them. Low lock-in by design. The gateway runs on your side with your keys. A BYOK request can stay entirely inside your own cloud, with Speko only seeing traffic metadata; you can also run the gateway image from AWS Marketplace or build from source. For a two-week-old company, that is the right architecture to ask for.Where to Be Careful
- It is days old. The team is explicit that the gateway is in early preview and breaking changes may occur before the first stable release. Treat the API surface as unstable and pin versions.
- Benchmarks are Speko's own. The per-language numbers are published by the routing company itself. Before committing, replay a slice of your own production audio against its top picks and confirm the rankings hold on your data, your accents, and your audio quality.
- Pricing is not settled. Free-until-November is generous for evaluation, but "roughly 10% of traffic" is a meaningful tax at scale, and the team says it is open to changing the model. Model the cost at your projected volume before you standardize on it.
- Coverage is still growing. The current matrix covers a subset of providers and 9 languages; the team says more are onboarding. If your stack depends on a vendor or language not yet benchmarked, the router cannot help you yet.
Alternatives
- Direct vendor integration. Pick an STT (for example Deepgram or AssemblyAI), an LLM host, and a TTS (for example ElevenLabs or Cartesia) and wire them yourself through an orchestration framework like LiveKit or Pipecat. Maximum control, zero routing fees, but you own every re-evaluation.
- Text-model routers. If your product is voice-first but model-swapping pain is mostly on the LLM side, a general AI gateway (OpenRouter, LiteLLM, Portkey, Cloudflare AI Gateway â see our AI gateway comparison) covers the thinking stage only. It will not help you pick speech models.
- Roll your own eval harness. Run open-source WER benchmarking against your own labeled audio and hard-code a routing table. Cheapest at steady state, but you rebuild it every time a vendor ships a new model.
How to Evaluate It in One Afternoon
1. Sign up and run the demo flow with a real prompt from your product, in your users' actual languages.2. Read the benchmark cells for your languages and note the per-stage cost range the router is choosing between.
3. Replay 50â100 clips of your own production audio through the recommended stack and one alternative; compare transcripts by hand.
4. Add the gateway to a staging LiveKit or Pipecat agent using the Dockerfile diff from the repo, and confirm your BYOK keys stay in your environment.
5. Decide based on your numbers, not the matrix.