Free · Private · No sign-up

Convert JSON to CSV
in your browser

Paste, upload, or drag-and-drop your JSON. Get a clean CSV instantly — with nested object flattening, custom delimiters, column filtering, and more. No uploads. No accounts. Completely private.

✓ No file uploads✓ No account needed✓ Works offline✓ Open source✓ WCAG accessible

JSON to CSV Converter

This tool works entirely in your browser. Your data is never uploaded or stored. All processing happens locally using browser APIs only.

Your data never leaves your browser

This tool works entirely in your browser. Your JSON files are processed in memory using browser APIs only. Nothing is uploaded to any server, stored in a database, or logged anywhere.

Quick tips

  • Press Ctrl+Enter to convert quickly
  • Drag & drop a .json file directly onto the input area
  • Use the Options tab to configure delimiters, flattening, and column filters
  • For nested JSON, try Stringify nested to keep objects as JSON strings
  • Your last input is auto-saved in your browser for quick recovery

Supported inputs

Array of objects

[{"a":1}, {"a":2}]

Single object

{"name":"Alice"}

Nested JSON

{"user":{"name":"A"}}

What is JSON to CSV conversion?

JSON (JavaScript Object Notation) is a lightweight data format commonly used in APIs, configuration files, and web applications. It represents data as nested key-value pairs.

CSV (Comma-Separated Values) is a simple tabular format supported by Excel, Google Sheets, and virtually every data tool. Each row is a record; each column is a field.

Converting JSON to CSV makes it easy to analyse data in spreadsheets, import records into databases, share structured data with non-technical colleagues, or feed data into reporting tools. The main challenge is handling nested JSON — this converter automatically flattens nested objects into flat columns using dot notation.

How to convert JSON to CSV

Four simple steps. No sign-up needed.

  1. 1

    Paste or upload your JSON

    Paste JSON directly into the input area, upload a .json file, or drag and drop it onto the page.

  2. 2

    Configure options (optional)

    Choose your delimiter, adjust flattening settings, filter columns, and set your output filename in the Options tab.

  3. 3

    Click Convert to CSV

    Hit the Convert button (or press Ctrl+Enter). The CSV is generated instantly in your browser.

  4. 4

    Download or copy the result

    Preview the CSV table, download the .csv file, or copy the raw text to your clipboard.

Everything you need to convert JSON

Instant in-browser conversion

No uploads, no waiting. Conversion happens in milliseconds using client-side JavaScript.

Nested JSON flattening

Deeply nested objects are automatically flattened using configurable dot or underscore notation.

Custom delimiters

Choose comma, semicolon, tab, or pipe as your field separator. Supports EU Excel format.

Inconsistent key handling

Different keys across rows? The converter auto-detects all columns and fills missing cells.

Column filtering

Include or exclude specific columns, set custom column order, and apply empty value replacements.

File upload & drag-drop

Upload .json files directly or drag them onto the input area. FileReader API — no upload needed.

Dark & light mode

Fully themed for both dark and light environments. Preference saved in your browser.

Session restore

Your last input and options are auto-saved in localStorage so you can pick up where you left off.

WCAG accessible

Built with semantic HTML, ARIA labels, keyboard navigation, and sufficient colour contrast.

Your data never leaves your browser

This tool processes your JSON files entirely in your browser using standard JavaScript. There is no server, no upload, no database, and no logging of any kind. When you close the tab, your data is gone. We built it this way deliberately — because your data is yours.

No server processing

All conversion runs in your browser tab

No data storage

Files are never saved to any database

Works offline

Once loaded, no internet connection needed

Frequently asked questions

Is this JSON to CSV converter free?
Yes, completely free. No account, no credit card, no usage limits. All features are available at no cost.
Does my data get uploaded to a server?
No. All processing happens entirely in your browser using JavaScript. Your JSON files are never uploaded to any server, stored in any database, or logged anywhere. The tool works offline once the page has loaded.
Can I convert nested JSON to CSV?
Yes. The converter automatically flattens nested objects using a configurable separator (default: dot notation). For example, {"user": {"name": "Alice"}} becomes a column called "user.name". You can also choose to stringify nested objects instead of flattening them.
What file size can I convert?
There is no hard limit imposed by this tool. Since processing happens in your browser, the practical limit depends on your device's memory. Files up to 50 MB work well on most modern devices.
Can I convert an array of JSON objects?
Yes — that's the most common use case. Paste an array like [{"id":1,"name":"Alice"},{"id":2,"name":"Bob"}] and each object becomes a row in the CSV.
What delimiters are supported?
Comma (standard CSV), semicolon (common in European Excel), tab (TSV), and pipe. You can configure this in the Options tab.
Does it handle missing or inconsistent keys?
Yes. If different objects in your array have different keys, the converter detects all unique columns across all rows and fills missing cells with an empty value (configurable).
Can I rename column headers?
Column renaming is on the roadmap. Currently you can filter which columns to include or exclude, and choose a custom column order.

Key terms explained

JSON
JavaScript Object Notation — a lightweight text format for representing structured data as key-value pairs and arrays.
CSV
Comma-Separated Values — a plain text tabular format where each line is a row and fields are separated by a delimiter character.
Nested JSON
JSON where values are themselves objects or arrays, creating a tree structure with multiple levels of depth.
Flattening
The process of converting nested JSON into a flat, single-level structure suitable for CSV by joining key names with a separator.
Delimiter
The character used to separate fields in a CSV file. Typically a comma, but can be semicolon, tab, or pipe.
Schema
The set of column names (keys) detected across all objects in a JSON array, defining the structure of the output CSV.

Ready to convert your JSON?

Free, instant, and completely private. No account required.

Convert JSON to CSV now →