Web Analytics
Skip to content
← All writing
Engineeringen · OriginalAugust 23, 2026 · 11 min read

What Is JSON? A Plain-English Guide to the Web's Data Format

What is JSON? A plain-English guide to JavaScript Object Notation, what it stands for, how it works, its file format, and real-world examples.

M
Mezi Aris ApronnyFounder, Nelenga · Seginim, Bengkulu Selatan
What Is JSON? A Plain-English Guide to the Web's Data Format

JSON is a plain-text format for storing and moving structured data, and it stands for JavaScript Object Notation. You write data as key-value pairs and lists, save it as text, and almost any programming language can read it back. If you have ever seen a block of text full of curly braces, quoted words, and colons, that was probably JSON.

It powers most of the data that travels between websites, apps, and servers today. This guide explains what JSON is, what the letters mean, how it works, what a .json file actually is, and why it beat the older formats it replaced.

What is JSON? JavaScript Object Notation in one sentence

JSON is a way to write data as text so that both humans and computers can read it. It uses two building blocks: objects (a set of named fields wrapped in curly braces) and arrays (an ordered list wrapped in square brackets). Here is a tiny, complete JSON document:

{
  "name": "Nelenga",
  "city": "Seginim",
  "tools": 4,
  "open_source": true
}

That is it. A person can read those four fields at a glance, and a program can parse them into a structure it can work with. Because it is just text, you can email it, paste it into a chat, commit it to Git, or send it across the internet without any special software.

What does JSON stand for, and where did it come from

JSON stands for JavaScript Object Notation. The name comes from JavaScript, because the syntax is based on the way you write object literals in that language. Douglas Crockford specified and popularized the format in the early 2000s, and it was standardized later as ECMA-404 and RFC 8259.

Here is the part that trips people up: JSON borrows JavaScript’s syntax, but it is not JavaScript, and it is not tied to it. Python, Java, Go, PHP, Rust, and effectively every other language have built-in support for reading and writing it. So the “JavaScript” in the name is history, not a requirement. You never need to touch JavaScript to use JSON.

How does JSON work: text in, structured data out

JSON works through two steps that mirror each other. When a program has data in memory and wants to save or send it, it serializes that data into a JSON string. When another program receives the string, it parses it back into data it can use. The text is the shared middle ground both sides agree on.

Say a weather app on your phone asks a server for today’s forecast. The server holds that forecast as an internal object, converts it to a JSON string, and sends the text over the network. Your phone receives the text, parses it, and pulls out the temperature to show on screen. Neither side needs to know what language the other is written in. They only need to agree on JSON.

This is why JSON became the default language of web APIs. It is a neutral format that any two systems can meet in the middle on, no matter how they were built.

The JSON file format: .json, MIME type, encoding

A JSON file is a text file that holds one JSON value, usually an object or an array. The details worth knowing:

  • Extension: .json
  • MIME type: application/json (this is what a server sends in the Content-Type header so the browser knows how to read the response)
  • Encoding: UTF-8. The spec settled on UTF-8 as the default, so accented letters, emoji, and non-Latin scripts all work as long as you save the file that way.

Because it is plain text, a .json file opens in any editor, diffs cleanly in version control, and weighs only as much as the characters inside it. A small config file can be well under 1 KB.

Anatomy of a JSON document: keys, values, structure

Every JSON document is built from a small set of parts. Learn these and you can read any JSON you meet:

  • Keys are always strings in double quotes, like "name". Single quotes are not allowed.
  • Values can be a string ("hello"), a number (42 or 3.14), a boolean (true / false), null, another object, or an array.
  • Objects group key-value pairs inside { }, with a colon between each key and value and commas between pairs.
  • Arrays hold an ordered list of values inside [ ], separated by commas.

Objects and arrays can nest inside each other as deep as you need, which is how JSON represents complex data like a user with a list of orders, each order holding a list of items. For a full breakdown of the six value types and how each one behaves, see json data types explained, and for the exact punctuation rules that make a document valid, see json syntax rules.

Why use JSON, and why it beats older formats for data exchange

JSON won for a simple reason: it says a lot with very little. Before it took over, XML was the common choice for data exchange, and the same information in XML carries far more boilerplate. Compare a single record.

XML:

<user>
  <name>Mezi</name>
  <active>true</active>
</user>

JSON:

{ "name": "Mezi", "active": true }

The JSON version is shorter, easier to read, and faster to parse. It maps directly onto the objects and arrays that programming languages already use, so there is less translation work. It also has native types: true is a real boolean and 42 is a real number, where XML treats everything as text until you tell it otherwise.

That does not make JSON the right tool for everything. Config files often prefer YAML for its comments and lighter syntax, and documents still use XML in places. For a side-by-side look at when each one fits, read json vs yaml vs xml. For most web APIs and app data, though, JSON is the default, and it earned that spot.

JSON examples: a config file, an API response, a settings blob

Seeing JSON in its real jobs makes the format click. Here are three common ones.

A config file tells a tool how to behave:

{
  "theme": "dark",
  "autosave": true,
  "max_history": 50,
  "plugins": ["spellcheck", "wordcount"]
}

An API response is what a server sends back when your app asks for data:

{
  "status": "ok",
  "results": [
    { "id": 1, "title": "What Is JSON" },
    { "id": 2, "title": "JSON Data Types" }
  ]
}

A settings blob saved for one user might look like this:

{
  "user_id": "u_8842",
  "notifications": { "email": true, "push": false },
  "language": "en"
}

Notice the pattern in all three: objects for named fields, arrays for lists, and nesting where the data has structure. Once you recognize that shape, JSON stops looking like noise and starts reading like a table.

Common JSON mistakes and how to check your file

Most broken JSON comes from a handful of small errors, and they are easy to spot once you know them:

  • A trailing comma after the last item. { "a": 1, } is invalid. JSON does not allow that final comma.
  • Single quotes instead of double. { 'name': 'mezi' } will fail. Keys and string values both need double quotes.
  • Comments. Plain JSON has no comment syntax, so a // note line breaks the file. (See comments in json for the workarounds people actually use.)
  • Unescaped characters inside strings, like a raw quote or backslash. A path such as "C:\Users" needs the backslash escaped. Our guide to json escape characters explained covers the full list.

When a file will not parse, the fastest fix is to paste it into a validator that points at the exact line and character where it broke. That is what our free JSON formatter does: it checks whether your JSON is valid, shows the error location in plain language, and pretty-prints the result so nesting is easy to follow. No account required.

Where to go next: data types, syntax rules, and schema

You now know what JSON is, what it stands for, how the parse-and-serialize loop works, and how to read the format. To go deeper, pick the piece you need. The json data types explained guide covers every value type in detail. The json syntax rules piece nails down the punctuation. And once you are working with larger files and want to enforce a shape, json schema explained shows how to describe and validate the structure your data must follow.

FAQ

What does JSON stand for? JSON stands for JavaScript Object Notation. The syntax is based on JavaScript object literals, but the format itself works with almost every programming language and does not require JavaScript.

Is JSON a programming language? No. JSON is a data format, not a language you write logic in. It only describes data (objects, arrays, and values). You cannot run a JSON file the way you run a script.

What is a .json file used for? A .json file stores structured data as text. It is commonly used for app and tool config, saved user settings, and the data that web APIs send back and forth. Because it is plain text, it opens in any editor and works in version control.

How do I know if my JSON is valid? Paste it into a JSON validator or formatter. A good one tells you the exact line and character where the error is, so you can fix a stray comma or missing quote in seconds. Our JSON formatter does this for free in the browser.

#json#data#guide