Converting Between CSV and JSON
What this converter does
CSV and JSON describe the same tabular data in two different shapes. A CSV file is a grid: the first line usually names the columns, and every line after that is one record with values separated by a delimiter. JSON wraps that same grid in structure — most commonly an array where each row becomes an object whose keys come from the column names. This tool reads whichever format you paste, works out which one it is, and rewrites it as the other.
The conversion runs in both directions. Feed it CSV and you get an array of JSON objects; feed it JSON and you get delimited rows back. Because detection is based on the actual content rather than a file extension, you can paste a snippet and go straight to the result.
When to reach for it
The most frequent job is bridging spreadsheets and APIs. Export a sheet as CSV and turn it into the JSON payload an endpoint expects, or take a JSON response and lay it out as rows you can open in Excel or Google Sheets. It is equally useful for seeding a database from a CSV dump, or for sanity-checking an unfamiliar dataset by viewing it in whichever shape you read more easily.
A check line under the editors confirms the input is valid and shows its row and column counts and size — or, when something is off, the line and column to fix — so you can tell at a glance whether the output matches what you expected.
Example: rows to objects
Take a header line name,age,city followed by John,25,Seoul and Jane,30,Tokyo. Converting to JSON produces an array of two objects: {"name":"John","age":"25","city":"Seoul"} and {"name":"Jane","age":"30","city":"Tokyo"}. Each header cell becomes a key, and each data row becomes one object. Run it the other way and those objects collapse back into a header row plus one line per record.
Notes and edge cases
The first row is treated as the header that supplies the keys — turn off "First row is the header" when your file starts straight into data. Delimiters are auto-detected, but you can force comma, semicolon, tab, or pipe when a file is ambiguous. Values that contain the delimiter or line breaks are kept intact through quoting. When JSON holds nested objects, "Flatten nested objects" spreads them into dotted columns such as user.name, and any lists inside are joined with a semicolon. Keep in mind that CSV has no type system, so a number like 25 comes through as a string unless you convert it afterward.