Column Split and Combine

Split one CSV column into several by a separator or a fixed width, or join columns into one.

Files stay on your device No sign-up Free to use
How this works

The tool runs in this browser. Your file or text is not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

Privacy details

Transform columns controls

Drop your CSV file here

or choose one from your device

One UTF-8 CSV or TSV file. Use either this or the pasted text, not both.

    Paste the rows to change, or leave this empty and choose a file. Values are kept exactly as they appear in the text.

    What to do

    Without a names row, columns are addressed by their 1-based position such as 2.

    Its heading or its 1-based position. Used by the split mode.

    At most 20 parts per row. In the split mode, anything beyond the last part stays in that part.

    When this is on, the new columns are placed next to the column that was split. Turn it off to replace that column.

    Headings or 1-based positions, in the order to join them, separated by commas. Used by the combine mode.

    Used by the combine mode.

    A row such as Ada,,Bristol joins as Ada Bristol instead of Ada Bristol.

    Turn this off to replace the joined columns with the single combined column.

    A cell whose first visible character is = + - or @ receives an apostrophe, so a spreadsheet reads it as text. The prefix changes the stored value.

    More options

    One character, used when the separator choice is Another character.

    Used by the fixed-width split. A width of 3 turns ABCDEF into ABC and DEF.

    How to use Column Split and Combine

    1. Paste the rows or choose a CSV file. Values are kept exactly as they appear in the text.
    2. Pick Split one column or Combine columns, then name the columns to work on by heading or by their 1-based position.
    3. For a split, choose the separator or a slice width, and decide whether the original column stays.
    4. Press Transform columns, check the preview, then download the new CSV.

    Example: Column Split and Combine

    Split a product code into its three parts while keeping the original column.

    You add
    Pasted text name,code with the rows Ana,EU-01-7 and Lee,US-22-9. What to do: Split one column. Column to split: code. How to split: At a separator. Separator: Dash. Parts to keep: 3. Keep the original column: on.
    You get
    The page reports three parts across two rows and lists the columns name, code, code_1, code_2 and code_3. The download holds the lines name,code,code_1,code_2,code_3 then Ana,EU-01-7,EU,01,7 and Lee,US-22-9,US,22,9.

    Options

    At a separator
    Each value is cut wherever the separator appears. The widest row in the table decides how many output columns are written, and a shorter row keeps empty cells for the positions it does not reach.
    Into fixed-width slices
    Each value is cut every N characters. A value longer than the number of parts allows keeps the whole remainder in the last part instead of dropping it.
    Combine columns
    The listed columns are joined in the order you give them, with the text you pick between the values. Skipping empty cells keeps a row such as Ada, , Bristol from gaining a double space.
    Protect spreadsheet formulas
    A value or heading whose first visible character is =, +, - or @ receives an apostrophe in the download, so a spreadsheet reads it as text rather than running it.

    Supported inputs and limits

    Paste up to 20,000,000 characters or choose one UTF-8 CSV or TSV file up to 20 MiB, with 100,000 rows of data, 500 columns and at most 2,000,000 cells. Blank lines are skipped, a row holding more values than the names row widens the table with column_N names, and a repeated name gains a number suffix so every column stays distinct. The result is written as comma-separated CSV unless you chose another delimiter for reading, the separator for a split or join is one of the listed characters, and the output is capped at 32 MB. Formula protection is on by default and the prefix changes the stored value.

    Where your input is processed

    This tool processes your input in this browser. Your text and files are not uploaded to UseFreeTools. Check this tool's limits for anything it may save on your device.

    What the new column names are built from

    Each part is named after the column it came from and its position, such as code_1 and code_2. Those names are checked against every other column in the result before the table is written, and a clash is resolved with a number suffix you can see in the report.

    Questions about Column Split and Combine

    What happens to a value with more parts than I allowed?

    In a separator split, everything after the last allowed separator stays in that last part. In a fixed-width split, the last slice keeps the whole remainder of the value.

    Why did a split column come out as code_1_2?

    The table already had a column called code_1, so the new name took the next free number rather than creating two columns with the same heading. Every renamed column is listed under the preview.

    Can I keep the column I split?

    Yes. Keep the original column is on by default, and the new parts are placed directly after it. Turn it off to replace that column with the parts.

    Is my file uploaded?

    No. The file is read in this browser, the new table is built there, and the download comes from that data on your device.

    Project manager: Tony Hines · Content updated 4 October 2026 · Report a problem