ElevenLabs Voice Clone
A permanent voice from a short audio sample
- audio_sample
- status
This is the node that gives you a voice that isn't in any dropdown. Feed it a recording of someone speaking and it creates a brand-new voice in your ElevenLabs account, permanently - then you can drive that voice with the TTS node like any other. It's instant voice cloning, and it's the single most useful thing this pack does for character work.
How it works
The node uploads your audio sample as a WAV to ElevenLabs' /v1/voices/add endpoint (the "instant voice cloning" path) along with a voice_name, a voice_description, and optional labels. The API creates a voice on your account and returns its ID.
Here's the part that trips people up, because the README lies a little: the node's only output is a status string. There's no separate voice_id socket - the voice ID is embedded in that status text (and printed to the ComfyUI console) after a successful clone. You read it from there. The clone itself lives server-side on your ElevenLabs account, so there's no audio file to save; the voice just appears in your TTS dropdown.
Inputs
api_key- your key.voice_name- the name the voice will have in your account. Make it memorable; you'll be picking it from a dropdown forever.audio_sample- the reference recording. More and cleaner is better: a minute or so of clear, consistent speech gets a dramatically better clone than a ten-second snippet. The pack's own guidance says 1–5 minutes recommended.voice_description- a text description of the voice. It genuinely influences the result.labels(optional) - comma-separatedkey: valuepairs likeaccent: american, age: young, gender: female(that's the default). These are metadata, but they help the system categorize the voice.
Output: a status string - success message with the voice ID, or an error message explaining the failure.
Install
Same one-liner as the rest of the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/karthikg-09/Elevenlabs-ComfyUI.git
cd Elevenlabs-ComfyUI && pip install -r requirements.txt
or search "Elevenlabs-ComfyUI" in ComfyUI Manager, then restart. Node lives under Add Node → ElevenLabs.
The gotchas that actually bite
Tier, tier, tier. Voice cloning is subscription-gated. If your plan doesn't include cloning slots, you'll get a 4xx and a confusing error string. Before you blame the node, run the pack's User Info node - it reports whether your account can use instant voice cloning.
The new voice won't show up in TTS until the cache refreshes. Voices are cached for an hour. After cloning, either run any TTS node once and Reload Node (the key-change auto-refresh also works), or use the Refresh Voices node.
Audio quality matters more than length. A clean, consistent sample beats a long messy one. And the obvious ethical line applies here with extra force: clone voices you have permission to use. This is the node where ElevenLabs' consent and verification rules are the point, not the paperwork.
Once it works, the loop is beautiful: clone a voice once, then generate unlimited dialogue with it in the TTS node, and pair it with a talking-head model downstream if you want the face to match. For private, local cloning the open models (Chatterbox, F5-TTS) have genuinely caught up - but if you want the clone to live in your account and work everywhere, this is the fast path.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | — | |
| voice_name | STRING | My Cloned Voice | — |
| audio_sample | AUDIO | — | |
| voice_description | STRING | A clear, friendly voice | — |
| labelsopt | STRING | accent: american, age: young, gender: female | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| status | STRING | — |