An HTTP status code describes a particular response. It does not describe the whole website, and it does not replace checking the response body.
A browser can display a designed error page with a working logo and navigation while the main document returns 404. It can also display a “page not found” message with a 200 response. The second case can create a soft-404 problem because the status and content disagree.
Read the response families
| Response | What it means for the investigation | What to check next |
|---|---|---|
| 200 | The request succeeded at the HTTP level | Confirm that the intended content was returned |
| 301 or 308 | A permanent redirect | Inspect the destination and final response |
| 302 or 307 | A temporary redirect | Confirm the temporary behaviour is intentional |
| 304 | A conditional request can reuse a stored representation | Inspect the cache validation context |
| 401 or 403 | Authentication or access restrictions apply | Check credentials, security rules, and expected access |
| 404 or 410 | The requested resource is unavailable | Check whether removal is intended and find incoming links |
| 5xx | The server or an upstream component failed to fulfil the request | Investigate application, infrastructure, and gateway evidence |
The table is a starting point. A 403 from a CDN rule and a 403 from the application may have different owners. A 503 during planned maintenance needs a different response from a persistent application failure.
Check the document independently of its assets
Open Network before reloading and locate the document. Then inspect any failed supporting files. A stylesheet returning 200 only confirms that stylesheet’s response.
For example, /products/missing-item/ may return 404 while /assets/site.css returns 200. The error template still uses the shared stylesheet. Treating the successful CSS request as the page’s status would hide the missing product.
Follow redirects to the end
A 301 from an old page can be correct. The destination still needs to work. Record the original URL, each redirect, and the final response. A redirect ending at a missing page has not restored access to the content.
The redirect testing guide covers permanent and temporary choices, chains, and loops. Google’s HTTP status and network error documentation explains how responses can affect crawling and indexing. A status alone does not promise a particular ranking outcome.
Decide whether an error is intentional
Removed content may correctly return 404 or 410. These codes do not need to disappear from every report. Check whether the URL should exist, whether a relevant replacement exists, and whether current navigation still sends visitors there.
An out-of-stock product is a different decision from a permanently deleted record. A temporary inventory change does not automatically require deleting the page. That policy belongs to the website’s content and indexing strategy.
Investigate server failures as a pattern
For 5xx responses, compare the time, host, route, and page type. Look for application exceptions, exhausted resources, upstream timeouts, or maintenance. A single browser test cannot establish the frequency of an intermittent failure.
Crawl Stats, monitoring, and server logs can help identify whether failures coincide with traffic or particular templates. Keep the error page safe for visitors and retain detailed diagnostics in the server’s own logs.
In a technical SEO audit, the useful output is a response pattern with examples and an owner. For widespread failures or unexpected exclusions, crawl and indexing analysis connects the requests to the affected page groups.
