Merge String
Glue two node outputs into one string
- input1
- input2
- STRING
Merge String takes two inputs and mashes them into one STRING output. That's the entire job - no separator field, no format template, just input1 next to input2. If you want a space, a comma, or a newline between them, you build that into one of the strings yourself before it reaches this node (a trailing space on input1, for instance).
The reason it's worth having: both inputs are typed to accept anything, not just text. Wire in a number, a boolean, another node's output - whatever it is, Merge String stringifies it and joins it with the other side. That makes it a quick way to build a dynamic label or prompt fragment out of two different sources without a dedicated string-formatting node: a fixed prefix plus a value from Weighted Random Choice, or the output of two separate text branches you want combined into one field before it hits a save-image filename or a prompt box.
How it works
It converts both input1 and input2 to their string representation and concatenates them, in that order, with nothing inserted between. Whatever separator behavior you want has to already be baked into one of the two strings.
The inputs and outputs that matter
- input1 - typed
*, default empty. Goes first in the merged result. - input2 - typed
*, default empty. Goes second. - Output - STRING, the two values stuck together.
How to install it
Part of the full LogicUtils pack. Via ComfyUI Manager: search ComfyUI-LogicUtils, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/aria1th/ComfyUI-LogicUtils
then restart ComfyUI. Pure Python string handling, no models, nothing heavy.
Background on the pack: it's written by aria1th, publicly known as AngelBottomless, the trainer behind Illustrious XL - the SDXL anime finetune that displaced Pony Diffusion v6 as the open-source default. LogicUtils is a side project, a set of small utility nodes he built for his own graphs, and it's documented exactly as much as the README says: "Proper documentation is being prepared, however there are too many nodes." That's been true since the repo's last push in early 2026. It's a real, used pack though - it turns up as a listed dependency in complex published workflows next to rgthree-comfy and comfyui-kjnodes - people just figure out each node from its name and defaults, which is what this article does.
Common issues & troubleshooting
The two values are jammed together with no space. That's expected - there's no delimiter option on this node. Add the space, comma, or newline to the end of input1 (or the start of input2) yourself, either as a widget value or through another string node upstream.
Numbers came out looking odd (extra decimal places, True/False instead of 1/0). Since it stringifies whatever type it's given, a FLOAT keeps its full precision and a BOOLEAN prints as Python's True/False, not 1/0. Round or convert upstream first if you need a specific text format.
Wanted to merge more than two things. This node only takes two inputs. For three or more, chain a second Merge String off the output of the first, feeding the third value into its other input.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| input1 | * | — | |
| input2 | * | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |