Skip to content
SmaftyTools

CSV to JSON

Convert CSV data to JSON online with header detection, custom delimiters and quoted-field support. Fast, free and private.

About CSV to JSON

The CSV to JSON converter transforms spreadsheet exports and other comma-separated data into JSON — either an array of objects (using the first row as keys) or an array of arrays. It handles the tricky parts of real-world CSV correctly: quoted fields, doubled/escaped quotes inside values, and commas or line breaks embedded inside a single field, all of which trip up naive split-on-comma parsing.

Typical uses: pulling an export from Excel or Google Sheets and pasting it straight into a JavaScript app as mock API data, converting a CRM or analytics export into JSON for a script or database import, migrating a legacy data dump into a format a modern JSON API expects, and quickly checking what a messy CSV file actually contains before writing code around it. Because the delimiter is configurable, it also works as a straightforward csv to json converter for semicolon-delimited exports common in European locales and for tab-separated (.tsv) files, so you can convert csv to json regardless of where the export came from.

Parsing follows the RFC 4180 conventions that Excel and Google Sheets actually produce: a field wrapped in double quotes can contain commas and newlines without breaking the row, and a doubled quote inside a quoted field represents a literal quote character. On top of parsing, values are automatically typed — clean numbers become JSON numbers, 'true'/'false' become booleans, and empty cells become null — so the output is ready to use rather than a wall of quoted strings.

Values that aren't unambiguously numeric are left as strings on purpose: a code like '007' with a leading zero, or a formatted figure like '1,000', would lose information if silently converted to a number, so those stay as text. Conversion and parsing happen entirely in the browser — your data is never uploaded — which matters for exports containing customer records or other sensitive fields.

How to Use the CSV to JSON

  1. Paste CSV data (straight from Excel, Google Sheets or a .csv file).
  2. Toggle 'First row is headers' and pick the delimiter if needed.
  3. Copy the resulting JSON from the output pane.

Features

  • RFC 4180-style parsing: quoted fields, escaped quotes, embedded newlines
  • Header row → array of objects, or raw array-of-arrays mode
  • Automatic type detection for numbers, booleans and null
  • Comma, semicolon and tab delimiters

Examples

Converting a simple CSV

Input

name,age
Ada,36
Grace,85

Output

[{"name":"Ada","age":36},{"name":"Grace","age":85}]

Handling a quoted comma

Input

city,note
"Paris, France","Hello there"

Output

[{"city":"Paris, France","note":"Hello there"}]

Switching to a semicolon delimiter

Input

name;age
Ada;36

Output

[{"name":"Ada","age":36}]

Frequently Asked Questions

How do I convert an Excel sheet to JSON?

In Excel or Google Sheets, copy the range or export as CSV, paste it here, and copy the JSON output. Keep 'First row is headers' on if your sheet has column names.

Why are my numbers quoted as strings?

Values that aren't plain numbers (like '007' with a leading zero, or '1,000' with separators) stay as strings to avoid corrupting data. Clean numeric values convert automatically.

Can I convert a TSV (tab-separated) file?

Yes — switch the delimiter to tab. The same quoting and type-detection rules apply, so it works identically to comma or semicolon-delimited CSV.

Is the CSV to JSON converter free?

Yes, the CSV to JSON converter is completely free with no usage limits. No signup, no account and no installation required.

Is my data safe?

Yes. All processing happens locally in your browser using JavaScript — nothing you type is uploaded or stored on our servers.