in free plan of elevenlabs , im trying to test ele...
# ask-ai
a
in free plan of elevenlabs , im trying to test elevenlabs tts livekit plugins but currently only the default elevenlabs tts voice_id is supported for other voices it fails to synthesize the speech i have added voice in my voice in elevenlabs io but still not working
t
Thanks for reaching out, Harshita. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
Thanks — I understand you're testing the ElevenLabs TTS LiveKit plugin on the free plan and only the default
voice_id
works while your other voices fail to synthesize despite adding them in your ElevenLabs account. I’ll walk through the most likely causes and give you simple steps to narrow this down. What’s likely happening • The LiveKit ElevenLabs plugin supports custom `voice_id`s. • The problem is most likely an ElevenLabs account/configuration or API-access issue (not LiveKit), such as an API key permission, voice visibility, or plan restriction. Quick checklist to troubleshoot 1. Confirm your API key is set and used by the plugin ◦ Ensure
ELEVEN_API_KEY
(or whatever env var your integration uses) contains the correct ElevenLabs API key for the account that owns the custom voice. 1. Verify the exact
voice_id
◦ Copy the
voice_id
exactly from the ElevenLabs dashboard (IDs are exact strings; a single character difference will fail). 1. Confirm the voice is a custom voice and accessible via API ◦ Make sure the voice you created is not a community-only voice or otherwise restricted. ◦ Some voices may be visible in the web UI but not accessible via the API on certain plans. 1. Test the ElevenLabs API directly (outside LiveKit) ◦ This isolates whether ElevenLabs itself can synthesize that voice with your API key. Example cURL:
Copy code
curl --silent --output audio.mp3 \
       --header "Content-Type: application/json" \
       --header "xi-api-key: YOUR_ELEVENLABS_API_KEY" \
       --data '{"text":"Test message"}' \
       <https://api.elevenlabs.io/v1/text-to-speech/YOUR_VOICE_ID>
• Replace
YOUR_ELEVENLABS_API_KEY
and
YOUR_VOICE_ID
. If this fails, the issue is with ElevenLabs access/permissions. 1. If direct API call succeeds ◦ The voice is available and your API key works. Then the issue may be how the LiveKit plugin is configured to pass the voice_id or API key: ▪︎ Double-check the plugin initialization includes the
voice_id
exactly. ▪︎ Confirm the plugin is using the same environment/API key as your successful cURL test. What I can help with next • If you run the cURL test and tell me whether it succeeds or the error message you get, I can help interpret the error and give targeted next steps. • If the cURL fails, share the exact error (redact the API key) and I’ll guide you through likely ElevenLabs-side causes and checks. If you want, I can also show an example of how to set the
voice_id
in your LiveKit plugin code based on the snippet you’re using—just tell me which language or snippet you have. Sources: ElevenLabs TTS plugin guide | LiveKit Documentation
a
ok got it thanks!
t
You’re welcome — I’m glad that helped! If anything else comes up while you test (like the cURL result, an error message, or the language/snippet you’re using with the LiveKit plugin), I’m happy to walk through it with you. Would you like an example of the plugin config for a specific language (Python, Node, etc.) or help running the direct ElevenLabs API test?