Step by step

  1. Open CSV to JSON

    Paste your CSV or upload a .csv file.

  2. Check the options

    Keep “First row is a header” on to get objects with named fields. Leave the separator on automatic unless your file is unusual.

  3. Convert

    Press Convert to JSON. Numbers and true/false values become JSON numbers and booleans; everything else stays text.

  4. Copy or download

    Copy the JSON or download it as a .json file.

Example

Before
name,age
Ada,36
Alan,41
After
[
  {
    "name": "Ada",
    "age": 36
  },
  {
    "name": "Alan",
    "age": 41
  }
]

With a header row and number detection on (the defaults).

Numbers, zeros and big IDs

Values like 36 or 4.5 become numbers. Values with leading zeros (00123, phone numbers, ZIP codes) stay as text so the zeros aren’t lost, and very long numbers stay as text so no digits are rounded away.

Commas, quotes and semicolons

A field that contains a comma, quote or line break must be wrapped in double quotes in CSV — the converter follows that standard (RFC 4180). Spreadsheet apps in many European locales use semicolons instead of commas; automatic detection handles both.

Starting from Excel

For an .xlsx workbook, use Excel to JSON or Excel to CSV directly — they read the values Excel saved, including dates, without opening Excel.

Try CSV to JSON

Convert CSV rows into a JSON array, using the first row as field names.

Open CSV to JSON

Frequently asked questions

What if two columns have the same name?

The second becomes name_2, the third name_3, so no value is overwritten.

Can I get arrays instead of objects?

Yes — turn off “First row is a header” and every row becomes an array of values.