How to Use CONCATENATE in Excel (Combine Text + Free Generator)

Joins several text strings into one text string.

Generated Formula
=CONCATENATE()

Learning Resources

Want to master Excel? Check out this Top-Rated Course.

How to Use CONCATENATE in Excel — Step by Step

The CONCATENATE function combines text from multiple cells into one. It is indispensable for formatting full names, building addresses, generating email addresses, and any scenario where you need to merge column values into a readable string.

Step-by-Step Walkthrough: Combine First & Last Names

Suppose you have first names in column A and last names in column B. You want full names in column C.

A (First Name)B (Last Name)C (Formula)Result
JohnSmith=CONCATENATE(A2, " ", B2)John Smith
JaneDoe=CONCATENATE(A3, " ", B3)Jane Doe
BobJohnson=CONCATENATE(A4, ", ", B4)Johnson, Bob

Practical CONCATENATE Examples

Combine first and last name with space:

=CONCATENATE(A1, " ", B1)

Build a full address:

=CONCATENATE(A1, ", ", B1, ", ", C1, " ", D1)

Format a number with text:

=CONCATENATE("Total: $", TEXT(A1, "#,##0.00"))

Generate an email address:

=CONCATENATE(LOWER(A1), ".", LOWER(B1), "@company.com")

Adding Separators and Spaces

To add spaces, commas, or any text between values, include them as separate arguments wrapped in quotes:

  • Space: =CONCATENATE(A1, " ", B1) → "John Smith"
  • Comma + space: =CONCATENATE(B1, ", ", A1) → "Smith, John"
  • Dash: =CONCATENATE(A1, " - ", B1) → "Sales - Report"
  • Line break: =CONCATENATE(A1, CHAR(10), B1) (turn on Wrap Text)

Handling Dates and Numbers

CONCATENATE converts everything to text. Raw dates become serial numbers (e.g. 45678) and numbers lose formatting. Use TEXT() to control the output:

=CONCATENATE("Order date: ", TEXT(A1, "mm/dd/yyyy"))
=CONCATENATE("Amount: $", TEXT(B1, "#,##0.00"))

CONCATENATE vs TEXTJOIN vs Ampersand (&)

FeatureCONCATENATEAmpersand (&)TEXTJOIN
Syntax=CONCATENATE(A1, " ", B1)=A1&" "&B1=TEXTJOIN(" ", TRUE, A1:A5)
DelimiterRepeat between each valueRepeat between each valueSet once
Skip empty cellsNoNoYes (2nd argument)
Range supportNo, cell-by-cellNo, cell-by-cellYes, A1:A5
CompatibilityAll versionsAll versionsExcel 2019+ / Sheets
Best forFixed joins (name, address)Simple 2-3 value joinsLists, variable-length data

Pro Tip: Use TEXTJOIN instead of CONCATENATE when joining a range of cells. TEXTJOIN lets you set a delimiter once and automatically skips blanks — perfect for mailing lists, tags, and report summaries. For simple 2-3 value joins, the ampersand (&) operator is fastest to type: =A1&" "&B1.

Common Errors & Fixes

  • No space or wrong separator between values

    Causes:
    • Forgetting to add a separator string between references.
    • Using a number instead of quoted text for the separator.
    Fixes:
    • Add ", " or " - " (or any separator in quotes) between each pair of values.
    • Always put literal text in double quotes.

Frequently Asked Questions

How do I add a space or separator between concatenated values?

Include a string argument for the separator between each pair of cell references. Use ", " for comma-space, " " for space-only, " - " for dash separators. Example: =CONCATENATE(A1, " - ", B1).

CONCATENATE vs TEXTJOIN — what is the difference?

CONCATENATE joins arguments one at a time, repeating the delimiter between each. TEXTJOIN lets you set a delimiter once and can skip empty cells (TRUE argument). For a range like A1:A10, TEXTJOIN is far simpler: =TEXTJOIN(", ", TRUE, A1:A10).

Why does CONCATENATE show a number without formatting?

Concatenation converts numbers to plain text, losing formatting like decimals and commas. Use TEXT() to preserve formatting: =CONCATENATE(TEXT(A1,"$#,##0.00"), " per unit").

How do I concatenate a date with text?

Wrap the date in TEXT() with a format code: =CONCATENATE(TEXT(A1,"yyyy-mm-dd"), " report"). Without TEXT(), dates appear as serial numbers like 45678. Common formats: "mm/dd/yyyy", "dd-mmm-yyyy", "mmmm dd, yyyy".

Can I use CONCATENATE with more than 3 items?

Yes. Add as many arguments as needed: =CONCATENATE(A1, " ", B1, ", ", C1, " ", D1). Each value and separator must be its own argument. For long lists, TEXTJOIN is easier.

Can I use line breaks in CONCATENATE?

Yes. Use CHAR(10) for a line break in Excel (turn on Wrap Text) or CHAR(13) for carriage return: =CONCATENATE(A1, CHAR(10), B1). In Google Sheets, use CHAR(10) as well.

What is the difference between CONCATENATE and CONCAT?

CONCAT is the modern replacement introduced in Excel 2016. It works the same as CONCATENATE but also supports range references like A1:A5. However, CONCAT does not accept a delimiter parameter — use TEXTJOIN if you need delimiters across a range.

Why is my CONCATENATE formula showing #NAME? or not working?

#NAME? usually means quotes are missing around text strings. Always wrap literal text and separators in double quotes: "Hello", NOT Hello. Also check for extra spaces or commas in the wrong place between arguments.

Related Formulas

Explore related formula generators to solve similar problems

Want to become an Excel Pro?

Stop searching for formulas. Master Excel in 30 days with this top-rated course.

Learn More