All posts

How to Split One CSV Column Into Several (At a Comma, Pipe or Dash)

··3 min read

To split one CSV column into several, pick the column, type the text to split at, and write each piece into its own column. The split CSV column by delimiter tool does this in your browser, the way Text to Columns does in Excel, but it keeps the other columns, lets you name the new ones and counts rows that did not split.

It is useful when an export packs two fields into one cell.

When a list needs this

Scrapers and exports often join fields into one cell: a location as Austin | TX | US, a name and title as Ava Lee - Head of Sales, or tags separated by semicolons. A cell like that cannot be filtered, sorted or used in a segment. Once the pieces are in their own columns, each one can.

Step 1: do it by hand in Excel

Select the column, choose Data, Text to Columns, pick Delimited, tick the separator and finish. Excel writes the pieces into the columns to the right of the original, overwriting anything already there. Insert empty columns first, or the data next to it is replaced without asking.

Excel's wizard has no memory of the number of columns you wanted. A cell with more pieces than the others spills into extra columns for those rows.

Step 2: use the tool

  1. Upload the CSV or .xlsx, or paste the cells with the header row first.
  2. Choose the column to split and type the character or text to split at.
  3. Set the most new columns to make, and name them if you like.
  4. Download the file with the pieces in their own columns.

The cell is cut at each place your text appears, from left to right, until the number of new columns is reached. Spaces around each piece are trimmed. Type \t to split at a tab. The original column is kept only if you tick the option.

The last column keeps the rest

With a limit of 3 on Austin | TX | US | Remote, the result is Austin, TX and US | Remote. Nothing is dropped, and the tool shows how many rows hit the limit. The limit is 20 new columns at most. A cell with no delimiter fills only the first new column and leaves the rest blank.

Names, addresses and several emails in a cell

A fixed-text split does not understand what the pieces mean. For other cases:

What this cannot do

  • It cuts at a fixed piece of text only, with no pattern matching.
  • A delimiter inside quotes in a cell is treated like any other.
  • At most 20 new columns; the rest stays in the last one.
  • Only the first sheet of a workbook is read.

For the steps to run before an import, see clean CSV columns before an import.

Verify the list next

When the columns are right, upload the list on the verify page: the first 100 email checks are free with a Google sign-in, no card. Each address comes back valid, risky or invalid with a reason, and nothing is sent to anyone on the list. For larger or recurring lists, see bulk email verification, list cleaning and pricing.

Split your column now

Upload the file to split CSV column by delimiter.

Common questions

How do I split one column of a CSV into several columns?

Choose the column and the text to split at, such as a comma, pipe or dash, and write each piece to its own column. In Excel this is Data, Text to Columns.

What if some rows have fewer pieces?

The missing cells are left blank. A good tool also counts the rows that had nothing to split.

Can I split at more than one character?

Yes, as long as you split at that exact text. A space and a dash together is one delimiter.

What if the last piece contains the delimiter too?

With a limit on the number of columns, the last column keeps whatever is left, so nothing is lost.

Can I split a full name or an address this way?

You can split a name at the space, but names with middle names or suffixes need a name splitter. Addresses need a tool that understands street, city and postcode.

Check your list before you send

Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.