JSON parsing errors are among the most common issues developers face when working with APIs and configuration files. A single missing comma or misplaced quote can break your entire application. This guide covers the most frequent JSON errors, how to identify them, and practical solutions to fix each one.
1. Missing Commas Between Elements
This is the most common JSON error. Every key-value pair in an object and every item in an array must be separated by a comma.
Error Example
{
"name": "John"
"age": 30
}Error: Missing comma after "name" property
Fixed Version
{
"name": "John",
"age": 30
}Solution: Add comma between properties
2. Trailing Commas After Last Element
While JavaScript allows trailing commas, JSON strictly forbids them. A comma after the last element causes a parse error.
Error Example
{
"items": [1, 2, 3,],
"name": "test",
}Error: Trailing commas in array and object
Fixed Version
{
"items": [1, 2, 3],
"name": "test"
}Solution: Remove all trailing commas
3. Using Single Quotes Instead of Double Quotes
JSON specification requires double quotes for all strings and keys. Single quotes are not valid JSON syntax.
Error Example
{
'name': 'John',
'city': 'NYC'
}Error: Single quotes used instead of double quotes
Fixed Version
{
"name": "John",
"city": "NYC"
}Solution: Replace all single quotes with double quotes
4. Unquoted Object Keys
In JavaScript objects, keys can be unquoted, but JSON requires all keys to be wrapped in double quotes.
Error Example
{
name: "John",
age: 30
}Error: Object keys must be quoted
Fixed Version
{
"name": "John",
"age": 30
}Solution: Add double quotes around all keys
5. Missing Quotes on String Values
String values must be enclosed in double quotes. Only numbers, booleans, and null can be unquoted.
Error Example
{
"status": active,
"message": hello world
}Error: String values must be quoted
Fixed Version
{
"status": "active",
"message": "hello world"
}Solution: Quote all string values
6. Unescaped Special Characters
Special characters like newlines, tabs, and quotes inside strings must be escaped with a backslash.
Error Example
{
"text": "Line 1
Line 2",
"quote": "He said "hello""
}Error: Unescaped newline and quotes in strings
Fixed Version
{
"text": "Line 1\nLine 2",
"quote": "He said \"hello\""
}Solution: Use escape sequences for special characters
7. Mismatched or Missing Brackets
Every opening brace or bracket must have a matching closing one. This often happens when manually editing JSON.
Error Example
{
"users": [
{"name": "John"},
{"name": "Jane"
]
}Error: Missing closing brace in second object
Fixed Version
{
"users": [
{"name": "John"},
{"name": "Jane"}
]
}Solution: Ensure all brackets are properly closed
Quick Error Reference
Unexpected tokenUsually missing comma or wrong quote type
Unexpected end of inputMissing closing bracket or brace
Expected property nameUnquoted key or missing comma
Unexpected numberString value not quoted
Tools to Debug JSON Errors
Use these free ByteJSON tools to validate and fix your JSON data:
Prevention Tips
- Use a JSON validator before deploying to production
- Generate JSON with proper libraries instead of manual string construction
- Use an IDE with JSON syntax highlighting and error detection
- Keep JSON formatted during development to spot errors easily
- Test API responses with validation tools before integrating