Join Text
Combine multiple lines into one continuous string. Choose a separator (comma, space, custom), add a per-item prefix or suffix, wrap each item in quotes or brackets, and skip empty lines. Browser-based alternative to Excel TEXTJOIN.
How to join text
1. Paste one item per line
Drop your list into the Input box. Each line becomes one item in the joined output. Pasted CSV cells from a spreadsheet column, a bulleted list with bullets stripped, or any newline-separated list works. See also: Remove Duplicates.
2. Pick separator and wrap
Default separator is comma+space which produces typical English-style lists. Switch to comma for a CSV string, pipe for shell-style lists, semicolon for code, or tab for spreadsheet paste. Custom accepts any string including escape sequences.
3. Optional prefix, suffix, wrap
Wrap each item in quotes for SQL IN clauses or JSON arrays. Add a prefix (such as -- to comment each item) or suffix (such as ; for SQL statements). Combine wrap + separator + prefix to build complex strings in one pass.
4. Click Join, copy or download
The output appears on the right. Copy pastes it into your editor; Download saves a .txt file.
When you need a text joiner
Join patterns reference
| Goal | Separator | Wrap | Result |
|---|---|---|---|
| SQL IN clause | , | Single quotes | 'apple', 'banana', 'cherry' |
| JSON string array | , | Double quotes | "apple", "banana", "cherry" |
| CSV row | , | None | apple,banana,cherry |
| Email recipient list | , | None | apple@x.io, banana@x.io, cherry@x.io |
| Pipe-separated | | | None | apple | banana | cherry |
For the reverse direction (one string to one item per line), use Text Splitter with a separator-based split.
Excel TEXTJOIN parity
Excel TEXTJOIN(separator, ignore_empty, text1, text2, ...) takes a separator, an empty-line flag, and a range of cells, and produces a single joined string. This tool produces the same result from a list pasted as one item per line. The Skip empty lines toggle is the equivalent of TEXTJOIN ignore_empty. The Custom separator field accepts the same separator strings as the spreadsheet function.
The difference is workflow: inside a spreadsheet, TEXTJOIN updates live as the source cells change. Here, the output is a one-shot string for paste-elsewhere use. Pick the workflow that matches what you are doing, not the abstract tool capabilities.
Related tools
Frequently asked questions
How do I join multiple lines into one string?
Paste one item per line into the Input box. Pick a separator (comma, space, semicolon, or custom). Click Join. The output is a single string with each input line joined by the chosen separator.
What separators are available?
Built-in: comma, comma+space, space, semicolon, semicolon+space, pipe, tab, newline. The Custom field accepts any string including special characters (\\n for newline, \\t for tab, or any literal text). Empty separator joins items with nothing between them.
Can I wrap each item in quotes?
Yes. Wrap with options include double quotes ("item"), single quotes (single-quote item), square brackets ([item]), curly braces ({item}), parens ((item)), and angle brackets (
How is this different from Excel TEXTJOIN?
TEXTJOIN in Excel works inside the spreadsheet across a range of cells. This tool works on any list of items pasted as text. For one-off joins (Slack message of a list, code-friendly string, JSON-ready array), this is faster than copying back and forth from Excel. For repeated joins on data inside a spreadsheet, stay with TEXTJOIN.
What does Skip empty lines do?
When on, lines with zero characters (or only whitespace) are removed before joining. The output does not have double-separators where blank lines used to be. Turn off if you specifically want the structure preserved.
Can I deduplicate before joining?
Yes. Remove duplicates strips identical lines before joining. Combined with Sort A-Z, useful for building clean SQL IN lists or JSON arrays from messy input.
Does this tool handle international characters?
Yes. Unicode input (accented characters, CJK, emoji) is joined as-is. The separator is also accepted as Unicode, so you can use a middle dot, an em-dash, or any other character as a delimiter.
Is my pasted text uploaded anywhere?
No. Joining runs in client-side JavaScript. The input list and joined output both stay in the browser tab. We have no upload endpoint and we do not log content. See also: Replace Comma with New Line.
More wordcounter.ai tools
Other tools you might find useful.