String Concat ๐
ComfyUI Node Guide
- result
This one does exactly what the name says and nothing more: take two strings, glue them together with something in between, get one string back. It's the smallest, most boring node in this whole pack, and that's precisely why it earns a spot - every workflow that touches text eventually needs to stitch two pieces together, and reaching for a full templating node when all you need is A + delimiter + B is overkill.
Where it actually earns its place. Once you've got LLM connectors and a Translator node in the mix, you end up with a lot of loose string outputs floating around a graph - a translated caption here, a hash from StringHash there, a filename prefix somewhere else - and you frequently just need to bolt two of them together before they go into a save path, a log entry, or a prompt. StringConcat is the node you drop in for that, instead of building a whole StringFormat template for a job that's really just "put these two things next to each other."
Inputs that matter. str1 and str2 are both required, multiline text fields, defaulting to empty - either can come from a typed value or a wired connection from any upstream string-producing node. delimiter is optional and defaults to a comma, which is a sensible default for the classic "tag list" use case (str1 = "portrait", str2 = "outdoors", delimiter ", " gives you "portrait, outdoors"), but you can set it to anything: a space, a newline, an underscore for filenames, or an empty string if you just want the two values jammed together with nothing between them.
Output. result - a single STRING, str1 + delimiter + str2. Wire it wherever a text input expects a combined value: a filename field, a prompt input, a log message.
Install. Search "ComfyUI_MieNodes" in ComfyUI Manager, or cd ComfyUI/custom_nodes && git clone https://github.com/MieMieeeee/ComfyUI-MieNodes and restart ComfyUI. No dependencies, no models - this is a plain Python string operation, about as lightweight as a custom node gets.
Troubleshooting. If your output has an unexpected comma or space in it, check the delimiter default - it's a comma by default, and it's easy to forget that's there when you were expecting a clean concatenation. If you need to join more than two strings, this node genuinely can't do it in one step; you'd chain two StringConcat nodes together (feed the result of the first into str1 of the second), or reach for StringFormat instead, which handles up to sixteen values in one node via its {0}, {1}, ... template slots and is the better tool the moment you're joining more than a pair. And if one of your inputs is coming from a node that can output None or an unconnected optional - a connector that failed silently, say - you'll want to trace that upstream, since this node will happily concatenate an empty string in without complaint, which can hide a broken wire elsewhere in the graph rather than surface it.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| str1 | STRING | โ | |
| str2 | STRING | โ | |
| delimiteropt | STRING | , | โ |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| result | STRING | โ |