Troubleshooting
This page covers the most common issues and their resolutions. For each problem, we list the likely causes in order of frequency and the steps to fix them.
Agent Not Answering Calls
The phone rings but the agent does not pick up.
Check in order:
-
Number assignment — the phone number must have an
agent_idassigned.CodeIf
agent_idisnull, assign the agent:Code -
Agent status — the agent must be active. Check
is_activein the agent response:Code -
Account balance — if your credit balance is zero, calls are not answered. Check:
Code -
Trunk status — the number's trunk must show
ready. If it showsprovisioning, wait a few minutes. If it showserror, contact [email protected].
Poor Transcription Quality
The agent misunderstands the caller frequently.
Solutions:
-
Check the language setting — ensure the transcriber language matches the caller's language. If callers speak multiple languages, use a multilingual model.
Code -
Try a different STT model — switch between Deepgram models.
nova-3offers the best accuracy for most use cases. -
Check audio quality — background noise, speakerphone, or poor cell signal degrade transcription. Consider suggesting callers use a headset in the agent's greeting.
-
Review caller demographics — accented speech may perform better with specific language variants (e.g.
en-GBvsen-US).
Voice Sounds Unnatural
The agent's speech sounds robotic, too fast, or not matching expectations.
Solutions:
-
Adjust voice parameters — fine-tune
stabilityandsimilarity_booston ElevenLabs voices:CodeLower stability = more expressive, higher stability = more consistent.
-
Try a different voice — each provider offers multiple voices. Cartesia voices are optimized for low-latency, ElevenLabs for expressiveness.
-
Shorten agent responses — long monologues sound more robotic. Instruct the agent in the system prompt: "Keep responses to 1-2 sentences."
-
Switch TTS provider — if one provider's voices do not work for your use case:
- Cartesia — ~40ms TTFA latency, natural and fast
- ElevenLabs — most expressive, widest voice selection
- Phantom Speech — Neuratel's proprietary, optimized for conversations
Webhook Not Receiving Events
Your server is not getting webhook deliveries.
Check in order:
-
Webhook is active — confirm
is_active: true:Code -
URL is accessible — your endpoint must be publicly reachable from the internet. Test with a curl from an external machine.
-
HTTPS required — Neuratel only delivers to
https://URLs. HTTP endpoints are rejected. -
Firewall rules — ensure your server accepts inbound POST requests on the webhook port.
-
Check delivery logs — view failed deliveries and error messages:
Code -
Send a test — trigger a test delivery to isolate the issue:
Code -
Check event subscriptions — confirm you are subscribed to the event types you expect.
High Latency (Slow Agent Responses)
The agent takes too long to respond after the caller finishes speaking.
Solutions:
-
Switch to faster providers:
- TTS: Cartesia (~37ms) or Phantom Speech for lowest latency
- STT: Deepgram nova-3 for fastest transcription, or Soniox for native multilingual with semantic EOU
- LLM: Phantom Brain (~178ms TTFT) or Groq for fastest inference
-
Reduce system prompt length — very long system prompts increase LLM processing time. Keep it focused and concise.
-
Lower
temperature— lower temperature values (0.1-0.3) produce faster, more deterministic responses. -
Optimize MCP tool servers — if the agent calls external tools, ensure those servers respond within 2 seconds. Slow tools block the response pipeline.
-
Check your provider's rate limits — if using BYOK, your provider account may be throttling requests.
Call Drops Unexpectedly
Calls end before the conversation is complete.
Check:
-
Silence timeout — if neither party speaks for the configured duration, the call ends. Increase
conversation.silence_timeout_seconds:Code -
Max duration — check
conversation.max_duration_seconds. Increase if calls are legitimately long. -
VAD sensitivity — if the VAD is too aggressive, it may interpret background noise as silence. Adjust the VAD threshold.
-
Account balance — if your balance hits zero mid-call, the call ends. Read your live balance via Usage Visibility; contact your account team for any operational change.
Campaign Not Starting
You click "Start" but the campaign stays in draft status.
Check:
-
Account balance — campaigns require an active credit balance. If you suspect this is the cause, check
has_creditsviaGET /v1/billing/balanceand contact your account team if it'sfalse. -
Contact list — the campaign must have at least one contact. Verify the CSV uploaded successfully:
CodeCheck
total_contactsis greater than 0. -
CSV format — the CSV must have a
phone_numbercolumn with E.164 formatted numbers (+12125550101). Common errors:- Missing
+prefix - Spaces or dashes in numbers
- Column named
Phoneinstead ofphone_number
- Missing
-
Agent status — the campaign's agent must be active.
-
Caller ID — the campaign must have a valid
caller_idnumber assigned.
Signature Verification Failing
Your webhook handler rejects legitimate Neuratel deliveries.
Check:
-
Using raw body — compute the HMAC over the raw request body (bytes), not the parsed JSON object. Parsing and re-serializing JSON changes whitespace and key ordering.
-
Correct secret — verify you are using the webhook signing secret from creation, not your API key.
-
Encoding — both the body and secret must be UTF-8.
-
Secret rotated — if you rotated the secret, update your handler with the new value. The old secret is invalidated immediately.
Knowledge Base Not Returning Results
The agent does not reference uploaded documents during calls.
Check:
-
Document status — verify documents are indexed (not still processing):
CodeDocuments should show
status: "indexed". -
Agent linked to knowledge base — the agent must have the knowledge base ID configured.
-
Query relevance — the caller's question must be semantically similar to content in the documents. Try rephrasing the system prompt to guide the agent to search the knowledge base for specific topics.
Still Stuck?
- Check status: status.neuratel.ai
- Email support: [email protected] — include the
request_idfrom any error responses - Slack: Enterprise clients have a dedicated support channel
Next Steps
- Error Codes — understand specific API error codes
- FAQ — common questions answered
- Production Checklist — prevent issues before going live
