What is a JSON file?
JSON stands for JavaScript Object Notation. It stores data as plain text, as names paired with values, like "city": "Lisbon". Records go in curly braces and lists go in square brackets, and either one can sit inside the other, which is how JSON holds data with several layers.
Douglas Crockford described JSON in the early 2000s. Ecma International published it as a standard in 2013 (ECMA-404), and the internet standard for it, RFC 8259, came out in 2017. Almost every programming language can read it today, which is why apps and websites use it so much.
You usually end up with a .json file when you export data from an app or a website, download data from an API, or copy a settings file. All the data is there, but it's hard to read as a list, and a spreadsheet won't open it as a table.
How to open a JSON file
A JSON file is plain text, so Notepad, TextEdit or any code editor can open it, and most browsers will show it too. To read one without installing anything, open it in our file viewer.
Reading the text works for a small file. Once you have hundreds of records, you'll want a table you can sort and filter, and getting one means converting the file.
What you can convert JSON to
A JSON file can become four other formats here. Which one to pick depends on where the data is going next:
- JSON to CSV gives a plain table that almost any program can import. Each record becomes a row, and records inside records get columns like
address.city. - JSON to XLSX gives an Excel workbook with the same table. Numbers stay numbers and text stays text, so a ZIP code like 01100 keeps its zero.
- JSON to XLS gives the older Excel 97-2003 format, for software that only accepts .xls. It holds at most 65,535 rows of data.
- JSON to XML turns each key into a tag and each list into repeated tags, for systems and feeds that only take XML.
Convert other files to JSON
It works the other way too. These converters turn a table or an XML file into JSON that a program or an API can read:
- CSV to JSON gives a list of records named after the header row. Every value stays text, exactly as written, so ZIP codes and dates aren't changed.
- XLSX to JSON and XLS to JSON read every sheet that has data. Numbers stay numbers, TRUE and FALSE cells become true and false, and dates become text like 2024-01-15.
- XML to JSON keeps the structure of the XML. Attributes become keys starting with @_, and repeated tags become lists.
To get a table out of XML instead, use XML to CSV.
How to convert a JSON file
- Upload your JSON file - Drag it into the box at the top of this page, or browse for it. You can add up to 5 files at once.
- Pick the output - Choose CSV, XLSX, XLS or XML from the format menu.
- Download your file - Save the converted file when it's ready.
Your file is uploaded and converted on our servers, and each JSON file can be up to 20 MB. Our security page explains what happens to your file after that.
Common mistakes with JSON files
- Renaming data.json to data.csv. The name changes, but the text inside is still JSON, so a spreadsheet shows it as one long mess. Only a real conversion builds the table.
- Leaving a comma after the last item in a list, or using single quotes around text. JSON doesn't allow either one, so the file is refused, and the error message says which line to fix.
- Uploading JSON Lines, with one record on each line. That isn't a single JSON value, so it won't convert.