PasteCleanly / Lists & data

Convert CSV and TSV

Change a table’s separator or pull out one column without splitting values like “New York, NY.”

Text and opened files stay in this tab. How privacy works

Try a sample

Input
Name,City
Mia,"New York, NY"
Noah,Paris
Result
Name	City
Mia	New York, NY
Noah	Paris

Paste the table or choose Open file to load a local .csv or .tsv. Select the source separator under From and the output separator under To. Use the download button to save the result with the corresponding extension.

Extract one column

Enter its position starting at 1. Select Skip header if you do not need the column name. If a record has fewer fields than requested, the output keeps an empty field for that record and reports how many are missing.

Keep quoted cells intact

Quoted separators, doubled quotes, and line breaks inside quoted cells stay in the field. The tool reports malformed quoting instead of guessing. Spreadsheet apps may interpret imported values as formulas or dates; use their text import settings when you need literal data.

A practical guide to converting CSV and TSV

Identify the separator before converting

The source and output settings describe different things. From tells the editor how to split your original records. To tells it what to put between fields in the result. If you paste semicolon-delimited text and leave From set to Comma, the converter may find just one field per record and return a result that looks plausible but has the wrong columns. A wrong separator does not always produce an error.

Start with a header and two representative records. If the header looks like sku;city;quantity, try Semicolon. When text comes straight from a spreadsheet, the characters between cells are often tabs, not a series of spaces. Copying the same line into the invisible character inspector can help distinguish a tab from aligned spaces. Plain text copied from a PDF may contain neither a stable separator nor a reliable row structure; do not expect a delimiter converter to reconstruct the original table.

Choose the target separator from the receiving application's import options. TSV can be convenient for pasting into a worksheet. CSV is common for file imports, but a particular importer may expect a comma or a semicolon. The filename alone is not enough to tell which one.

Try a record containing a comma and a quote

This input has three fields per record. The comma inside the city is data, not a separator. The doubled quotation marks inside the last field represent one literal quotation mark on either side of the word urgent.

sku,city,note
    0017,"Portland, OR","Mark ""urgent"""
    0042,Leeds,"Meet after lunch"

Paste the sample with From set to Comma and To set to Tab. The output separates the three fields using tabs. Portland, OR can appear without surrounding quotes in the TSV result because a comma is not its delimiter. The note still needs quoting because it contains literal quotation marks. Do not treat visible differences in quoting as changed values until you compare the fields after importing.

Now switch To to Semicolon. You should still see three columns if you load the new output into an importer configured for semicolons. Change From only if you paste a new source in that format. If you are comparing two exports, keep each original file and note which source setting you used. That makes it easier to repeat the conversion without accidentally parsing a tab-delimited result as comma-delimited input.

Try this sample in the converter

Keep line breaks that belong inside a cell

A file can contain more visible lines than it has records. A quoted delivery note, for example, can contain one instruction per line. Those physical lines belong to the same cell, so the converter will keep them together when it changes the separator. In this sample, the record starting with 0017 spans two lines after the header:

sku,note
    0017,"Leave at reception.
    Call on arrival."
    0042,Use the side entrance

Do not run a line-break remover or a line sorter over this input before parsing it. Removing every break would erase the distinction between records; sorting the physical lines could split the quoted field. Convert the structured data first. If a destination cannot read quoted multiline values, decide how that destination wants them represented and change the field values deliberately in a spreadsheet or another tool that understands rows and columns.

The converter reports an unclosed quoted field instead of guessing the intended boundary. A reported record number refers to the data record, which can differ from the line number in a text editor. When an error follows a multiline note, inspect the closing quote and the next separator before attempting a broad cleanup. Preserve the original export so you can recover its exact wording.

Extract a column without dropping missing records

Column numbers start at one. A table with sku,city,note has the city in column 2. Enter 2 under Column, then choose whether to keep the header. Skip header simply skips the first parsed record. It does not detect labels for you, so leave it unchecked if the first row is already data or if the destination requires column names.

Consider an export that contains a row with an SKU but no city field. The result keeps an empty field for that record and reports it as missing instead of silently moving later records up. A record that contains an explicit empty city still occupies its place, but is different from one that has no second field. In a single-column export, empty fields may appear as two quotation marks so a receiving parser can distinguish an empty value from the absence of a record.

If you only want a plain list of nonempty cities, first check the extracted output and decide whether dropping blanks is appropriate. Then open the list formatter for numbering or joining simple entries. If the selected values can contain quotes or internal line breaks, keep them as a delimited column until you know how the receiving tool handles that syntax.

Keep leading zeros and dates as data

Delimiter conversion does not determine whether 0017 is a quantity or an identifier. The result keeps those characters. A spreadsheet can still display 17 after opening the file if it automatically assigns a numeric type. It may also reinterpret dates, decimal commas, very long digit strings or values that look like scientific notation.

If the values must stay literal, use the spreadsheet's import flow and set the relevant columns to text before loading the full file. Inspect one identifier with leading zeros, one ambiguous date and one value from the end of the export. Compare the underlying imported value rather than relying only on the way the cell looks. If the output is headed to an application, confirm whether it expects text identifiers or numbers in its own schema.

Also check any fields that begin with a character that spreadsheet software may treat as the start of a formula. Quoting a CSV field is not the same as instructing a spreadsheet to import it as text. The converter may flag formula-like values, but it does not rewrite them. For data from an unfamiliar source, use a controlled text import and follow the receiving application's guidance.

Diagnose a result with the wrong columns

If the preview seems to contain only one column, check the source separator. A delimiter mismatch is particularly easy to miss when a short sample contains one value per row. Include a record with at least two populated fields and a header if you have one. If the source has both commas and semicolons, examine which punctuation actually separates fields and which appears inside quoted values.

If the conversion fails near a quote, verify that the entire field is quoted and that a literal quote inside it is doubled. For example, an input field containing 12" pipe needs a properly quoted representation in a comma-delimited file. Putting loose quotation marks in an unquoted field can produce an error. Do not fix the file by replacing every quotation mark, because those characters may be protecting a separator or an embedded line break.

If the result looks shifted only after import, compare the output in a plain text viewer with the destination's chosen delimiter. Check the selected columns and the row near the first mismatch. Convert a small subset again after correcting the source or import settings. Once the subset loads as expected, repeat the same conversion on the complete export.

Choose TSV, Markdown or JSON for the right job

Use this page when you still need a delimited table, for example when switching an export from commas to tabs or extracting a column by position. Use the CSV and JSON converter if a consuming program needs objects with named fields rather than delimited rows. Check how it uses headers and how your destination interprets empty values before you import the output.

For a ticket or README, use the CSV to Markdown tool to create a readable excerpt. A documentation table is not a faithful data exchange format for every dataset. Show only the columns and example records the reader needs, and keep the source CSV separately if anyone must reimport it. Check the Markdown preview for pipes or line breaks inside cells.

When the source is really one value per line, changing a table delimiter may not be the job at all. A line-based tool can remove exact repeats or add numbering without inventing columns. The guide to preparing lists and tables shows how to decide where the boundary lies and which checks to make before sharing the result.

Verify a small export before sharing the full file

Pick a few records with different properties: a normal row, a quoted field containing the source separator, an empty value and a leading-zero identifier. Convert just that sample. Import the output in the same way that the recipient will, using the new separator explicitly rather than relying on detection. Check the number of records, the width of the table and the actual values under each header.

Then look at the first and last record in the full output. This catches a selected header removed by mistake or an incomplete final row after copying. A successful conversion message indicates that the text could be parsed under the chosen options. It does not confirm that every row has the same number of fields, that a column is the correct one, or that the recipient's software will accept the file.

When handing off the result, include the delimiter, whether the first record is a header and which fields are intended as text. Save the original separately. If the recipient wants a different separator later, start from that original or from a verified export rather than repeatedly converting an already edited copy.