Nodes/Elevenlabs-ComfyUI/ElevenLabs Music Generation
ComfyUI Node

ElevenLabs Music Generation

A music prompt node with a caveat attached

By karthikg-09·Created 11 months ago·Updated 11 months ago· 1
ElevenLabs Music Generation
    • AUDIO
    api_key
    promptUpbeat electronic music with synthesizers
    duration_seconds10
    modelmusic_gen_medium
    input_prompt
    temperature1.0

    Describe a track - "upbeat electronic music with synthesizers" - and this node asks ElevenLabs to write it for you, up to five minutes of it, returned as a ComfyUI AUDIO tensor. In principle it's the whole pack in miniature: prompt in, audio out, no local model. In practice it's the node you should read the fine print on before building a workflow around it, because ElevenLabs' music generation has been gated, experimental, and occasionally absent depending on when you look.

    How it works

    The node POSTs your prompt, duration_seconds, model, and temperature to https://api.elevenlabs.io/v1/music-generation and decodes the returned audio. That's it - synchronous, one call. But the pack's own source comments tell you what to expect: the endpoint "might not be publicly available yet" and "may require a specific subscription tier." That's not a bug in the node; it's the reality of a feature ElevenLabs has rolled out unevenly. If your plan doesn't include music access, or the endpoint isn't live for your region/account, you'll get a 4xx and the node hands you an empty audio tensor - the error text will be in the ComfyUI console.

    Inputs

    • api_key - your key.
    • prompt - the track description. Genre, instruments, mood, tempo: "lo-fi hip hop with a warm bass and vinyl crackle" is the kind of specificity that works.
    • duration_seconds - 1 to 300, default 10.
    • model - music_gen_medium (default) or music_gen_large. Note this differs from the README, which lists a stale eleven_music_gen_v1; the dropdown you actually get is these two.
    • temperature (optional) - 0.1 to 2.0, default 1.0. Higher = more variation per run.
    • input_prompt (optional) - force-input variant for wiring the prompt in from elsewhere.

    Output: one AUDIO socket.

    Install

    Identical to 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 ComfyUI Manager → "Elevenlabs-ComfyUI" → restart. Add Node → ElevenLabs.

    The honest take

    This is the one node in the pack I'd call a "maybe." For music, the open-weights world is genuinely competitive now - ACE-Step runs locally on a potato GPU and is the community's answer to Suno for instrumental work, and it doesn't meter you per generation. If you want reliable in-graph music without subscription roulette, that's the stronger default. ElevenLabs' music generation, where it's available, is polished - but "where it's available" is doing a lot of work in that sentence.

    So treat this node as a test, not a foundation: try one run and watch the console. If your tier returns a clean audio tensor, great - it's a genuinely convenient way to score a clip without leaving ComfyUI. If you hit an auth or tier error, that's the feature saying no, not the node. Check your subscription with the pack's User Info node, and decide whether the convenience justifies the credit cost versus standing up ACE-Step locally.

    CategoryElevenLabs

    Inputs (6)

    NameTypeDefaultDescription
    api_keySTRING
    promptSTRINGUpbeat electronic music with synthesizers
    duration_secondsFLOAT101–300
    modelCOMBOmusic_gen_medium2 options: music_gen_medium, music_gen_large
    input_promptoptSTRING
    temperatureoptFLOAT1.00.1–2

    Outputs (1)

    NameTypeDescription
    AUDIOAUDIO