If you have ever seen a block of text filled with curly braces, quoted labels, and colons — and wondered what on earth you were looking at — you have encountered JSON. It shows up in error messages, configuration files, API responses, exported data files, and browser developer tools. And yet, for something so ubiquitous, it rarely gets a clear explanation outside of technical documentation written for developers.
This guide explains JSON from scratch, in plain language. No programming experience required.
What Does JSON Stand For?
JSON stands for JavaScript Object Notation. The name comes from the fact that the format was originally derived from the JavaScript programming language's way of writing data structures. Despite the name, JSON has nothing specifically to do with JavaScript today — it is used by every major programming language and is one of the most universal data formats on the internet.
The "Notation" part is the key word. JSON is not a program. It does not do anything. It is simply a standard way to write down data as text — a notation, like how musical notation is a way to write down music.
What Does JSON Look Like?
Here is a simple JSON example — imagine this is data about a person stored in an application:
"name": "Sarah Johnson",
"age": 34,
"email": "sarah@example.com",
"isSubscribed": true,
"favouriteColors": ["blue", "green", "amber"],
"address": {
"city": "Bristol",
"country": "UK"
}
}
Even without knowing anything about JSON, you can probably read that. Sarah is 34, she lives in Bristol, she is subscribed to something, and her favourite colours are blue, green, and amber. That readability is exactly the point — JSON is designed to be easy for both computers and humans to understand.
The rules JSON follows
- Data is written as key-value pairs: a label (the key) followed by a colon and the data (the value).
- Keys must always be wrapped in double quotes.
- Values can be text (in quotes), numbers,
true,false,null, a list (in square brackets), or another object (in curly braces). - Key-value pairs inside an object are separated by commas.
- The last item in a list or object must not have a trailing comma — this is one of the most common mistakes people make when editing JSON by hand.
Why Do Developers Use JSON?
JSON became the dominant format for exchanging data on the web for a handful of practical reasons:
It is lightweight. JSON represents data without a lot of surrounding overhead. Compare it to XML (the format it largely replaced), which requires opening and closing tags for every value. JSON is typically 30–40% smaller for the same data.
It is readable. A developer — or even a non-developer — can open a JSON file in a text editor and understand its structure. XML is harder to scan quickly; binary formats like Protocol Buffers are impossible to read directly.
Every language supports it. Python, JavaScript, PHP, Ruby, Java, Go, Rust, Swift — every mainstream programming language has built-in tools for reading and writing JSON. This makes it ideal for situations where different systems need to talk to each other.
APIs use it everywhere. When your weather app fetches the forecast, when your banking app loads your balance, when a shopping site checks stock levels — in almost every case, the underlying systems are exchanging JSON. It has become the lingua franca of web services.
Where Does JSON Actually Appear?
You are likely encountering JSON more than you realize, even as a non-developer:
- Configuration files — Many apps store settings in JSON files (
package.json,settings.json,manifest.json). - Data exports — When you export data from a tool or service (Notion, Airtable, Shopify, Google Analytics), JSON is often one of the format options.
- Browser developer tools — Open any browser's network tab and you will see JSON responses from websites as your browser loads data.
- Error messages — When an API call fails, the error details are almost always returned as JSON.
- CMS and no-code tools — Platforms like Webflow, Bubble, and Zapier use JSON internally to move data between steps.
JSON vs XML: What Changed?
Before JSON became mainstream, XML (Extensible Markup Language) was the standard way to transfer structured data. Here is the same data written in both formats:
| JSON | XML equivalent |
|---|---|
{"name": "Sarah", "age": 34} |
<person><name>Sarah</name><age>34</age></person> |
The JSON version is shorter, less repetitive, and easier to read. It also maps directly to data structures that programmers work with every day, which makes it faster to write code that processes it. XML still exists (RSS feeds, many enterprise systems, HTML itself), but for most new projects and APIs, JSON is the default choice.
How to Read a JSON File
If someone sends you a JSON file and you need to make sense of it, here is the simplest approach:
1. Open it in a text editor. JSON is plain text. On Windows, Notepad works. On Mac, TextEdit works (make sure it is in plain text mode). Any code editor like VS Code will also open it and syntax-highlight it automatically.
2. Format it if it looks like a single long line. JSON that is ready for computers to read is often "minified" — all whitespace removed, squeezed into one line. This is impossible to read by eye. A JSON formatter restores the indentation and structure. Paste the content into our free JSON Formatter to make it readable in one click.
3. Start at the top level. Every JSON file starts with either a curly brace { (an object) or a square bracket [ (an array/list). If it starts with {, look for the keys — they are the quoted labels before each colon. That gives you the overall structure.
4. Drill down into nested objects. Values that are themselves objects (starting with {) contain their own set of key-value pairs. Lists (starting with [) contain multiple values of the same type, separated by commas.
If you need to make changes to a JSON file, paste it into our JSON Formatter first. It will validate the structure and show you any existing errors before you start editing. After your changes, validate again to make sure nothing broke.
Need to format or validate a JSON file right now?
Open JSON Formatter →Common JSON Mistakes to Avoid
If you ever need to write or edit JSON by hand, watch out for these common errors that will make the file invalid:
- Trailing comma after the last item —
{"a": 1, "b": 2,}is invalid. Remove the comma after2. - Single quotes instead of double quotes — JSON only accepts double quotes for keys and string values. Single quotes cause a parse error.
- Comments inside JSON — JSON does not support comments (
// like thisor/* like this */). If you add one, the file becomes invalid. - Unquoted keys — In JavaScript you can write
{name: "Sarah"}, but in JSON the key must be quoted:{"name": "Sarah"}. - Mismatched brackets or braces — Every opening
{needs a closing}, and every[needs a]. Missing one breaks the whole file.
Quick Summary
- JSON is a text format for representing structured data — not a programming language.
- It uses key-value pairs inside curly braces, with lists in square brackets.
- It is the dominant format for web APIs and many configuration files.
- You can read and edit JSON in any text editor; use a formatter to make minified JSON readable.
- The most common errors are trailing commas, single quotes, and missing brackets.
Frequently Asked Questions
Sources & Further Reading
- Crockford, D. (2006). The application/json Media Type for JavaScript Object Notation. RFC 4627. Internet Engineering Task Force.
- Bray, T. (2017). The JavaScript Object Notation (JSON) Data Interchange Format. RFC 8259. IETF.
- MDN Web Docs. Working with JSON. Mozilla Developer Network. Retrieved June 2026.
- ECMA International. (2017). ECMA-404: The JSON Data Interchange Standard (2nd ed.).