All HTTP status codes
4xx Client Error
RFC 9110
406 Not Acceptable
The server cannot produce a response matching the client's Accept headers.
What it means
HTTP 406 Not Acceptable means the server cannot generate a response that matches the criteria specified in the request's Accept, Accept-Charset, Accept-Encoding, or Accept-Language headers.
When it's used
Strict content negotiation when the server has no representation that satisfies the client's preferences.
Common causes
- Client requested Accept: application/xml but server only returns JSON
- Accept-Language for an unsupported locale
- Accept-Encoding for unsupported compression
How to fix it
- Add support for the requested format on the server
- Loosen Accept header restrictions on the client
- Implement format fallbacks (e.g., default to JSON if XML unsupported)
Example response
HTTP/1.1 406 Not Acceptable
Content-Type: application/json
{"error":"Only application/json supported"}SEO impact
Should not occur for HTML pages. Crawlers send Accept: */*.