Fullduplex
Subscribe

Turn detection

日本語

Turn detection decides when a user has finished speaking, so a voice agent knows when to reply. If it fires too early, the agent cuts people off, and if it fires too late, the line goes quiet. Cascaded voice agents use a separate detector for this, while full-duplex models make the same call inside the model.

Why silence is not enough

The simplest approach waits for a fixed stretch of silence after a voice activity detector stops hearing speech. People pause mid-sentence to think, so a short timeout interrupts them, and a long one makes every reply slow. Between people, the most common gap between turns is about 200 milliseconds, and planning a single spoken word takes at least 600, so listeners predict the end of a turn before it arrives. Turn detectors try to do the same from the words, the intonation, or both.

Kinds of turn detector

AudioListens to the sound itself, including intonation and pauses, with no transcript. 18 in the database.
TranscriptReads the running transcript and predicts whether the sentence is complete. It needs speech recognition first. 4 in the database.
Audio and transcriptUses both the sound and the words. 3 in the database.
Inside speech recognitionSome streaming speech recognition services send an end-of-turn event along with the transcript. 10 in the database.

A full-duplex model needs none of these as a separate part, because it listens while it speaks. See the full-duplex models.

How they are measured

Two public benchmarks score every system on the same test set, so their numbers can be compared within each table below.

TurnBench scores end-of-turn and interruption detection on 30 hours of hand-labelled two-person conversation. Systems are ranked on recall, the share of real turn ends they catch, as long as their false-positive rate stays at or below 0.15. Median latency is reported alongside.

LiveKit's eot-bench reports how long a detector waits after the user stops when it is tuned to cut users off at most 5% of the time. Lower is better.

oto, which publishes this site, co-authored TurnBench. LiveKit runs eot-bench and ranks its own detector on it. Figures from other test sets are on each component's page.

TurnBench results

End-of-turn rows as read from the TurnBench leaderboard on 2026-11-08. Systems above the false-positive limit are listed last.

ComponentLicenceRecallFalse positivesLatency (p50)
Apache-2.00.9750.075595 ms
Echo Omni DuplexZero Runtime
Proprietary0.9700.072768 ms
VoxTurnUniversity of Melbourne
CC-BY-NC-4.00.9240.076557 ms
Voice Activity Projection (VAP)KTH (Ekstedt and Skantze)
Permissive0.8450.055368 ms
Echo OmniZero Runtime
Proprietary0.8390.071676 ms
CC-BY-4.00.8260.078862 ms
Mimi EndpointerSathvik Udupa et al.
CC-BY-4.00.7820.078645 ms
Permissive0.7730.0591007 ms
BSD-2-Clause0.7520.0471017 ms
Proprietary0.3030.018793 ms

eot-bench results

English validation split, as read from the eot-bench repository on 2026-11-08. The two tables use different test sets and measures, so rows cannot be compared across them.

ComponentLicenceDelay at 5% cut-offs
Custom terms543 ms
Proprietary647 ms
UltraVADUltravox
Custom terms899 ms
Proprietary1049 ms
BSD-2-Clause1051 ms
Proprietary1056 ms
Voice Activity Projection (VAP)KTH (Ekstedt and Skantze)
Permissive1131 ms
Proprietary1143 ms
Proprietary1151 ms

Choosing one

Where it runs. Open weights run on your own CPU or GPU. Hosted APIs add a network round trip, and SDKs come with a commercial licence. 21 of the 25 turn detectors in the database have open weights.

Language. Check that a detector covers your users' languages. Each component page lists the languages its maintainer names.

Licence. Some open models are for non-commercial use only. Check the licence column before you ship.

What it plugs into. 9 of the turn detectors document an integration with an agent framework such as LiveKit Agents or Pipecat. Each component page lists the ones its maintainer documents.

Compare all 25 turn detectors, and the VAD, interruption and speech recognition parts around them, on Components. Read more: The full-duplex threshold

FAQ

Is a voice activity detector enough?
A voice activity detector (VAD) tells you whether someone is speaking, not whether they have finished. On its own it needs a silence timeout, which either cuts people off when they pause or slows every reply. Many stacks run a VAD and a turn detector together.
Does a full-duplex model need a separate turn detector?
Usually not. A full-duplex model keeps listening while it speaks and decides inside the model when to talk. Separate turn detectors are built for cascades, where speech recognition, a language model and speech synthesis run one after another.
Which turn detectors have open weights?
21 of the 25 turn detectors in the database have downloadable weights. Filter Components by Open weights to see them.