Why Is My JSON Invalid? Common Causes & Quick Fixes
Getting a "JSON parse error" or "unexpected token" message? You're not alone. Here are the top 10 reasons your JSON might be invalid — and how to fix each one in seconds.
Understanding JSON Parse Errors
When a JSON parser encounters invalid syntax, it throws an error with a message like SyntaxError: Unexpected token or JSON.parse: expected ',' or '}'. These messages point to where the parser gave up, but the actual error is often earlier in the data.
Reason #1: Trailing Commas
The number one cause of invalid JSON. JavaScript allows trailing commas, but JSON does not.
// ❌ Invalid
{"items": ["a", "b", "c",]}
// ✅ Valid
{"items": ["a", "b", "c"]}Reason #2: Single Quotes
JSON strictly requires double quotes. Single quotes are a JavaScript convention that doesn't carry over.
// ❌ Invalid
{'name': 'John'}
// ✅ Valid
{"name": "John"}Reason #3: Unquoted Property Names
Every key in a JSON object must be wrapped in double quotes.
// ❌ Invalid
{name: "John", age: 30}
// ✅ Valid
{"name": "John", "age": 30}Reason #4: Comments
JSON has no comment syntax. Remove all // and /* */ comments.
Reason #5: Missing Commas
Forgetting commas between key-value pairs or array elements is easy to miss in large documents.
// ❌ Invalid
{"first": "John" "last": "Doe"}
// ✅ Valid
{"first": "John", "last": "Doe"}Reason #6: Unescaped Special Characters
Newlines, tabs, and double quotes inside strings must be escaped: \n, \t, \".
Reason #7: Wrong Data Types
JSON only supports: strings, numbers, booleans (true/false), null, arrays, and objects. Values like undefined, NaN, Infinity, or dates are invalid.
// ❌ Invalid
{"value": undefined, "count": NaN}
// ✅ Valid
{"value": null, "count": 0}Reason #8: Mismatched Brackets
Every { needs a }, and every [ needs a ]. Deeply nested structures make this error common.
Reason #9: BOM or Hidden Characters
Byte Order Marks (BOM) or invisible Unicode characters at the start of a file can cause parse failures. Save files as UTF-8 without BOM.
Reason #10: Truncated Data
Incomplete JSON from network timeouts, buffer limits, or copy-paste errors will fail to parse. Ensure you have the complete JSON document.
Validate Your JSON Instantly
Paste your JSON to see exactly what's wrong and auto-fix common errors.
Quick Debugging Checklist
- Paste into a JSON Validator to get the exact error location
- Check for trailing commas after the last item
- Verify all strings use double quotes
- Ensure all keys are quoted
- Look for comments and remove them
- Check for missing commas between elements
- Verify all brackets and braces are balanced
- Use Smart Auto-Repair to fix automatically