N3squik
03/02/2026, 9:34 AM019c8103-23ca-7772-adff-d52c83f04da3
Timestamp: ~0:42–0:52 into the call
What happened:
The AI was confirming a reservation date (February 26, 2026 at 8 PM) and got stuck repeating "February 2026" several times with lag over a ~10 second window before the conversation could move forward. (please listen to audio to understand).
What I believe is the cause:
Looking at the call logs, three new turns were triggered in rapid succession within ~2 seconds (at 39.9s, 40.9s, and 41.8s) as Deepgram partial transcripts arrived before the final transcript. Each turn independently triggered an LLM call and queued a separate TTS request — all generating essentially the same response. This resulted in 4 TTS chunks being queued and played back-to-back, creating the repetitive, laggy output the caller heard.
It appears there's no deduplication or cancellation of overlapping turns when a new turn starts before the previous one has finished speaking.N3squik
03/06/2026, 8:43 AMChiranjeet Mishra
03/10/2026, 6:17 AM{
"startSpeakingPlan": {
"smartEndpointingPlan": {
"provider": "livekit"
}
}
}
This should help improve turn detection while we resolve the issue.
Best regards,
Oshi Raghav
Customer Support
VapiN3squik
03/12/2026, 7:47 AMstartSpeakingPlan. Could you please update me when the permanent fix has been merged 🙏Chiranjeet Mishra
03/15/2026, 4:54 PM{
"startSpeakingPlan": {
"waitSeconds": 0.1,
"smartEndpointingPlan": null,
"transcriptionEndpointingPlan": {
"onPunctuationSeconds": 0.05,
"onNoPunctuationSeconds": 0.3,
"onNumberSeconds": 0.2
}
}
}
What this configuration does:
• onPunctuationSeconds: 0.05 Responds in ~50ms when punctuation is detected (., !, ?)
• onNoPunctuationSeconds: 0.3 Responds in ~300ms if no punctuation is detected (instead of the default ~1.5s)
• onNumberSeconds: 0.2 Responds ~200ms after numbers are spoken
This approach helps avoid:
• The repetition bug caused by endpointing race conditions
• Higher delays introduced by the LiveKit ML endpointing model
Tuning Tips
• If the assistant interrupts users mid-sentence, increase onNoPunctuationSeconds (try ~0.5).
• If responses are still too slow, you can reduce onPunctuationSeconds further (minimum ~0.05).
----
Option 2 Custom Endpointing Rules
For more control, you can define **custom endpointing rules**:
{
"startSpeakingPlan": {
"customEndpointingRules": [
{
"type": "customer",
"regex": ".*[.!?]$",
"timeoutSeconds": 0.1
},
{
"type": "customer",
"regex": "^(yes|no|okay|sure|yeah|nah|correct|right)$",
"timeoutSeconds": 0.05
}
]
}
}
This allows very fast responses for short answers while keeping longer timeouts for open-ended speech.
Please try these approaches and let us know if the behavior improves.