ComfyUI Node

Join Strings

The plain two-input concatenation node

By wutipong·Created 3 years ago·Updated about a year ago· 2
Join Strings
    • TEXT
    text1
    text2

    This is the odd one out among the four TextUtils nodes - the other three all deal with lists, this one doesn't touch lists at all. Join Strings takes exactly two strings and sticks them together. That's it. It's the plain glue node for when you've got two pieces of text - a prefix and a value, a style tag and a subject, a folder path and a filename - and just need them as one string.

    How it works

    Literally text1 + text2. Python string concatenation, nothing more. No separator, no space, no formatting - whatever you put in text1 is immediately followed by whatever's in text2.

    That "no separator" part is the one thing worth internalizing: unlike this pack's other join nodes, there's no separator field here at all. "cat" + "dog" gives you "catdog", not "cat dog". If you want a space, comma, or anything else between the two pieces, you have to put it in yourself - a trailing space on text1, or a leading one on text2.

    Inputs and outputs

    • text1, text2 - both plain STRING fields with empty defaults. Unlike Join String List and Join N-Element of String List, neither of these is forceInput - you can type straight into the widgets or wire something in, either works.
    • Output: TEXT - the concatenated result, text1 then text2, in that order.

    How to install it

    Part of the same small pack as the other TextUtils nodes:

    • ComfyUI Manager: search "ComfyUI-TextUtils", install, restart.
    • Manual:
      cd ComfyUI/custom_nodes
      git clone https://github.com/wutipong/ComfyUI-TextUtils
      
      then restart.

    Nothing to install beyond the clone - no requirements.txt in the repo, no models, just standard-library Python. There's also no README file in the repo at all; this node's behavior is confirmed directly from its source rather than from documentation that doesn't exist.

    Common issues & troubleshooting

    Missing space or punctuation between the two strings. This is the one people hit immediately - the node genuinely does not add anything between text1 and text2. If your output reads like two words mashed together, that's expected; add the space or comma into one of the inputs yourself.

    Need to join more than two strings. This node is fixed at two inputs - it's not built for variable-length concatenation. Chain a second Join Strings node off the output if you need a third piece (or a fourth, and so on), or reach for Join String List from the same pack if you're actually working with a list of items rather than two fixed pieces.

    Order confusion. text1 always comes first in the output, text2 second - if the result reads backwards from what you expected, check which input each wire actually lands on.

    Categorytext utility

    Inputs (2)

    NameTypeDefaultDescription
    text1STRING
    text2STRING

    Outputs (1)

    NameTypeDescription
    TEXTSTRING