What does HTTP 200 mean?
The request succeeded and the response body contains the requested resource. For GET the body is the resource, for POST it is the result of the action. A 200 on an error page (“soft 404”) is a common mistake: the page says “not found”, but the status code says everything is fine.
2xx Success: The request was received, understood and accepted.
200 and SEO
Pages must return 200 to be indexed. Make sure error and “no results” pages return 404 instead, or Google reports them as soft 404s.
Example response
HTTP/1.1 200 OK
How to return a 200 response
Node.js (Express)
res.status(200).json({ error: 'OK' });PHP
http_response_code(200);Python (Flask)
return {'error': 'OK'}, 200Go (net/http)
w.WriteHeader(200)nginx
return 200;
Related status codes
- 201 Created — The request succeeded and a new resource was created.
- 204 No Content — The request succeeded and there is no response body.
- 304 Not Modified — The cached copy is still valid, so the server sends no body.
- 404 Not Found — The server cannot find anything at the requested URL.
Check which status code a URL returns with the HTTP header checker.