csvkit.org
CSV (Comma-Separated Values) utilities, in the browser
Say hi →

Split a CSV Column

by delimiter · regex · fixed widths · character position · custom names

Break one crowded column into several usable ones — full_name into first and last, 2026-03-14T09:12:00Z into date and time, city, country into two fields, a fixed-width code into its parts. New columns land right where the original was, so the rest of your file keeps its shape.

split column
Or drop a .csv file here, or
ready

How to split a column

  1. Paste the CSV or drop a file, then choose the column to split.
  2. Pick a method and fill in the value box — see the table below for what it expects.
  3. Name the new columns if you don't want name_1, name_2.
  4. Copy or download. The number of new columns matches the row that split into the most parts; shorter rows get blanks.

What to put in the value box

Use max parts for names and addresses

Splitting full_name on a space gives three columns for "Ada King Lovelace" and two for everyone else. Set max parts to 2 and everything after the first space stays together in the second column — so first_name and last_name stay aligned and no data escapes into a third column that's empty for 95% of your rows. The same trick keeps the remainder of an address in one field.

FAQ

Can I split into rows instead of columns?

Different operation — split into columns here, then use Unpivot to turn those columns into one row per value.

The original column disappeared.

By design — tick keep original column to retain it alongside the new ones.

How do I do the reverse?

Combine columns joins several columns back into one, with a separator or a template.

My regex isn't working.

The status line shows the engine's error when a pattern is invalid. Note that the pattern is used as a split separator, so capture groups aren't inserted — use plain character classes.

Privacy

100% client-side. No upload. See the privacy policy.