Skip to content
Sealpaste

JSON Validator

Check whether JSON is valid. If it isn’t, you get the line, the column and a plain-English reason.

Mode
Indent

Input JSON

Formatted

How to use it

  1. 1Paste the JSON you want to check, or open a file.
  2. 2Read the status under the box: "Valid JSON" or the error with its position.
  3. 3Fix the error and the check runs again as you type.

Private by design

Everything runs in this browser tab. Your input is never uploaded, logged or saved on a server, and there are no public "recent" pages. Close the tab and it's gone.

How we keep it private

Examples

Trailing comma

Input

{"items": [1, 2, 3,]}

Output

Line 1, column 19: Trailing comma before "]" is not allowed in JSON
Python-style literal

Input

{"enabled": True}

Output

Line 1, column 13: "True" is not valid JSON; use true, false or null

What the validator checks

It follows the JSON standard (RFC 8259) strictly: one value per document, double-quoted strings and keys, no comments, no trailing commas, no leading zeros in numbers, escaped control characters.

Error messages are the same in every browser, because the parser is part of this page instead of the browser’s built-in JSON.parse.

Frequently asked questions

Is my JSON sent to a server?

No. Parsing and formatting run in your browser (large inputs in a background Web Worker). Nothing is uploaded, logged or stored, so API responses with tokens or customer data stay on your machine.

Why do my big numbers stay exact here?

Many formatters use JSON.parse, which turns 12345678901234567890 into 12345678901234567000. This tool keeps every number exactly as written, so 64-bit IDs and prices with trailing zeros are not changed.

How large a file can I format?

Up to 10 MB of text works well in a modern browser. The work runs off the main thread, so the page stays responsive.