JSON Forge
100% Client-Side: your data is never sent to a server

JSON Pretty Print

Turn dense, single-line JSON into readable, indented text. Choose 2 or 4 spaces and optionally sort keys alphabetically.

Loading editor…
Paste or type JSON on the left to explore it as a tree.
Empty🔒 Processed locally in your browser

How to pretty print JSON

  1. Paste the JSON into the editor.
  2. Choose the indentation (2 or 4 spaces) in the Formatted tab, and tick Sort keys if you want alphabetical order.
  3. Press Format to write the pretty version back into the editor, or use Copy Output.

2 spaces or 4 spaces?

Two spaces is the common default in the JavaScript ecosystem and keeps deeply nested documents narrow. Four spaces is popular in Python, Java and many API documentation styles. Pick whichever matches the files already in your repository so diffs stay small.

Why sort keys?

JSON objects are unordered, so sorting keys changes nothing semantically. It makes files deterministic, which means version-control diffs only show real changes and two exports of the same data compare equal.

What is JSON?

JSON (JavaScript Object Notation) is a lightweight, text-based data format that is easy for people to read and for machines to parse. It is the de facto standard for web APIs, configuration files and data exchange between services. A JSON document is built from just six value types: objects, arrays, strings, numbers, booleans and null.

{
  "name": "Ada",
  "age": 36,
  "admin": true,
  "skills": ["math", "code"],
  "address": { "city": "London" },
  "manager": null
}

JSON is stricter than JavaScript object literals: keys and strings must use double quotes, trailing commas are not allowed and comments are not part of the specification (RFC 8259).

Why format JSON?

APIs usually return minified JSON on a single line, which is efficient for machines but unreadable for people. Formatting (also called pretty printing or beautifying) adds consistent indentation and line breaks so that you can scan the structure, spot mistakes and review changes. Minifying does the opposite and strips whitespace to reduce size.

Frequently asked questions

Is pretty printed JSON still valid?

Yes. Indentation and line breaks are insignificant whitespace in JSON, so the parsed data is identical.

Is my JSON uploaded to a server?

No. Parsing, validation, formatting, diffing and code generation all run inside your browser, using a Web Worker. Your data is never sent to any server, which makes the tool safe for API responses, configuration files and other sensitive payloads.

Does it work offline?

Yes, after the first visit. The editor and tools are stored in your browser, so you can use them without a connection. Only the TypeScript, CSS and HTML language workers used for extra highlighting in the Code tab are downloaded the first time you use them.

How large a JSON file can I open?

Files of 20 MB and more work. Parsing happens off the main thread and the tree view is virtualized, so only the rows you can see are rendered. The editor switches to a lighter mode for very large documents.

What is the difference between formatting and minifying JSON?

Formatting (pretty printing) adds line breaks and indentation so people can read the data. Minifying removes all optional whitespace to make the payload as small as possible for network transfer or storage. Both produce identical data.

Fix common JSON errors

JSON examples to try

Cheat sheets

More JSON tools