HTTP 200 OK — Meaning, Causes & How to Fix
The request succeeded. The meaning depends on the method (GET returns the resource, POST the result).
- Code
- 200
- Name
- OK
- Class
- 2xx Success
- Specification
- RFC 9110 §15.3.1
- Cacheable by default
- Yes — heuristically cacheable by default
What HTTP 200 means
200 OK is the standard success response. For GET the body is the requested resource; for POST it is the result of the action; for HEAD it is the same headers with no body. It is the status every indexable page should return.
Common causes
- A normal, successful request.
- An error page that was wrongly configured to return 200 (a “soft 404”).
How to fix it
For site owners
- Make sure real pages return 200 and missing pages return 404 or 410 — never a 200 “not found” page.
- Use 201 for newly created resources and 204 when there is no body, so API clients get precise signals.
For visitors & developers
- Check the body even on 200: some APIs wrap errors inside a 200 response.
SEO impact
Only pages that return 200 can be indexed. A page that says “not found” but returns 200 is reported as a soft 404 in Google Search Console and is usually left out of the index.
Example 200 response
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Cache-Control: max-age=3600
Content-Length: 5120
Related status codes
Check or look up another code
Search and filter every code in the HTTP Status Codes tool, browse the full list by class, or read HTTP status codes explained: the complete developer guide.
Open HTTP Status Codes tool →All status codesFrequently asked questions
What does HTTP 200 mean?
HTTP 200 OK is a 2xx Success status code. The request succeeded. The meaning depends on the method (GET returns the resource, POST the result).
What is a soft 404?
A page that tells visitors it does not exist but returns 200 OK. Search engines detect these and usually do not index them. Return a real 404 or 410 instead.
Which specification defines 200?
It is defined in RFC 9110 §15.3.1.
Is a 200 response cacheable?
Yes. 200 is one of the codes RFC 9110 §15.1 lets caches store heuristically, so it can be reused without explicit caching headers. Send Cache-Control to control how long.