ElevenLabs - Account Info
Check your ElevenLabs character balance before you burn a run
- account_json
- subscription_tier
- character_count
- character_limit
ElevenLabs bills by the character, and the number of characters your account can spend in a month depends entirely on which subscription tier you're on. If you've ever queued a workflow and discovered halfway through that your limit was hit, this is the node that stops you from doing it blind. It hits api.elevenlabs.io/v1/user, pulls your account state, and hands you the numbers.
You feed it an api_key (or leave it blank and let it pick up ELEVENLABS_API_KEY from the environment, like every node in this pack). It returns four outputs:
account_json- the raw response as a string, if you want the full picture.subscription_tier- what plan you're on, as text.character_count- characters used this billing cycle.character_limit- the cap for your tier.
The last two are INTs, which matters more than it sounds. Wire character_count and character_limit into a comparison or a text node and you can gate a workflow - refuse to run a long TTS job when you're at 95% of your limit, or log the ratio to a save node before every batch. It's a config node that earns its keep when you're running unattended.
Why this matters with this specific pack: several nodes here expose options that only higher tiers unlock. The mp3_44100_192 and opus output formats, for instance, are Creator-tier-and-up. AccountInfo is the quick way to confirm your tier actually supports the format you've picked before you queue twenty minutes of generation into a 403.
Installing it
It's one of fifteen ElevenLabs nodes in the ComfyUI API Toolkit pack. Install via ComfyUI Manager (search "API Toolkit") or:
cd ComfyUI/custom_nodes
git clone https://github.com/IxMxAMAR/ComfyUI-API-Toolkit
cd ComfyUI-API-Toolkit
pip install -r requirements.txt
Then restart. The ElevenLabs service needs requests and soundfile from that file; if either is missing, the whole service skips loading and you'll see it flagged in the startup log.
Gotchas
- It's a live API call, so it costs nothing in characters but it does round-trip to ElevenLabs. There's a shared retry helper under the hood that backs off on 429s and 5xx, so transient hiccups generally resolve themselves.
- A 401 means your key is wrong or revoked - the node won't tell you anything more useful than "unauthorized," so check the key first.
- The node re-executes on every queue (the pack sets IS_CHANGED on all API nodes), so the numbers you see are current, not cached from last week.
Worth remembering that ElevenLabs is a closed, metered service - this node tells you what you're spending, it doesn't change the fact that you're spending. For local voice work, the open models (Chatterbox, F5-TTS, Kokoro) have closed the quality gap; use this node when you're already committed to the API and want to stay on budget.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| account_json | STRING | — |
| subscription_tier | STRING | — |
| character_count | INT | — |
| character_limit | INT | — |