Speech latency numbers, published
October 20, 2026 · platform
node-webrtc-rust 0.12.1 · @voicethere/client
We measured how long a voice agent takes to answer and put the numbers on one page, with the method next to them. Everything was measured with our own paid accounts in the EU region on 2026-10-19 and 2026-10-20.
With VoiceThere speech, the reply starts a median of 1,766 ms after the caller stops talking when 45 conversations run at once, against 1,687 ms for a single conversation. About 1,500 ms of that is the end-of-speech wait of the voice detection settings, which the speech-end-to-final and reply-start numbers include. The first audio of a reply took a median of 130 ms at 45 conversations (p90 330 ms).
The same agent with a cloud vendor behind it shows how much the choice matters. Warm turns started the reply a median of 1,634 ms after speech end with VoiceThere speech-to-text and Cartesia text-to-speech, 1,777 ms with Groq, 2,219 ms with Fish Audio, 2,424 ms with ElevenLabs and 3,595 ms with OpenAI, where the p90 was 5,506 ms. ElevenLabs ran over HTTP in that test, before the default change below. Those are 9 turns per vendor, so read them as a rough size.
Called directly from a server in the EU, Cartesia and Groq text-to-speech returned first audio in a median of 106 to 198 ms warm, ElevenLabs over WebSocket in 363 to 504 ms, and OpenAI tts-1 in 1,269 to 1,415 ms (measured on node-webrtc-rust 0.12.2; that is when playback starts). Because of these results, node-webrtc-rust 0.12.1 changes two defaults: ElevenLabs text-to-speech now uses WebSocket and Cartesia text-to-speech uses HTTP.
Some vendors are missing because their terms do not allow publishing benchmarks. Google, Azure and AWS are not measured yet.
Try it
- All tables, the method and what the numbers leave out: Speech latency benchmarks
- Raw results and the code behind them: node-webrtc-rust benchmarks
- Measure your own agent end to end: latency-bench example