How to Create Custom AI Voices with Voice Design API
Disclosure: This post contains affiliate links. If you purchase through these links, I may earn a commission at no extra cost to you. Try ElevenLabs today →
How to Create Custom AI Voices with Voice Design API
Can I create new AI voices programmatically? Yes — the ElevenLabs Voice Design API lets you generate custom synthetic voices from scratch, without any source audio. Describe the voice characteristics you want, and the API builds a brand-new voice that matches your specifications.
What Is Voice Design?
Traditional voice cloning requires sample audio of the target speaker. Voice Design is different — it generates entirely new voices based on descriptive parameters. Think of it as “prompt engineering for voices.” You describe the voice you want, and the model creates it.
Key Parameters for Voice Design
| Parameter | Range | Description |
|---|---|---|
| Gender | male / female | |
| Age | young, middle-aged, old | |
| Accent | American, British, Australian, etc. | |
| Tone | warm, bright, deep, raspy, smooth | |
| Pitch | low, medium, high | |
| Speed | slow, normal, fast | |
| Style | conversational, authoritative, friendly, formal |
API Endpoint
POST https://api.elevenlabs.io/v1/text-to-voice/create
Python: Create a Custom Voice
import requests
api_key = "YOUR_API_KEY"
headers = {
"xi-api-key": api_key,
"Content-Type": "application/json"
}
# Design a new voice
payload = {
"voice_description": "A warm, friendly male voice with a British accent, "
"medium pitch, suitable for audiobook narration",
"name": "Audiobook Narrator British"
}
response = requests.post(
"https://api.elevenlabs.io/v1/text-to-voice/create",
headers=headers,
json=payload
)
voice_data = response.json()
voice_id = voice_data["voice_id"]
print(f"Created voice: {voice_data['name']} (ID: {voice_id})")
Designing Voices for Different Use Cases
Corporate / Professional
{
"voice_description": "A confident, professional female voice with neutral American accent, "
"clear articulation, slightly authoritative but approachable",
"name": "Corporate Trainer"
}
Warm / Empathetic
{
"voice_description": "A soft, warm female voice with gentle tone, slightly slow pace, "
"feels like a caring friend or therapist",
"name": "Wellness Coach"
}
Energetic / Youthful
{
"voice_description": "A bright, energetic young male voice with a slight Australian accent, "
"fast pace, enthusiastic and engaging",
"name": "Content Creator"
}
Authoritative / Deep
{
"voice_description": "A deep, authoritative male voice with a neutral accent, slow and deliberate, "
"commands attention, perfect for documentary narration",
"name": "Documentary Narrator"
}
Using Your Custom Voice
Once created, use the returned voice_id in standard TTS calls:
# Use your custom voice in TTS
audio = generate(
text="This is my custom designed voice speaking.",
voice=voice_id,
model="eleven_multilingual_v2"
)
Batch Voice Creation for Teams
If you need multiple distinct voices (e.g., for a game or e-learning platform):
def create_voice_batch(voice_specs):
created_voices = []
for spec in voice_specs:
resp = requests.post(
"https://api.elevenlabs.io/v1/text-to-voice/create",
headers=headers,
json=spec
)
voice = resp.json()
created_voices.append(voice)
print(f"Created: {voice['name']} -> {voice['voice_id']}")
return created_voices
# Create 5 distinct voices
voices = create_voice_batch([
{"name": "Narrator", "voice_description": "Deep authoritative male..."},
{"name": "Hero", "voice_description": "Energetic young male..."},
{"name": "Sage", "voice_description": "Old wise female with British accent..."},
{"name": "Villain", "voice_description": "Deep raspy male, slow and menacing..."},
{"name": "Companion", "voice_description": "Cheerful light female..."},
])
Voice Design vs Voice Cloning
| Feature | Voice Design | Voice Cloning |
|---|---|---|
| Source audio needed | No — describe it | Yes — 1-30 minutes |
| Creates new voices? | Yes, from scratch | No, duplicates existing |
| Best for | Characters, brand voices, anonymity | You, celebrities, specific people |
| Time to create | ~5 seconds | ~30 seconds + upload |
Use Cases
Character Voices for Games
Create distinct voices for every NPC, hero, and villain — all unique, no voice actors needed.
Brand Voice Identity
Design a consistent brand voice that represents your company in all audio content, videos, and customer touchpoints.
Audiobook Characters
Give each character in your audiobook a unique voice, creating a full-cast experience from a single API.
Anonymized Voices
For podcasts or interviews where speakers want anonymity, generate unique voices that can’t be traced back.
Language Learning
Generate voices with perfect pronunciation in any supported language for educational content.
FAQ: Voice Design API
How many custom voices can I create?
Limits depend on your plan. Most paid plans allow dozens of custom voices. Free tier includes limited voice design credits.
Can I edit or tweak a designed voice?
You can’t edit a designed voice directly, but you can generate a new one with adjusted parameters until it matches what you need.
Does Voice Design work in other languages?
Yes — describe the accent and language in your prompt. The multilingual model supports 29 languages.
Best Practices
- Be specific — “warm” vs “very warm, like a close friend” — details matter
- Reference real voices — “sounds like a friendly museum guide” helps the model
- Test and iterate — generate 3-5 variants and pick the best
- Name your voices descriptively — helps when managing many voices
Ready to create your own custom voices? Start with ElevenLabs Voice Design →
Related Free Resources
Pair this guide with the free assets in our Free Library – tools, prompt packs and templates we actually use.
