We use cookies and similar technologies to enhance your browsing experience, analyze site traffic, and personalize content and ads. By clicking "Accept", you consent to our use of cookies. Learn more in our Privacy Policy.
by Cosmovex
View CSV as sortable table, convert CSV to JSON, JSON to CSV. Supports comma, semicolon, tab, and pipe delimiters.
CSV Viewer & Formatter loads a CSV file or pasted text and renders it as a clean, sortable table so you can actually read your data instead of squinting at comma-separated lines. It handles the messy parts that break naive parsers: quoted fields containing commas, embedded line breaks, escaped quotes, and the wrong delimiter being detected. You can re-pick the delimiter (comma, semicolon, tab, or pipe), sort by any column, and see exactly how many rows and columns parsed.
When the table looks right, convert it to JSON in one step, either as an array of objects keyed by the header row or as an array of arrays. Everything runs in your browser. The file never leaves your machine, so you can paste exports from a production database, a billing system, or a CRM without worrying about where the data ends up. It is meant for the quick, everyday task of opening a CSV, confirming it parsed correctly, and getting it into a shape you can use.
Drop in a file or paste text, and the tool parses it according to RFC 4180 rules, then displays the result as a table with the first row treated as a header.
Key features:
; (because the comma is a decimal separator) and database dumps frequently use a tab. Switch the delimiter and the table re-parses instantly."Smith, John" stays as one cell, and "She said ""hi""" correctly becomes She said "hi".2 comes before 10.Because parsing happens locally, large pastes work without a network round-trip, and nothing is logged or uploaded.
The classic reason a CSV looks broken is a comma inside a value. Consider this file:
id,name,city,amount
1,"Doe, Jane","Portland, OR",1250.00
2,Lee,Austin,980.50
A tool that splits on every comma turns row 1 into six columns and misaligns everything after it. Proper parsing respects the quotes and keeps Doe, Jane and Portland, OR as single cells, giving you a clean four-column table.
Convert that to JSON as objects and you get:
[
{ "id": "1", "name": "Doe, Jane", "city": "Portland, OR", "amount": "1250.00" },
{ "id": "2", "name": "Lee", "city": "Austin", "amount": "980.50" }
]
Note that values come through as strings by default. CSV has no type system, so 1250.00 is text until you decide to coerce it. If your downstream code expects numbers, cast them explicitly rather than assuming the parser guessed right.
; and the importer assumed ,. Re-pick the delimiter here and read it correctly.A few things that trip people up:
a,,c is three fields with an empty middle value, which is different from a row that simply has fewer columns. Ragged rows usually signal a quoting bug earlier in the file." can make the parser swallow the rest of the file as a single field. If the row count looks far too low, search the source for a lone quote.02139 or an ID like 100000000000000001 is safe as a string. Be careful before coercing to a number, which can drop the zero or lose precision.id will not match, the BOM is a likely culprit.CSV is a convention more than a strict standard, but RFC 4180 describes the common rules: records separated by line breaks, fields separated by commas, and any field containing a comma, a quote, or a newline wrapped in double quotes with internal quotes doubled ("").
What CSV does not define is just as important:
true, 42, and 2026-01-01 carry no type information.This is why a viewer that exposes the delimiter, respects quoting, and shows row and column counts saves real time: it makes the implicit choices visible so you can correct them instead of guessing.
Paste or load your CSV, confirm it parsed into the right table, then export to JSON. You can get an array of objects (keyed by the header row) or an array of arrays if you prefer positional data.
The delimiter is probably not a comma. Files from European locales often use semicolons and database dumps often use tabs. Switch the delimiter and the table will re-parse correctly.
Yes. A value like "Portland, OR" stays in one cell because the parser respects double quotes per RFC 4180, including doubled quotes ("") used to escape a literal quote.
No. Parsing and conversion run entirely in your browser, so the file never leaves your device. That makes it safe for exports from production systems.
Comma, semicolon, tab, and pipe. You can override auto-detection at any time if the file used a different separator than expected.
CSV has no types, so every value is text by definition. If your code needs real numbers or booleans, cast them explicitly after export rather than relying on a guess.
Yes. Click any column header to sort. Columns that contain numbers sort numerically, so 2 comes before 10 instead of being ordered as text.
The file likely starts with a byte-order mark (BOM) from the program that saved it. It attaches an invisible character to the first header key, which can break key matching downstream.