PRPickrack

JSON Formatter

Format, validate, minify JSON instantly. Browser-side, your data never leaves your tab.

Output will appear here…

Useful for diffing two JSON objects.

Format, validate, and minify JSON instantly in your browser. Detects errors with line numbers. Free, no tracking.

JSON Formatter is essential for anyone working with APIs, config files, or data interchange — making minified JSON readable, validating syntax before sending a request, or minifying a payload before deployment.

Pick Rack's JSON Formatter is browser-side JavaScript: JSON.parse validates, JSON.stringify with indentation prettifies, and a custom error pointer shows exactly which character failed. Your JSON never leaves your tab — critical when debugging payloads with API tokens, user PII, or proprietary data.

Free, no signup, no rate limit. Most online JSON formatters secretly send your data to their server for analytics — verify this in DevTools → Network. Pickrack runs zero network calls during formatting.

Key features

  • Zero-network privacyFormatting and validation happen entirely client-side. Open DevTools → Network tab and watch — no requests fire.
  • Error highlighting with line numbersInvalid JSON shows the exact line and character offset where parsing failed. Faster than reading raw error messages.
  • Adjustable indent (2/4/8 spaces, tabs)Match your team's style. Re-format on every paste.
  • Minify modeStrip whitespace for production payloads. Useful for cURL commands, environment variables, or copy-paste into a config.
  • Sort keys alphabetically (optional)Diff two JSON objects more easily by sorting keys before comparison.

How to use

  1. Step 1: Paste your JSONPaste raw JSON (minified or formatted) into the input area.
  2. Step 2: Choose indent + optionsPick 2 or 4 spaces, toggle minify, sort keys if needed.
  3. Step 3: Copy formatted outputOutput appears immediately. Click Copy to save to clipboard.

When to use

  • Debug an API response by formatting the raw JSON you got from cURL or a screenshot
  • Validate a config file before committing — catch missing commas, trailing commas, unquoted keys
  • Minify a payload before pasting into an environment variable or config string
  • Inspect a JWT payload after Base64-decoding the middle segment
  • Compare two API responses by formatting both with sorted keys, then diffing
  • Clean up GraphQL or REST examples before pasting into documentation

Frequently asked questions

Is my JSON sent to your server?

No. All parsing, formatting, and validation runs in your browser using native JSON.parse and JSON.stringify. Verify in DevTools → Network — zero requests during formatting.

Does this support JSON5, JSONC (with comments), or JSON Lines?

v1 supports strict JSON only — no comments, no trailing commas, no unquoted keys. JSON5 / JSONC support is on the roadmap. For JSON Lines (NDJSON), paste one object at a time, or split on newlines first.

What's the maximum size?

Practical limit is ~50MB or 10 million rows. Browsers handle this fine; very large files may slow the textarea — paste-test before committing.

Why does it show 'Unexpected token' errors?

JSON is strict: keys must be double-quoted, no trailing commas, no comments, true/false/null lowercase, no NaN/Infinity. The error message points to the failing position.

Can I see a tree view instead of plain text?

v1 is text-only. Tree view (collapsible nested objects) is on the roadmap. For complex nested JSON, JSON5 + a desktop editor like VS Code with the JSON extension may be more comfortable.

Does it preserve key order?

Yes by default. Toggle Sort Keys to alphabetize. JSON spec allows arbitrary order, so both are valid.

What about JSON Schema validation?

Out of scope for this tool — try jsonlint.com or ajv-cli for schema validation. Pickrack's tool only checks syntax.

Can I beautify minified JSON like JSON.stringify(obj, null, 2)?

Yes — that's the default formatting. Indent value is configurable.