Does 'Invalid JSON' always mean my syntax is wrong?
Usually, but a bare 0, false, "", or null value is a known exception — those are valid JSON but report as invalid here due to how the check works.
Check whether pasted text is valid JSON, right in your browser.
This validator runs your pasted text through JSON.parse and reports "Valid JSON" or "Invalid JSON" based on whether that parsed result is truthy. That distinction matters for one specific edge case: a handful of syntactically valid JSON values — the number 0, the boolean false, an empty string "", and null — all parse successfully but are themselves falsy values in JavaScript, so this checker currently reports them as "Invalid JSON" even though they're perfectly valid.
For typical JSON objects and arrays (the vast majority of what gets pasted here), this distinction never comes up, since a non-empty object or array is always truthy. It only matters if you're specifically checking a bare top-level primitive like `0`, `false`, `""`, or `null`.
Use this quick flow to understand where the tool fits in your work and what to review before relying on the output.
Use it for a fast yes/no check on whether a JSON object or array payload is syntactically valid, before pasting it into code, a config file, or a request body.
Quickly confirm whether an API response or request body is syntactically valid JSON.
Check whether a customer-reported payload is valid before assuming it's a code bug.
Get instant feedback on whether a practice example is correctly formatted.
Confirm a test fixture's JSON is valid before using it in a test case.
Reports the check result as soon as you paste text, no button needed.
Relies on the browser's built-in JSON parser for the actual syntax check.
The common case — a top-level object or array — is checked accurately.
Nothing you paste is sent to a server.
Quickly confirming whether an API response or request body is syntactically valid JSON.
Checking whether a customer-reported payload is valid before assuming it's a code bug.
Getting instant feedback on whether a practice JSON example is correctly formatted.
Confirming a test fixture's JSON is valid before using it in a test case.
The check runs using your browser's native JSON.parse — nothing you paste is sent to a server.
Valid JSON like 0, false, "", or null currently reports as "Invalid JSON" here, since the check is based on truthiness rather than parse success alone.
It checks syntax only — not whether required fields exist or values are the right type.
A trailing comma after the last item is a common cause of unexpectedly invalid JSON.
For anything beyond a simple yes/no check, JSON Formatter will show you exactly where a structural problem lives.
JSON Validator gives a fast, reliable yes/no check for typical JSON objects and arrays. For a bare primitive value, or when you need to actually see the structure, use JSON Formatter instead.
Use this tool for quick work. If you need a real file prepared, a page reviewed, or a website issue fixed, send the URL and describe the problem.
FAQ
Answers for using JSON Validator on I Love Tool XYZ.
Usually, but a bare 0, false, "", or null value is a known exception — those are valid JSON but report as invalid here due to how the check works.
No, only syntax — it doesn't check whether required fields exist or values are the right type.
No, the check runs using your browser's native JSON.parse.
This gives a valid/invalid result only; JSON Formatter also shows you the indented structure.