#Hi, I'm using batch calling api for voice calls. and display on my website also display audio . but
1 messages · Page 1 of 1 (latest)
Thanks for reaching out. “Unclear” or “low-quality” audio in outbound batch calls is usually caused by codec/format mismatches, aggressive latency settings, or voice parameters. Here’s a focused checklist you can use:
-
For phone calls, use μ‑law 8000 Hz end‑to‑end
- In Agents used for Twilio calls, set both TTS Output and Input to “μ‑law 8000 Hz.” This avoids transcoding that degrades clarity. (elevenlabs.io)
- If you generate audio via API, set output_format to ulaw_8000 for telephony paths. The Text‑to‑Speech API supports output_format (e.g., ulaw_8000, mp3_44100_128). (elevenlabs.io)
-
For website playback, do not reuse 8 kHz call audio
- μ‑law 8 kHz is optimized for telephony and sounds narrowband on the web. Regenerate or store a separate web asset at higher fidelity (e.g., MP3 44.1 kHz 128–192 kbps or Opus 48 kHz) and use that for your site. (elevenlabs.io)
-
Avoid deprecated latency knobs that trade quality for speed
- If you set optimize_streaming_latency, remove it or set defaults—this parameter is deprecated and reduces quality. (help.elevenlabs.io)
-
Check voice settings that can introduce artifacts
- Keep speed near the default (1.0). Extreme values can degrade audio quality. (elevenlabs.io)
- Keep style exaggeration at 0; higher values can cause instability or odd sounds. (elevenlabs.io)
- If needed, tune stability/similarity via the voice settings endpoints. (elevenlabs.io)
-
Pick the right model for quality vs latency
- Flash models are fastest but with a slight quality trade‑off versus Multilingual v2; use the higher‑quality model if clarity is the priority. (elevenlabs.io)
-
Verify you’re using the Batch Calling flow correctly
- Batch Calling works with Twilio or SIP trunking and lets you override per‑call voice_id and other fields; if some calls look worse, confirm overrides aren’t forcing a low‑fidelity format or unusual voice settings. (elevenlabs.io)
If you share:
- which telephony integration (Twilio or SIP),
- your agent’s Input/Output audio formats,
- any output_format you pass in API
I am just calling api '/v1/convai/batch-calling/submit' . and i am not generated tts. i am getting audio after call completed by '/v1/convai/conversations/' . urlencode($conversationId) . '/audio' api.
Thanks for the details. You’re using the right endpoints for batch calls and retrieving the final call recording:
- Submit batch: POST /v1/convai/batch-calling/submit. (elevenlabs.io)
- Retrieve conversation audio: GET /v1/convai/conversations/:conversation_id/audio. (elevenlabs.io)
If some recordings sound unclear, the most common causes (and fixes) in ConvAI telephony are:
- Telephony bandwidth and codec limits
- PSTN/Twilio paths are typically narrowband (8 kHz). If your batch uses a Twilio number, expect 8 kHz audio. You can confirm provider on the batch record and per-recipient conversations. (elevenlabs.io)
- For higher fidelity, use SIP trunking with a wideband codec (G.722 at 16 kHz). ElevenLabs SIP expects G.711 (8 kHz) or G.722 (16 kHz); mismatches or resampling can degrade quality. (elevenlabs.io)
- Match your agent’s audio formats to the phone path
- Agents expose both the input and output audio formats (e.g., user_input_audio_format and agent_output_audio_format). Ensure these align with your telephony codec (e.g., 8 kHz for PSTN; 16 kHz for G.722). You can read and update these via the Agent API. (elevenlabs.io)
- ElevenLabs STT supports telephony-friendly formats (pcm_8000, ulaw_8000, etc.), so feeding/expecting 8 kHz on PSTN avoids extra transcoding. (elevenlabs.io)
- 8 kHz PCM output is officially supported (added in 2025) if you need to standardize on PSTN quality. (elevenlabs.io)
- Verify the conversation actually has audio and what parts are present
- Check GET /v1/convai/conversations/:id for has_audio, has_user_audio, has_response_audio before downloading, to rule out partial/empty recordings. (elevenlabs.io)
- Network/codec issues on SIP trunks
- If you’re on SIP and still hear artifacts, follow the SIP troubleshooting guidance: confirm bandwidth/jitter, verify negotiated codec (G.711 vs G.722), and test encryption/transport settings. (elevenlabs.io)
Optional workflow improvements
- Instead of polling, you can enable post-call audio/transcription webhooks to receive the final recording and metadata once processing completes. (elevenlabs.io)
If you can share a few affected conversation_ids, you can first check provider and has_audio via the GET conversation and batch APIs, then confirm the agent’s audio
how we can change agent audio format to phone path
Short answer: use a telephony codec (µ-law/A-law at 8 kHz). For phone calls this is either fixed by the telephony path, or you transcode after download—there isn’t a format switch on the conversation-audio endpoint.
Details:
- Telephony calls on the Agents Platform use phone-bandwidth codecs. With SIP trunking, ElevenLabs sends/receives G.711 (8 kHz) or G.722 (16 kHz), independent of any WebSocket/agent output format you might use elsewhere. You don’t need to set this per agent. (elevenlabs.io)
- Batch Calling works over your connected phone numbers (Twilio or SIP), so those calls also traverse the telephony path and inherit the same phone codecs. (elevenlabs.io)
- The conversation recording endpoint GET /v1/convai/conversations/{conversation_id}/audio does not document any query parameter to choose the file/codec; it just returns the recording. If you need “phone path” audio for web playback, download and transcode to µ-law 8000 Hz (or A-law 8000 Hz) on your side. (elevenlabs.io)
- ElevenLabs officially supports µ-law and A-law at 8 kHz as output formats (for TTS APIs). If you generate agent speech outside the phone path (e.g., for web playback via TTS/WebSocket), set the output format to a telephony codec or transcode accordingly. (help.elevenlabs.io)
If your goal is clearer audio on PSTN calls, consider using SIP with G.722 (wideband) where your carrier supports it; otherwise G.711 (µ-law/A-law) is the standard phone path. (elevenlabs.io)
Sources:
SIP trunking | ElevenLabs Documentation
Batch calling | ElevenLabs Documentation
Get conversation audio | ElevenLabs Documentation
What audio formats do you support? – ElevenLabs
SIP trunking | ElevenLabs Documentation
how i can set SIP with G.722