Format and validate JSON without leaving your browser.

Paste JSON to pretty-print it with two-space indentation and catch a syntax error before it reaches an API or a file.

JSON input

Result

Formatted JSON

text
{
"status": "ok",
"items": [
1,
2,
3
]
}

Processed locally — inputs and results stay in this browser tab. Copy and download actions run only when you choose them.

More Signalbench tools

Small tools for stubborn bugs.

Format JSON, inspect JWT claims, explain cron expressions, and compare text locally in your browser.

Open

Decode a JWT and read its claims.

Decode a JSON Web Token locally to read its header and payload claims — decoding a JWT is not the same as verifying it.

Open

Understand any cron expression at a glance.

Parse a five-field cron expression and see the minute, hour, day, month, and weekday fields explained in plain language.

Open

Compare two texts line by line.

Compare two blocks of text line by line and see exactly which lines were added, removed, or unchanged, locally in your browser.

Open

Encode and decode Base64 without breaking Unicode.

Encode UTF-8 text as Base64 and Base64URL or decode canonical data back to Unicode text.

Open

Encode URL components without confusing + and %20.

Encode and decode UTF-8 URL components or HTML form values locally.

Open

What "valid" means here

This formatter checks that the input is syntactically valid JSON and re-indents it. Syntax validity is only the first contract an API request has to satisfy — a schema, required field, or type mismatch can still reject a payload that formats cleanly.

  • Trailing commas and comments are not valid JSON and are rejected.
  • Formatting uses two-space indentation.
  • Large or deeply nested payloads still format entirely in this browser tab.