What is JSON? A beginner-friendly guide

A clear, jargon-light introduction to the data format that powers the modern web.

·By AssistSoft· 100% client-side tools

If you have written any code in the last fifteen years, you have almost certainly seen JSON. It is the default way that browsers talk to servers, the format of most configuration files, and the substrate underneath countless data pipelines. This guide explains what JSON actually is, why it won, and the handful of rules you need to read and write it correctly.

What does JSON stand for?

JSON stands for JavaScript Object Notation. It is a text-based format for representing structured data. Despite the name, JSON is not tied to JavaScript: every mainstream programming language can read and write it. The name is a historical artifact — the format was originally extracted from JavaScript's object literal syntax in the early 2000s by Douglas Crockford, then standardized as RFC 8259.

Why JSON is everywhere

JSON won for three practical reasons:

  • It is text. Any system that can read text can read JSON. That makes it trivial to send over HTTP, store in a file, paste into a chat, or pipe between processes.
  • It maps cleanly to most programming languages. Objects become maps/dicts, arrays become lists, scalars map to native types. No special-purpose parser is needed.
  • It is simple. The whole spec fits on one page. There are no namespaces, no schemas, no processing instructions — just values.

The six data types

JSON only has six value types, plus objects and containers:

  • string — text in double quotes: "hello"
  • number — integers or decimals: 42, 3.14, -7
  • booleantrue or false
  • null — the absence of a value: null
  • object — an unordered collection of key/value pairs: { "name": "Ada", "age": 36 }
  • array — an ordered list of values: [1, 2, 3]

That is it. Dates, timestamps, binaries, and decimals-with-fixed-precision do not exist as native JSON types — you represent them as strings or numbers by convention.

The five rules that catch beginners

  1. Double quotes only for strings. Single quotes are not allowed: { 'name': 'Ada' } is invalid.
  2. Keys must be quoted. In JavaScript you can write { name: 'Ada' }; in JSON you must write { "name": "Ada" }.
  3. No trailing commas. [1, 2, 3,] is invalid.
  4. No comments. JSON does not support // or /* */. (JSON5 and JSONC do, but they are separate formats.)
  5. The whole document is one value. A JSON file is exactly one object or array (or scalar), not a sequence of them.

If you ever forget, paste your snippet into our JSON Validator and it will tell you exactly which rule you broke.

JSON vs YAML vs XML

JSON is not the only structured data format. YAML uses indentation instead of braces and is preferred for hand-edited config (Kubernetes, GitHub Actions). XML uses tags and attributes and is still common in enterprise and SOAP services. We compare all three in depth in our JSON vs YAML vs TOML guide.

A note on privacy

Because JSON is human-readable, it is also easy to leak. In 2025, security researchers disclosed that two of the most popular online JSON tools had been publicly exposing user-pasted data — including API keys and cloud credentials — for years. The lesson is simple: be careful where you paste JSON containing secrets. Every tool on this site runs entirely in your browser, so there is nothing to leak. See our security page for the full picture.

Where to go next

Try it in your browser

Every tool on JSON Formatter App runs 100% client-side. No upload, no signup.

Open the editor