TextArray
100% local

CSV ⇄ JSON converter

Convert CSV data to JSON and back, or turn it into a Markdown or HTML table.

Input
Output

CSV ⇄ JSON converter

Paste a CSV export and get back a JSON array of objects, or paste JSON and get CSV. The converter runs both ways, and it also turns the same table into a Markdown table for a README or a pull request, or an HTML table you can drop straight into a page. Typical jobs: turning a spreadsheet export into fixture data for tests, checking what an API response looks like as a table, or pasting a client's semicolon-separated export into a document.

The CSV side follows RFC 4180 properly, which is where most quick converters give up. A field wrapped in double quotes may contain the delimiter, doubled "" quotes, and even line breaks — all of it survives the round trip intact. Leave the delimiter on automatic and the tool samples your data and picks the character that produces the most consistent rows, so comma, semicolon, tab and pipe files all work without configuration. When the guess is wrong, choose the delimiter by hand.

"First row is headers" turns the header into JSON keys; switch it off and you get an array of arrays instead. Blank and repeated column names are given a name of their own rather than being silently dropped, so no column disappears. "Prettify JSON" indents the output with two spaces for reading; without it the result is minified. Going the other way, "Quote all fields" wraps every field, not only the ones that need it. Every value stays a string, so leading zeros in postcodes and product codes are not eaten.

Everything runs in your browser and the data never leaves your device, which matters when the export holds customer records or internal data. Invalid JSON is reported calmly, with the parser's own message and the position of the problem, instead of a blank output. Copy the result, download it as a .txt file, or move it back into the input to chain another step.

FAQ

Which CSV dialects does it read?
Comma, semicolon, tab and pipe separated files, with automatic detection. Quoted fields follow RFC 4180, so doubled quotes, embedded delimiters and line breaks inside a quoted field are all read correctly.
Why are the numbers strings in the JSON?
CSV carries no types, and guessing them corrupts data — a postcode like 01234 would silently become 1234. Values are kept as strings; convert the fields you know are numeric in your own code.
What JSON can it convert back to CSV?
An array of objects, an array of arrays, or a single object. Nested objects and arrays are written as JSON inside the cell rather than [object Object]. Anything without a table shape returns a message explaining what to provide.
Can it produce a Markdown or HTML table?
Yes. Pick the direction: CSV → Markdown pads the columns and escapes pipe characters, and CSV → HTML escapes the markup and builds thead and tbody.
Is my data uploaded anywhere?
No. The conversion runs entirely in your browser and your CSV or JSON never leaves your device.