Skip to content
Developer Tools

JSON Validator

Find out instantly whether your JSON is valid — and when it isn't, see the exact line, column and cause of the error.

  • Free forever
  • No signup
  • Runs 100% in your browser
Use the JSON Validator

Paste JSON below — validation runs as you type, no button required.

What is a JSON Validator?

A JSON validator is a tool that checks whether a piece of text conforms to the JSON specification (RFC 8259). It answers “is this valid JSON?” with a clear yes or no — and when the answer is no, it reports the precise line and column where parsing failed, so you can fix the problem in seconds.

JSON is stricter than you think

JSON looks like JavaScript, but the grammar is far less forgiving. Strings and object keys must use double quotes — single quotes are illegal. Comments are not allowed in any form. Trailing commas after the last array element or object property are a syntax error. Numbers may not have leading zeros, and NaN, Infinity and undefined simply do not exist in JSON.

These rules trip people up daily because so many tools produce almost-JSON: a config file edited by hand, an API payload assembled with string concatenation, a log line copied with the end truncated. The text looks right until a strict parser rejects it — usually at the worst possible moment, like during a deployment.

It does not help that different environments report these failures differently. One runtime says “Unexpected token } in JSON at position 148”, another says “property name must be a string”, and minified input turns every position into a meaningless offset into a single giant line. This validator normalizes all of that into one consistent format — what went wrong, the exact line, the exact column — regardless of which browser you open it in.

Where validation failures come from in the real world

The most common sources we see: a package.json or tsconfig edited with a trailing comma left after deleting the last entry; a payload built by concatenating strings where a value containing a quote breaks out of its string; a response copied from a browser console that silently truncated a 2MB body; and “smart quotes” introduced by pasting through Word, Slack or a rich-text editor, which replace straight double quotes with curly ones that JSON does not recognize.

Validating before you ship — paste the payload here before wiring it into curl, a test fixture or a config deploy — turns a confusing runtime crash into a ten-second fix.

How to read a JSON error message

A parser reports the first position where the text becomes impossible to continue — which is not always where your mistake actually is. If you see “Expected ',' or '}' at line 8, column 17”, the parser got to that character legally and then failed; the real typo is often just before it, such as a missing quote closing the previous string.

That is why this validator shows more than a message: the error line is highlighted in the editor, “Jump to error” places your cursor on the exact character, and “Show error context” reveals the surrounding lines with a caret (▲) pointing at the offending position. Read backwards from the caret and the fix is usually obvious.

Valid syntax is not the same as valid data

A green “Valid JSON” result means one thing precisely: your text conforms to the RFC 8259 grammar. Every bracket is balanced, every string is double-quoted, every number is well-formed. It does not mean the data matches what your API expects — a payload can be perfectly valid JSON and still miss a required field, use a string where a number belongs, or nest an object one level too deep.

That second layer of checking is called schema validation, and it happens after syntax validation, not instead of it. The practical workflow is: paste here first to catch syntax errors instantly, then let your application’s schema (JSON Schema, Zod, io-ts) enforce structure. Catching the syntax layer here is still worth it — a trailing comma produces a wall-of-text parser exception in most languages, while this tool reduces it to one highlighted line and a ten-second fix.

When the document validates, the status card also reports key count, maximum nesting depth, byte size and line count — a quick fingerprint you can compare between two versions of a payload to confirm you are looking at the same shape of data.

Developer Tools

Why use our json validator?

Pinpoint accuracy

Exact line, column and a caret pointing at the offending character — not a vague “parse error”.

Live checking

Validation runs as you type (debounced 150ms). The status card updates without clicking anything.

Error context

See the surrounding lines with the exact character marked, so the fix is obvious at a glance.

Private by design

Validate production payloads with tokens or customer data — parsing happens entirely in your browser.

JSON Validator examples

Every invalid row reports the exact line and column — the same messages the tool shows you.
InputVerdictReport
{'a':1}InvalidUnexpected token ' — JSON requires double quotes around strings at line 1, column 2
{"a":1,}InvalidTrailing comma is not allowed in JSON at line 1, column 8
{"a": 01}InvalidInvalid number — leading zeros are not allowed at line 1, column 8
{"a": "b"InvalidUnexpected end of JSON input — missing closing '}'
{"a":1,"b":[true,null],"c":{"d":"x"}}Valid4 keys, depth 2, 36 bytes

How to use this json validator

  1. Paste your JSON into the editor — validation starts automatically as you type.

  2. Read the status card: green means valid, along with key, depth and size stats.

  3. If it is invalid, read the exact error and click “Jump to error” to land on the offending character.

  4. Fix the highlighted spot and watch the card turn green — or click “Fix & format” to beautify once valid.

Common mistakes to avoid

  • Trailing commas after the last elementDelete the comma after the final item — JSON forbids them even though JavaScript allows them.

  • Comments in JSON (// or /* */)Remove them — JSON has no comment syntax. If you must annotate, use a "_comment" key.

  • Single-quoted stringsSwitch to double quotes everywhere: {"name": "Ada"}, keys included.

  • Unquoted object keysEvery object key needs double quotes — {name: 1} is JavaScript, not JSON.

  • Smart quotes pasted from Word or SlackRetype or replace curly “ ” quotes with straight " ones — JSON only accepts the straight form.

Frequently asked questions

Explore more Developer Tools

Format and validate JSON, escape HTML, and ship faster. Every tool is free, instant and private.

View Developer Tools