CSV to JSON Converter
Turn delimited tables into JSON object arrays without uploading your data. Keep values as strings, choose a delimiter and header mode, and save one JSON file per input.
Choose your CSV files
Local processing. One output for each input.
Up to 10 files · 5 MB each · 20 MB total · UTF-8
Or paste CSV text
Up to 5 MB of UTF-8 text. Editing here does not change a file already in the queue.
0 JSON files ready
Files, pasted text, parsing and downloads stay on your device. Clear all, leave this tool or refresh to release the session. No file history is saved.
How to convert CSV
- Choose UTF-8 files or paste text and add it to the queue.
- Check the delimiter and header mode.
- Convert, inspect the result and any changes, then download a file or ZIP.
Keep identifiers and dates exactly as text
CSV does not declare data types. An ID such as 00123, a long account number, the word true and a date all become JSON strings. Empty fields become empty strings. There is no automatic number, boolean or date inference, so leading zeros and large identifiers are not lost.
Headers are case-sensitive and are not trimmed. Blank or duplicate names are rejected instead of overwriting a column. Turn off First row is header for files without headings; the generated names are column_1, column_2 and so on. A header-only file produces an empty JSON array.
Choose the delimiter used by your source
Comma is the default. Semicolon, Tab and Pipe are explicit alternatives; choose Tab for TSV files. A delimiter inside a quoted field is part of its value. Double a quotation mark to include it, and wrap fields containing line breaks in quotes. Unquoted blank records are skipped; quoted empty values remain data.
The parser accepts CRLF, LF and CR record endings. A UTF-8 BOM is removed at the start. Invalid UTF-8, unclosed quotes and inconsistent field counts produce errors with a line or record location. Convert a legacy-encoded file to UTF-8 in its source application before trying again.
Review before importing the JSON
The preview shows up to 20,000 characters; the download contains the complete output within the displayed limits. Each input becomes a separate JSON file, and Download all ZIP packages only completed results. Files are never automatically combined.
Use a schema-aware application if you need typed numbers or dates. These tools preserve table values rather than guessing a schema. JSON output does not make data safe for every downstream application: validate it for the place where you will use it.
Bounded processing, with cancellation and recovery
Up to 10 files, 5 MB each and 20 MB total. Each table is limited to 50,000 data rows, 200 columns, 250,000 cells, 200,000 characters per field and 200 characters per field name. Output is limited to 20 MB per file. The 64 MB result budget pauses a large batch so you can save a ZIP part and release it before continuing.
Parsing runs in a local worker that can be terminated. Cancel discards unfinished output and leaves sources available to retry. Each file has a 20-second processing limit. Invalid files do not prevent other files from completing. Files and pasted text are not uploaded, and analytics excludes the data. Read the privacy policy.
CSV to JSON questions
Does CSV to JSON upload my data?
No. File reading, parsing, preview and downloads run locally. The site does not store a file history. Optional analytics excludes filenames, field names, values and output contents.
Will leading zeros or large IDs be lost?
No. Every CSV value becomes a JSON string. There is no automatic numeric or date conversion. Empty cells become empty strings.
Can I convert CSV without a header?
Yes. Turn off First row is header. The first record stays data and stable field names such as column_1 and column_2 are generated.
Which delimiters and encodings are supported?
UTF-8, with or without a BOM, and comma, semicolon, tab or pipe delimiters. Select the actual delimiter; TSV files need Tab. Unsupported encodings are rejected.
What happens to duplicate headers or uneven rows?
Conversion stops for that file with a clear error. Headers must be non-empty and unique, and every data record must have the expected field count. Other valid files can still complete.
Does a file with only headers work?
Yes. A valid header-only file produces an empty JSON array. An empty file or one containing only blank records is rejected.