Data tools

CSV to JSON

Parse CSV, TSV, or custom-delimited data and convert it to arrays or objects.

Processed locally in your browser. Your input is not uploaded to our server.

0 characters
0 characters

Enter or load data to begin

How to use CSV to JSON

  1. Paste delimited data or open a local CSV, TSV, or text file.
  2. Confirm delimiter, header, trimming, typing, empty-value, and malformed-row settings in preview.
  3. Choose pretty or minified JSON, then convert and download the .json result.

Supported behavior

CSV to JSON parses comma-, semicolon-, tab-, pipe-, or custom-delimited records, including quoted delimiters and quoted newlines. Delimiter auto-detection and the first-row header default can be overridden; generated column names are available when no header exists. Options trim headers or values, skip empty lines, apply safe number and boolean typing, choose empty string or null, and rename or reject duplicate headers. A preview of the first 100 rows reports detected delimiter, dimensions, warnings, and malformed rows. Files over 5 MiB require confirmation before full conversion and use streaming work away from the main interface. Output becomes an array of objects with headers or an array of arrays without them, in pretty or minified JSON. Pasted data and local .csv, .tsv, or .txt files never leave your browser. Inconsistent row lengths require an explicit keep, reject, or generated-column policy, and automatic delimiter or type detection should always be reviewed before export.

  • Auto-detection can be ambiguous for very short or irregular samples.
  • Dynamic typing is deliberately limited to safe numbers and booleans and may not infer domain-specific values.

Examples

                name,score
Ada,9
Lin,8
              

Result: [ { "name": "Ada", "score": "9" }, { "name": "Lin", "score": "8" } ]

                id,note
1,"red, green, blue"
              

Result: [ { "id": "1", "note": "red, green, blue" } ]

Common use cases

  • Convert a spreadsheet export into objects for a test fixture.
  • Turn headerless sensor rows into JSON arrays.
  • Review malformed row counts before migrating a delimited dataset.

Frequently asked questions

Can a quoted field contain a newline?

Yes. Quoted delimiters and quoted newlines are parsed as part of the field.

How are duplicate headers handled?

They are renamed with suffixes by default, or you can reject the input.

What if rows have different lengths?

Choose to keep missing values, reject malformed rows, or include generated columns; the preview reports warnings.

Are numbers converted automatically?

Dynamic typing is off by default and, when enabled, is limited to safe numbers and booleans.