CSV Tools Your file never leaves your computer.

What is a CSV file?

A CSV file is a plain text file that stores a table. Each line is one row, and the values in that row are separated by commas — which is where the name comes from: comma-separated values. There is no formatting, no formulas and no multiple sheets. That simplicity is the point: almost every database, spreadsheet and web application can read and write CSV, which makes it the common language for moving data between systems that otherwise have nothing in common.

What a CSV actually looks like inside

Open one in a text editor rather than a spreadsheet and you will see the whole format at once:

name,city,zip
Ada Lovelace,London,01234
Grace Hopper,New York,10001

The first line is usually a header naming each column, though nothing in the format requires it. Every following line is one record. That is the entire specification in practice — which is both why CSV is everywhere and why it goes wrong so often.

Why CSV files break

The format has no way to describe what a value means. A CSV cannot say "this column is text" or "this is a date in day-month-year order". It only stores characters, and the program reading the file guesses the rest.

That guessing is the source of nearly every CSV problem people hit. A zip code of 01234 becomes the number 1234 and loses its leading zero. A long account number turns into 1.23457E+14 in scientific notation. A product code like 3-10 becomes the 10th of March. None of these are corrupt files — they are correct files being interpreted by a program making an assumption the format could not contradict.

The other classic failure is the comma itself. If a value contains a comma, as addresses and full names often do, it has to be wrapped in quotes so the reader knows the comma is data rather than a separator. Files that were assembled by string-joining rather than by a real CSV writer frequently miss this, and every row after the offending one shifts by a column.

Commas are not always the separator

Despite the name, plenty of files called .csv use semicolons or tabs instead. This is mostly regional: in countries where the comma is the decimal separator, writing 1,5 for one and a half, Excel exports with semicolons to avoid the ambiguity.

A tab-separated file is usually given the .tsv extension but behaves identically. Any competent reader detects the separator rather than assuming a comma, which is why the same file can open perfectly in one program and as a single mangled column in another.

Encoding, and where the strange characters come from

A CSV stores characters, but it does not record which character encoding it used. If a file containing José is written as UTF-8 and then read as Windows-1252, the name arrives as José. This is the cause of almost every "why does my export have weird symbols" question.

Some programs write a byte order mark at the start of a UTF-8 file to signal the encoding. It helps Excel, but readers that do not expect it can show the first column header with an invisible character stuck to the front, which then fails to match when the file is imported elsewhere.

When to use CSV, and when not to

Use CSV for moving tabular data between systems, for exports and imports, for archiving something that must still be readable in twenty years, and for anything that needs to work with tools that were not designed together.

Do not use CSV when you need formatting, formulas, several sheets, or reliable types. That is what XLSX is for. Do not use it for nested or hierarchical data either — a CSV is flat by definition, and JSON handles structure far better. The right move is often to convert: keep the CSV as the interchange format and convert to whatever the destination actually wants.

Convert a CSV now

Every converter below runs inside your browser — the file is not uploaded anywhere. See the full free CSV converter toolkit for the rest.

Common questions

Is a CSV file the same as an Excel file?

No. A CSV is plain text with no formatting, formulas, colours or multiple sheets — it holds only values. An Excel .xlsx file is a compressed archive of XML that stores types, formulas, styling and many sheets. Excel can open and save CSVs, which is why they are often confused, but saving a workbook as CSV discards everything except the values on the active sheet.

Can I open a CSV file without Excel?

Yes. Because it is plain text, any text editor will show a CSV exactly as it is stored. For anything beyond a few rows a viewer that renders it as a table is easier to read, and Google Sheets, LibreOffice Calc and Numbers all open CSVs directly.

Why does my CSV open as one long column?

The program is splitting on a different character than the file uses — usually the file is semicolon-separated and the reader assumed commas, or the reverse. The data is intact; only the interpretation is wrong. A converter that detects the separator rather than assuming one avoids this entirely.

Does a CSV file have a row limit?

The format itself has no limit — a CSV can hold billions of rows, because it is only lines of text. The limits come from whatever opens it. Excel stops at 1,048,576 rows, so a larger CSV is silently truncated when opened there, which is one of the more dangerous CSV failures because it looks like it worked.

Are CSV files safe to open?

The data itself is inert plain text. The risk is CSV injection: a value beginning with =, +, - or @ can be treated as a formula when opened in a spreadsheet, which some applications will execute. Treat CSVs from untrusted sources the way you would any untrusted file, and be wary of cells that begin with those characters.

All CSV tools