OpenRouter for Voice
Every speech model, benchmarked language by language, wired into one API.
Router
Which model to call, per language and per objective, decided from published measurements instead of a vendor's English leaderboard.
Benchmark coverage by language
Model
EN
AR
FR
DE
HI
NB
ES
TA
TE
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
GPT Transcribe / batch endpoint
Grok STT
Ink-2
Pulse
Realtime STT-1bench
Scribe v2 / historical batch
Scribe v2 Realtime
Solaria-1
Universal-3.5 Pro
Velma 2
Flux
GPT Live Transcribe
Score against cost, per stage
Accuracy (WER)
$0.0010$0.01602.0%11.0%
Universal-3.5 Pro2.0% · $0.0075
Realtime STT-13.3% · $0.0025
GPT-4o-mini Transcribe2.7% · $0.0030
GPT-4o Transcribe2.3% · $0.0060
Velma 24.4% · $0.0010
Cost ($/min)
#Model
1
Universal-3.5 Proassemblyai:universal-3-5-pro
2.0%$0.00752
GPT-4o Transcribeopenai:gpt-4o-transcribe
2.3%$0.00603
GPT Transcribe / batch endpointopenai:gpt-transcribe
2.5%—4
GPT-4o-mini Transcribeopenai:gpt-4o-mini-transcribe
2.7%$0.00305
Qwen3-ASRalibaba:qwen3-asr-flash
2.8%$0.00546
Scribe v2 / historical batchelevenlabs:scribe_v2
2.9%—7
Realtime STT-1benchmark only — not routable
3.3%$0.00258
Chirp 3google:chirp_3
3.9%$0.01609
Velma 2modulate:velma-2-stt-streaming-english-v2
4.4%$0.001010
Grok STTxai:stt
4.8%$0.003311
Solaria-1gladia:solaria-1
5.0%$0.012512
Pulsesmallest:pulse
5.1%~$0.005013
stt-rt-v5soniox:stt-rt-v5
7.5%$0.002014
Gradium ASRgradium:default
8.4%$0.010415
Nova-3deepgram:nova-3
9.8%$0.004816
Ink-2cartesia:ink-2
11.0%$0.0090—
Scribe v2 Realtimeelevenlabs:scribe_v2_realtime
—$0.0065—
Fluxdeepgram:flux-general-en
—$0.0065—
GPT Live Transcribeopenai:gpt-live-transcribe
—$0.0170Gateway
One base URL and one key in front of every provider, speaking the API your framework already calls.
Run and observe your voice workers
Speko speaks the OpenAI API, so the frameworks you already use need a hostname and a model string.
import { defineAgent, voice } from '@livekit/agents';
import * as openai from '@livekit/agents-plugin-openai';
const key = process.env.SPEKO_API_KEY!;
const baseURL = 'https://api.speko.ai/v1';
export default defineAgent({
entry: async (ctx) => {
const session = new voice.AgentSession({
stt: new openai.STT({ apiKey: key, baseURL, model: 'auto' }),
llm: new openai.LLM({ apiKey: key, baseURL, model: 'auto' }),
tts: new openai.TTS({ apiKey: key, baseURL, model: 'auto' }),
});
await session.start({ agent: new voice.Agent({ ... }) });
},
});Point your agent at Speko
$claude mcp add --transport http speko https://mcp.speko.ai/mcp