Check JSON Format Online - Free Syntax Tool
Check JSON format before you paste it into code, send it to an API, or hand it to a teammate. Find invalid commas, quotes, keys, and brackets fast.
Paste your JSON → Get results instantly (no signup)
→ Validate this order payload against a small schema config.
1{2 "valid": false,3 "errors": [4 {5 "field": "customer_email",6 "message": "Expected string, received null"7 },8 {9 "field": "total_amount",10 "message": "Expected number, received string"11 },12 {13 "field": "items",14 "message": "Expected array, received number"15 }16 ]17}Love the result?
Use this exact pipeline in your app, backend, or LLM workflow.
No setup needed. Works with curl, Node, Python.
Uses example data. For edited input, copy from the playground.
Works with:
- Hand-edited config files
- Copied JSON snippets
- API payload examples
- Formatter and cleanup workflows
Example: input → output
Check JSON format online
Checking JSON format means confirming that the text is valid standard JSON before it is shared, imported, committed, or sent to an API. The most expensive JSON bugs are often tiny formatting mistakes: one trailing comma, one single-quoted string, one unquoted key, one missing bracket.
This page is for that review step. Paste the document, run the check, and fix any syntax errors before moving on. It uses the same engine as the JSON Schema Validator, but the page is focused on format and syntax rather than contract validation.
How to check JSON format
- Paste your JSON text into the input panel.
- Run the format check.
- If the tool reports an error, fix the line and column it points to.
- Rerun until the document parses cleanly.
- Then format, clean, diff, convert, or validate the structure as needed.
If you are checking a large file, validate the syntax before making cosmetic edits. A formatter or cleaner can only work reliably after the document parses.
Common JSON format issues
- Trailing commas after the last object or array item.
- Single quotes around strings or keys.
- Unquoted keys copied from JavaScript object literals.
- Comments from JSONC or config-like formats.
- Leading-zero numbers such as
007. - Mismatched braces or brackets after copy-paste edits.
When one of these appears, use Fix Invalid JSON to work through the parser error, then return here to check JSON format again.
Check JSON format vs JSON formatter
A JSON formatter usually pretty-prints valid JSON. A JSON format checker tells you whether the input is valid enough to format in the first place. That distinction matters: invalid JSON cannot be safely formatted, converted, diffed, or schema-validated.
After this page passes, use the JSON Formatter to trim strings, sort keys, remove noise, and produce a cleaner version of the payload.
Related JSON Tools
- JSON Schema Validator - validate structure, required fields, and expected types.
- JSON Formatter - format JSON, trim strings, sort keys, and clean noisy values.
- JSON to CSV Converter - turn valid JSON arrays into spreadsheet-ready CSV.
- JSON Diff Tool - compare two valid JSON documents path by path.
- Validate JSON Online - validate JSON online when syntax is the first question.
- JSON Lint - lint JSON online before committing, importing, or sending it to an API.
Frequently asked questions
What does checking JSON format mean?+−
It means checking whether the text is valid standard JSON before formatting, importing, converting, or sending it to an API.
Can a formatter fix invalid JSON automatically?+−
A formatter usually needs valid JSON first. Use this format check to catch parser errors, then format or clean the document once it parses.
Does standard JSON allow comments?+−
No. Comments are common in JSONC and config-like files, but standard JSON parsers reject both // and /* */ comments.
Why do single quotes fail?+−
JSON strings and keys must use double quotes. Single quotes are valid in JavaScript strings, but not in standard JSON documents.
What should I do after the format check passes?+−
Use JSON Formatter or Clean JSON for cleanup, JSON Diff for comparison, JSON to CSV for exports, or JSON Schema Validator for structural checks.
Related tools
Read more on the blog
Advanced usage (optional)
Schema Validation
v1.0.0Description
Schema Validation
Validate JSON against a JSON Schema-style subset and return a field-level report.
This utility is a report-producing transformer. It does not block, skip, warn, or otherwise control pipeline execution. Use validation.contract when a pipeline needs guardrail behavior.
Supported V1 Schema Fields
type:object,array,string,number,boolean, ornullrequired: array of required object keysproperties: object field rulesitems: array item ruleenum: primitive values only, using strings, numbers, booleans, or null
Unknown fields are ignored in V1.
Invalid schema config returns:
{
"valid": false,
"errors": [
{ "field": "$schema", "message": "Missing or invalid schema config" }
]
}Configuration
| Name | Type | Default | Description |
|---|---|---|---|
| Schema Config | json | {"type":"object","required":[],"properties":{}} | JSON Schema-style subset. Supports type, required, properties, items, and primitive enum values. Unknown fields are ignored in V1. |
Examples
Validate this order payload against a small schema config.1{2 "valid": false,3 "errors": [4 {5 "field": "customer_email",6 "message": "Expected string, received null"7 },8 {9 "field": "total_amount",10 "message": "Expected number, received string"11 },12 {13 "field": "items",14 "message": "Expected array, received number"15 }16 ]17}1{2 "type": "object",3 "required": [4 "order_id",5 "customer_email",6 "total_amount",7 "currency",8 "items"9 ],10 "properties": {11 "order_id": {12 "type": "string"13 },14 "customer_email": {15 "type": "string"16 },17 "total_amount": {18 "type": "number"19 },20 "currency": {21 "type": "string",22 "enum": [23 "USD",24 "EUR",25 "GBP"26 ]27 },28 "items": {29 "type": "array",30 "items": {31 "type": "object",32 "required": [33 "sku",34 "qty"35 ],36 "properties": {37 "sku": {38 "type": "string"39 },40 "qty": {41 "type": "number"42 }43 }44 }45 }46 }47}API Usage
curl -X POST https://your-domain.com/api/v1/utilities/validation.schema \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"inputs":{"primary":{"order_id":"ORD_1001","customer_email":null,"total_amount":"42.50","currency":"USD","items":2}},"config":{"schema":{"type":"object","required":["order_id","customer_email","total_amount","currency","items"],"properties":{"order_id":{"type":"string"},"customer_email":{"type":"string"},"total_amount":{"type":"number"},"currency":{"type":"string","enum":["USD","EUR","GBP"]},"items":{"type":"array","items":{"type":"object","required":["sku","qty"],"properties":{"sku":{"type":"string"},"qty":{"type":"number"}}}}}}}}'1{2 "valid": false,3 "errors": [4 {5 "field": "customer_email",6 "message": "Expected string, received null"7 },8 {9 "field": "total_amount",10 "message": "Expected number, received string"11 },12 {13 "field": "items",14 "message": "Expected array, received number"15 }16 ]17}