Complex Prompt Empty String
The node that outputs nothing on purpose — and why you'll want it
- string
Complex Prompt Empty String has no inputs and exactly one output: a STRING that is, as advertised, empty. That's the whole node. "" in, "" out, nothing happens in between. It sounds like a joke, but it's one of those tiny utility nodes that quietly fixes a whole class of annoying ComfyUI problems.
Why an empty string node exists
ComfyUI is a graph, and graphs don't love holes. There are plenty of situations where you need an explicit blank flowing into a port rather than no wire at all:
- A text input that keeps a stale value from a previous generation, and you want to force it to nothing for this run.
- A required STRING port that won't let you leave it unconnected.
- A branch where an empty prompt is meaningful - some workflows treat a blank text input as "no prompt" rather than "use the last one."
- A conditional route where you're swapping between a real prompt and nothing, and a switch node needs both legs to have a value.
That last one is the killer use case. If you've ever built a workflow with a selector or switch node, you know the pain of one branch carrying a leftover value because there was no clean way to feed it an empty string. This node is the "ground" of text - the text equivalent of wiring a wire to nothing on purpose, except it's explicit and anyone reading your workflow can see the intent.
It's also documentation. A dangling input is a mystery; a node clearly labeled "empty string" tells future-you exactly what that branch was supposed to do.
Inputs and output
info_schema lists no inputs at all - you drop it on the canvas and it's done. The single output, string, is a plain STRING type, so it connects to any text port: a prompt encoder, a text widget's input, another node in this pack. It doesn't care where it lands.
Installing it
You're getting this from the same pack as the rest of the Complex Prompt family, so if you're reading this page you probably already have it. Via Manager, search "ComfyUI Complex Prompt Nodes" and install; manually:
cd ComfyUI/custom_nodes
git clone https://github.com/ArtemKo7v/ComfyUI-Complex-Prompt
cd ComfyUI-Complex-Prompt
pip install -r requirements.txt
Restart ComfyUI after installing. The pack's deps (dynamicprompts, simpleeval) are small and this node doesn't even touch them - it's pure Python, nothing to download.
The honest caveat
For a single empty string you can often just leave the port unwired and let ComfyUI use its default. This node earns its keep in the cases where that doesn't work: required STRING inputs, widgets that hang onto stale values, and conditional branches where a switch needs a concrete value on every leg. It's not glamorous, but when you hit one of those cases it's a two-second fix that removes an entire category of "why is there random text in my output" confusion. Every ecosystem has these boring nodes; this one is done right - zero setup, zero config, exactly one job.
Inputs (0)
No inputs
Outputs (1)
| Name | Type | Description |
|---|---|---|
| string | STRING | — |