The short answer
CSV stands for Comma-Separated Values. A CSV file stores a single table as plain text: one row per line, columns separated by a delimiter — usually a comma, but sometimes a semicolon, tab or pipe. The first line is (by convention) a header row naming the columns.
name,age,city
John,25,New York
Mary,30,London
Koji,41,TokyoThree lines, four columns. Any app that understands text can read it: Excel, Google Sheets, Numbers, LibreOffice, Notepad, VS Code, Python, R, JavaScript, SQL, your browser. That universality is why CSV refuses to die.
A very short history of CSV
CSV predates personal computers. IBM's Fortran compilers in the 1970s already accepted comma-separated input lists. As microcomputers and spreadsheets emerged (VisiCalc, Lotus 1-2-3, eventually Excel), they all settled on CSV as the lowest-common-denominator exchange format. In 2005, RFC 4180 finally documented a common specification, including how to handle commas, quotes and line breaks inside fields.
The key insight: nobody “owns” CSV. Every tool implements it slightly differently. A good CSV viewer is one that copes with the messy real-world variants.
The CSV format, more precisely
- Rows are separated by a newline (
\nor\r\n). - Columns are separated by a delimiter: comma (
,) in English locales, semicolon (;) in much of continental Europe, tab (\t) in what is sometimes called TSV. - Quoting: a field can be wrapped in double quotes to allow commas or newlines inside it. Quotes inside a quoted field are escaped by doubling:
"She said ""hi""". - Headers: the first row is usually a header naming each column, but this is convention, not a rule.
- Types: CSV does not record types. Everything is text — the consumer has to decide whether
42is an integer or a ZIP code. - Encoding: the file doesn't declare an encoding. UTF-8 is the safe modern default; legacy files are often Windows-1252 or ISO-8859-1.
What CSV files look like in practice
Here's a more realistic example with a quoted field and a number with a leading zero (a ZIP code):
sku,name,price,zip
A001,"Widget, deluxe",19.99,94107
A002,"Gadget",12.50,01002
A003,"Sprocket, 2nd gen",8.00,94110Notice how 01002 needs to remain a string — if a viewer interprets it as a number, the leading zero disappears and you lose data. This is the #1 pitfall when opening CSVs in Excel, which does exactly that by default.
Advantages and drawbacks of CSV
Strengths
- Universally supported — every tool reads CSV.
- Human-readable, easy to diff and version-control.
- Compact — no metadata overhead.
- Streamable — a CSV can be read row-by-row without loading the whole file.
- Free of vendor lock-in.
Weaknesses
- No type system — everything is a string.
- No formulas, no styling, no multiple sheets.
- Ambiguous delimiters across locales (comma vs semicolon).
- Encoding has to be guessed.
- Nested or hierarchical data doesn't fit naturally — use JSON instead.
CSV vs Excel vs JSON vs TSV
The short version: CSV is a flat table in plain text. Excel is a rich workbook with formulas and styling. JSON is a nested, typed tree. If you need to move between them, use our browser-based CSV to JSON converter for APIs, or the CSV to Excel converter for spreadsheet work.
| Format | Best for | Notable limits |
|---|---|---|
| CSV | Tabular data exchange between any two systems. | No types, one sheet, no formulas. |
| Excel (.xlsx) | Spreadsheets with formulas, styling, charts. | Binary, ~1M rows/sheet, vendor-specific quirks. |
| JSON | APIs, config, nested or hierarchical data. | Verbose for flat tables, no trailing commas. |
| TSV | CSVs where data contains commas. | Same weaknesses as CSV, less universally handled. |
How to create a CSV file
You have three practical options:
- Export from a spreadsheet: in Excel or Google Sheets, File → Export → Comma-separated values (.csv).
- Write it by hand in any text editor — save with a
.csvextension. Good for small test files. - Generate it programmatically — most languages have a built-in CSV writer (Python's
csv, JavaScript's PapaParse, R'swrite.csv). Or use our online CSV creator to build one row-by-row in your browser.
How to open a CSV file
The fastest way is to drop it into an online CSV viewer that parses it locally in your browser. See our full guide on how to open a CSV file online for step-by-step instructions on Mac, Windows, Linux, iOS and Android.
Try it with your CSV
Drop a file here to view it instantly — no upload, no signup.
Common pitfalls with CSV
- Leading zeros: Excel converts
01002to1002. Use a tool that preserves strings. - Dates: the same
04/05/2026means April 5 in the US and May 4 everywhere else. Prefer ISO 8601 (2026-04-05). - Delimiter mismatch: opening an English CSV in a French Excel puts every row in one column. Re-save with a semicolon, or use a viewer that auto-detects.
- Encoding: non-ASCII characters come out garbled when UTF-8 is read as Windows-1252 (or vice versa). Prefer UTF-8 with a BOM if Excel-on-Windows is a target.
- Large files: a 500-MB CSV will freeze Excel but is fine for a browser-based, virtualised viewer.
Frequently asked questions
- What does CSV stand for?
- CSV stands for Comma-Separated Values — a plain-text format where each line is a row and each column within a row is separated by a comma (or sometimes a semicolon or tab).
- How do I open a CSV file?
- The easiest way is to drop it into a browser-based viewer like CSV Viewer Online. You can also open CSVs with Excel, Google Sheets, Numbers, LibreOffice Calc, or any plain-text editor.
- Is a CSV file the same as an Excel file?
- No. An Excel file (.xlsx, .xls) is a compressed binary format that supports formulas, formatting, multiple sheets, charts and images. A CSV is a plain-text file with just raw tabular data — no formulas, no styling, one table per file.
- Is CSV still relevant in 2026?
- Yes. Despite its age, CSV remains the most widely supported format for exporting and importing tabular data. Every spreadsheet, database and analytics tool reads and writes CSV. For APIs, JSON tends to replace it — but CSV is still unbeatable for spreadsheets, ETL jobs and human-readable data dumps.
- What is RFC 4180?
- RFC 4180 is the informational Internet standard (published in 2005) that specifies the "common format and MIME type for CSV files". It defines rules for field separators, quoting, line endings and headers. Real-world CSVs often deviate from it, which is why robust parsers need to be tolerant.
- Can a CSV file contain commas in the data?
- Yes — the convention is to wrap such fields in double quotes. For example: John,"Smith, Jr.",42. Quotes inside quoted fields are escaped by doubling them: "She said ""hi""".