Skip to content
LocalOnly
JSON Tools

How to Format JSON Online Safely and Privately

Minified JSON is unreadable and hard to debug. This guide covers how JSON formatting works, when to use it, common mistakes, and how to pretty-print JSON without uploading it anywhere.

Updated June 18, 20265 min read100% local & private

Anyone who works with APIs, config files, or logs eventually stares at a wall of minified JSON crammed onto a single line. It is valid, but it is unreadable - and reading is exactly what you need to do when a payload is not behaving. Formatting (also called pretty-printing or beautifying) turns that dense string into a clean, indented structure you can actually scan, diff, and reason about.

This guide explains what JSON formatting really does, why it matters, how it works under the hood, and the mistakes that trip people up. Along the way you will see how to do it instantly with the LocalOnly JSON Formatter - a free tool that formats entirely in your browser, so even sensitive payloads never leave your machine.

What is JSON formatting?

JSON formatting is the process of adding consistent whitespace - line breaks and indentation - to a JSON document so its structure becomes visible. The data itself does not change: keys, values, types, and order stay exactly the same. Only the presentation changes.

The opposite operation is minifying, which strips all non-essential whitespace to make the payload as small as possible for transport. Formatting and minifying are two sides of the same coin: you minify for machines and format for humans.

Minified vs. formatted

The same object, transport-optimized and human-optimized.

Input

{"id":42,"name":"Ada Lovelace","roles":["admin","author"],"active":true}

Output

{
  "id": 42,
  "name": "Ada Lovelace",
  "roles": [
    "admin",
    "author"
  ],
  "active": true
}

Why formatting JSON matters

A single-line payload hides its shape. Once it is indented, nesting depth, array boundaries, and missing commas become obvious at a glance. That has real, practical benefits:

  • Faster debugging - you can trace a value to its exact path instead of counting brackets.
  • Cleaner diffs - formatted, consistently-ordered JSON produces readable version-control diffs where only real changes stand out.
  • Better code review - reviewers can actually read the config or fixture you changed.
  • Fewer syntax errors - a good formatter validates as it goes and points to the exact line and column of a problem.

How JSON formatting works

Formatting is a two-step process: parse, then serialize. First the tool parses the input string into an in-memory data structure (objects, arrays, strings, numbers, booleans, and null). If the string is not valid JSON, parsing fails and you get an error with a location. Second, it serializes that structure back into text - this time inserting a newline after each element and indenting each nesting level.

In JavaScript this is essentially JSON.stringify(JSON.parse(input), null, 2), where the 2 is the number of spaces per level. A production-grade formatter adds better error messages, configurable indentation, and the ability to handle large documents without freezing the page.

Where does your data go?

Because parsing and serializing are pure computation, they can happen entirely in your browser. The LocalOnly JSON Formatter never sends your JSON to a server - there is no upload, no logging, and no storage. That means you can safely format API responses containing tokens or customer data.

Step-by-step: format JSON in seconds

  1. Open the JSON Formatter and paste your raw or minified JSON into the input editor.
  2. Choose your indentation - 2 spaces, 4 spaces, or tabs - to match your project's style guide.
  3. Read the formatted output. If there is a syntax error, the tool highlights the exact line and column so you can fix it.
  4. Copy the result to your clipboard or download it as a .json file.

That is the whole loop. No account, no install, and it keeps working offline once the page has loaded.

Common use cases

  • Reading an API response that arrived as one long minified line.
  • Cleaning up JSON copied from logs before pasting it into a ticket.
  • Standardizing indentation across config files in a repository.
  • Inspecting a webhook payload while debugging an integration.
  • Preparing readable JSON snippets for documentation or a blog post.

Common mistakes and how to avoid them

Trailing commas

JSON does not allow a comma after the last element of an object or array. It is a frequent copy-paste casualty. A validating formatter flags it immediately rather than letting it fail silently downstream.

Single quotes and unquoted keys

JSON requires double quotes around both keys and string values. {'name': 'Ada'} is valid JavaScript but invalid JSON. If you are pasting a JavaScript object literal, expect errors until the quotes are fixed.

Comments

Standard JSON has no comment syntax. If your file uses // or /* */ (as JSONC or config files sometimes do), a strict parser will reject it. Strip comments first, or use a format that officially supports them.

Best practices

  • Pick one indentation style (2 spaces is the most common) and apply it everywhere for consistent diffs.
  • Format JSON fixtures and config files before committing them so version history stays readable.
  • Combine formatting with key sorting when you want two documents to diff cleanly regardless of key order.
  • For sensitive payloads, use a tool that processes locally - never paste secrets into a service that uploads your data.

Frequently asked questions

Command Palette

Search for a tool or command