All tools

CSV to JSON

Turn CSV rows into JSON objects, every value kept as written. Free, with no account or uploads.

Paste CSV to turn it into JSON

The first row names the keys. Every cell stays text, so codes and IDs keep their leading zeros.

Paste below or drop a text file here · up to 10 MB

CSV/table view need an array of objects. CSV imports keep cells as strings. YAML aliases, merge keys, custom tags and non-string keys must be expanded or converted first. Types/schemas describe one sample and need review.

Results appear here; your source stays intact.
Convert accepts the source format you selected.Ctrl/Cmd + F to find · Ctrl/Cmd + Z to undo · Escape, then Tab to leave the editor

Source, comparison and schema text stay in this tab and clear on refresh. Files are not uploaded. The editor never runs pasted JavaScript. Cancel stops the worker without changing your source.

How it works and help
One workspace. All on your device.
5 million characters · 100 levels · 100,000 values

A little help along the way

Say what you want to do: make it readable (Edit, to format or repair), look through it (Explore), turn it into CSV or YAML (Convert) or compare two (Compare). The page says at once whether your JSON is valid. Under More options every workflow has its tab, with Query to select data and Schema to check a contract. Results stay separate until you choose Use result as source.

Questions people ask

Why are numbers kept in quotes?
Every cell stays text, so 0001 stays 0001 and a postcode or a date is not guessed or rounded. Change the types afterwards where you know what they should be.
What does my CSV need?
Commas between values and a first row of unique, non-empty column names. Every row must have as many cells as the header; quoted cells may hold commas and line breaks.
How large a file can it convert?
Up to 200 columns and 100,000 rows, within 5 million characters. Open the file with Open file or drop it on the page; it is read on your device.

This page is the JSON formatter, opened for this one job; every other tool it has is one press away. Each of its settings is explained on the JSON formatter's own page.