404 Not Found
What a 404 error is, how Google handles 404 pages (de-indexes them over time), the difference between a hard 404 and a soft 404, and best practices for 404 pages in SEO.
A 404 Not Found is the client-error status code a server returns when a URL doesn't exist — a deleted page, a broken link, a typo. 404s are normal and expected: Google doesn't use their content, and the fact that some URLs on your site return a 404 doesn't drag down your other, successful pages — so you don't need to scramble to fix every one. Google de-indexes 404'd URLs over time (re-checking them less and less often), not instantly, and it doesn't promise to ever fully stop trying. The real distinction that matters is hard 404 (correct — actually returns 404) vs. soft 404 (a success code on a page that's really gone), which wastes crawl resources. Only 301-redirect a 404 when the page truly moved to a relevant target — don't blanket-redirect everything to the homepage.
TL;DR — A 404 means “this page doesn’t exist here.” It happens when a URL was deleted, mistyped, or never existed. Here’s the part that surprises people: 404s are normal, and an individual missing URL is not a sitewide ranking penalty. You don’t need to panic when you see them in a report. Just make sure the URL actually returns a real 404 (not a fake “success” page), and only redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. it somewhere if the page truly moved.
One quick scope note: this page is written for the person who owns the site — deciding what to do about 404s that show up in Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. or an Ahrefs crawl. If you’re a visitor who just clicked a dead link, there’s nothing for you to fix. And if your server is misconfigured and won’t return a 404 page at all, that’s a hosting/server question, not an SEO one.
What a 404 error is
When you visit a web page, your browser asks a server for a URL. If the server
finds it, it returns a 200 OK and you see the page. If the server can’t find
that URL, it returns a 404 Not FoundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. — a code that means “the thing you asked
for isn’t here.”
You’ve seen these. Click an old link, mistype a URL, or visit a page that’s since been deleted, and you land on a “Page Not Found” screen. That’s a 404.
Common reasons a 404 shows up:
- A page was deleted (an old blog post, a discontinued product).
- Someone linked to the wrong URL, or a link has a typo.
- A URL changed and the old one wasn’t redirected.
- Someone typed the address wrong in their browser.
Do 404s hurt my SEO?
This is the big worry, so let me answer it directly: no, not by itself. 404 errors are not a penalty, and Google’s own guidance says the fact that some URLs on your site return a 404 doesn’t drag down your other, successful pages. A Googler put it plainly — 404 errors “are not to be afraid of and you don’t need to scramble to fix them, at least not most of the time.” Broken links are a normal part of the web, and Google expects them. (A 404’d page that used to bring you traffic or backlinks is still worth a decision — that’s covered below — but the 404 status itself isn’t the problem.)
What happens instead is quiet and undramatic: over time, Google stops showing the missing page in search and checks it less and less often. Nothing bad spreads to the rest of your site.
When to actually do something
You don’t need to fix every 404. But sometimes it’s worth acting:
- The page moved. If content now lives at a new URL, set up a 301 redirectA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank. from the old URL to the new one so people (and link equityPageRank is Google's original recursive link-graph algorithm: a page's score depends on the scores of the pages linking to it, and in the published model each page's score is split across its outbound links (the simplified version: links are weighted votes). Google says it's evolved since launch but still part of its core ranking systems.) land in the right place.
- The page is just gone. If there’s no replacement, it’s fine to let it stay a 404. That’s the correct outcome.
- A good page has a broken link pointing at it. Fix the link, not the 404.
The one thing to avoid
Don’t fake it. Some sites, trying to be “safe,” redirect every missing URL to the
homepage, or show a “not found” message while secretly returning a 200 OK
success code. Both cause problems (there’s a name for the second one — a soft
404 — covered in the Advanced tab). If a page is gone, let it honestly return a
404. That’s not a mistake to fix; it’s the right answer.
Want the full picture — how Google de-indexes 404s, hard vs. soft 404sA soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing., JavaScript sites, and how to audit them? Switch to the Advanced tab.
TL;DR — A 404 is a
4xxclient-error status code for a URL the server can’t find — the spec (RFC 9110) defines it as “no current representation, or unwillingness to disclose one,” and it doesn’t itself say whether the absence is temporary or permanent. It is not useful indexable content, and the fact that some URLs 404 doesn’t drag down your site’s other, successful URLs. Removal from search can be gradual, not instant: Google removes a previously-indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. 404’d URL and re-crawls it at a decreasing frequency; the source language is that GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. “will probably” keep retrying for some period, not that it retries forever. The distinction that actually matters is hard 404 vs. soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.: returning200(or blanket-redirecting to the homepage) for gone content wastes crawl resources and misleads your analytics. 301-redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. only when a page genuinely moved to a relevant target; otherwise let it 404 (or410) cleanly. Custom 404 pages are a UX/retention lever, not an indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. one.
What a 404 actually is
404 Not FoundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. is an HTTP client-error status code (4xx) the server returns
when it can’t find the requested URL. The 4xx class means the request is the
problem — the resource doesn’t exist at that address — as opposed to 5xx server
errors, where the server itself is failing.
The HTTP spec itself (RFC 9110) defines 404 more narrowly than the day-to-day SEO
conversation implies: the origin either has no current representation for the
target resource, or is unwilling to disclose that one exists. The status code
alone doesn’t say whether the absence is temporary or permanent — that judgment
call is yours to make with a redirect, a 410, or just leaving the 404 in place.
One practical quirk worth knowing: a 404 response is heuristically cacheable by
default, so a browser or intermediate cache can keep serving a stale 404 for a URL
that has since started working again, unless your server sends cache-controlCaching stores a copy of a page or resource — in a browser, a CDN edge node, or a search crawler's own cache — so it can be served again without regenerating or re-downloading it. It isn't a direct ranking factor, but it feeds page speed and crawl efficiency.
headers that say otherwise.
They come from all the ordinary churn of a website: deleted pages, discontinued products, retired campaigns, broken or mistyped internal and external links, and URL changes that weren’t redirected. None of that is unusual, and none of it is inherently a problem to solve.
The fact that a URL 404s doesn’t hurt your other pages
Start here, because most of the anxiety around 404s is misplaced. Google’s own
documentation is explicit: “Google doesn’t use the content from URLs that return
4xx status codes.” There’s nothing on a 404 page for Google to score. And
Google’s own guidance is specific on the scope of the claim: the fact that some
URLs on a site return 404 doesn’t affect the performance of that site’s other,
successful URLs. That’s the sourced boundary — it isn’t a blanket promise that
every 404-adjacent situation is harmless. A page Google can’t find that you wanted
indexed, a good page that lost its inbound links, or a broken user path are
separate problems the 404 status code alone doesn’t fix or cause.
Google’s people have said the same thing in plainer language for years. Gary Illyes: 404s “are not to be afraid of and you don’t need to scramble to fix them, at least not most of the time.” John Mueller has repeatedly called 404s “fine & expected.” Even sites with enormous numbers of 404/410 URLs don’t see a domain-wide penalty for them. The specific fear that 404s are a ranking or quality signal is a myth — though a 404’d page that used to earn you traffic or links is still worth a decision, covered below.
How Google removes a 404’d URL from the index
De-indexing is real, but it’s gradual and undramatic. Google’s docs describe the
mechanic: “the indexing pipeline removes the URL from the index if it was
previously indexed. Newly encountered 404 pages aren’t processed. The crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor.
frequency gradually decreases.”
Two consequences worth internalizing:
- A previously-indexed URL that starts returning 404 gets dropped from the index, and a URL first discovered as a 404 is simply never processed.
- GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. keeps retrying the URL, just less and less often. As Search Console Help puts it: “Googlebot will probably continue to try this URL for some period of time; there is no way to tell Googlebot to permanently forget a URL, although it will crawl it less and less often.” Note the bounded wording — “probably,” “for some period of time” — Google doesn’t promise this continues forever, just that there’s no button to force it to stop early. So seeing a known 404 keep appearing in your reports for a while is expected — it’s not a sign something is broken.
Can you speed it up? Not really. The Removals toolA Google Search Console feature for verified owners to manage how their URLs appear in Search. A Temporary Removal hides a URL for about six months — it does not delete the page from the index. in Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. hides a URL temporarily (about six months), which is useful for urgent cases, but it’s a temporary hide, not a permanent de-index. For genuine removal you return the right status code and let the gradual process run.
404 vs. 410 Gone
Both 404 (Not Found) and 410 (Gone) drop a page from the index, and the
practical SEO difference is negligible. 410 is the marginally stronger, faster
“this is intentionally gone” signal — but as Mueller has said, the difference in
processing is so minimal it rarely justifies choosing one over the other for SEO.
Use 410 if your CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. makes it easy and you want to signal permanent removal;
otherwise a plain 404 is completely fine. (There’s a dedicated comparison of
these two elsewhere in this cluster.)
Hard 404 vs. soft 404 — the distinction that matters
This is where real SEO problems live, not in the existence of 404s themselves.
- Hard 404 — the server genuinely returns the
404status code for missing content. This is correct. CrawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. read the code, understand the page is gone, and handle it cleanly. - Soft 404 — the server returns a success code (usually
200 OK) for a page whose content is really an error: an empty page, a “not found” message, or a redirect to the homepage. Google detects these algorithmically. Its docs: “If the content suggests an error for Google Search, an empty page or an error message, Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance. will show asoft 404error.”
Why soft 404s are worse than real ones is a crawl-efficiency problem. A crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index.
can’t tell from a 200 that the content is gone, so it keeps re-fetching those
URLs. Illyes described exactly this: crawlers “use the status codes to interpret
whether a fetch was successful, even if the contents of the page is basically just
an error message. They might happily go back to the same page again and again
wasting your resources, and if there are many such pages, exponentially more
resources.” Google’s guidance is unambiguous: “We recommend returning a 404
response code for truly ‘not found’ pages.”
John Mueller frames the whole thing well on his personal site: “Using soft-404s instead of real 404s is a bad practice, and it makes things harder for our algorithms,” while “returning 404 — and having the URLs listed in the crawl errors in Webmaster Tools — is not a problem.” In other words: the honest 404 is the good outcome; the fake success code is the bug.
Where accidental soft 404s come from
- Blanket-redirecting every 404 to the homepage. The homepage returns
200, so from the engine’s view a “missing” URL now resolves successfully to unrelated content — a soft-404 pattern (more on why this is bad below). - JavaScript / SPA “not found” states. Client-side routers can’t natively
throw a server-level
404. A single-page app that renders a “Page not found” component while the server still returns200is a soft 404 — and it also corrupts your analytics, because the status code no longer matches reality, so GA4, GSC, and crawlers all record a “successful” hit on a dead page. The fixes: server-side route those URLs to a real404response, or (weaker) render the not-found state withnoindexand accept the tracking tradeoffs. - CMS / template misconfigurations where a deleted item falls through to a
generic template served with
200.
When to fix a 404 (and when to leave it)
The decision tree is short:
- Let it 404 (or 410) if the page has no real value, no traffic, and no backlinks. This is the default and it’s correct — no action needed.
- 301-redirect it only if the page genuinely moved, or if it has real backlinks/traffic worth preserving. A relevant redirect recovers link equity; Search Console Help agrees: “If your page has moved, use a 301 redirectA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank. to the new location.” My own workflow at Ahrefs: use Site Explorer’s “Best by links” report, filter for 404-responding URLs, prioritize by referring domains, and redirect the valuable ones to the closest relevant live page.
- Don’t blanket-redirect to the homepage. Martin Splitt is blunt about this: “If it moved somewhere else, use a redirect. If it’s gone, don’t redirect me to the homepage.” It creates a soft-404-like signal and, in his words, “it annoys me as a user.” A 404, he notes, is “a very clear signal this link is wrong and broken or this URL no longer exists.” Only redirect to a specific, genuinely relevant target.
Reduced to a quick matrix, this is the whole decision:
| Page has real backlinks/traffic? | Relevant live replacement exists? | Action |
|---|---|---|
| No | No | Let it 404 (or 410). No action needed. |
| Yes | Yes | 301-redirect to the specific relevant page. |
| Yes | No | Consider rebuilding the page or redirecting to the closest relevant category; don’t redirect to the homepage by default. |
| No | Yes (broken internal linkAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. pointed at it) | Fix the link that points at the 404, not the 404 itself. |
Custom 404 pages: UX lever, not an indexing lever
A good custom 404 page doesn’t change how Google indexes the URL — the status code does that. What it changes is what happens to the human who hit the dead link. A helpful 404 page keeps them on your site instead of bouncing, which protects conversions and engagement. So there are two separate jobs:
- Status code correctness (the SEO/crawler side): the page must still return a
real
404. A beautifully designed custom 404 page that returns200is a soft 404 — you’ve solved the UX problem and created a crawl problem. - On-page helpfulness (the UX side): clear messaging that the page is gone, your main navigation and a search box, and links to popular or related content. Mueller’s advice: “Think about ways that you can make your 404 pages useful to users, so that they recognize that the page no longer exists, and so that they can find something else that’s appropriate.”
How to find and audit 404s
- Google Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. — Page indexing reportThe Google Search Console report (formerly Index Coverage) showing how many of your URLs are indexed vs. not indexed, and grouping the not-indexed ones by reason.. Surfaces both “Not found (404)” and “Soft 404” statuses, with example URLs.
- Ahrefs Site Audit / Site Explorer. Site Audit flags 404s and broken internal links; Site Explorer (“Best by links”) lets you find 404’d URLs that still have backlinks so you can prioritize redirects by referring domains.
- Ahrefs Web Analytics. For the traffic companion, filter Possible 404 pages to the AI SearchAI search uses large language models and retrieval-augmented generation (RAG) to synthesize an answer from multiple sources rather than returning a ranked list of links. Examples include Google AI Overviews, ChatGPT Search, and Perplexity. channel and sort by sessions. That surfaces candidate URLs receiving AI-referred clicks in the selected window; it does not prove the response is a 404 or that the URL was hallucinated. I document the validation steps in AI Hallucination MonitoringAI hallucination monitoring is the practice of systematically detecting, documenting, and fixing instances where AI search tools and chatbots fabricate or misrepresent facts about your brand — wrong pricing, invented quotes, made-up URLs, and the like..
- Screaming Frog and server log analysis for a full crawl-level and real-traffic view of which 404s bots and users actually hit.
Bing, briefly
Bing’s public commentary here is much thinner than Google’s, so don’t assume exact parity, and treat the specifics below as less firmly sourced than the Google section above. Bing Webmaster ToolsMicrosoft's free portal for monitoring and improving how a site appears in Bing search — the peer to Google Search Console, plus IndexNow instant indexing, richer backlink data, and keyword volumes. Because Bing's index also feeds Microsoft Copilot, it doubles as a window into AI-search visibility. does offer a Content Removal tool for notifying Bing about a URL you want treated as gone, and a Crawl Information report that surfaces 404s and server errors — those tools are documented. What’s not independently verified in current primary sources is the specific claim that Bing runs a classifier to distinguish “temporarily down” from “genuinely deleted,” or that using Content Removal meaningfully speeds up de-indexing versus just returning a correct 404 and waiting. Treat Bing as secondary to the well-documented Google behavior above, and don’t repeat the classifier/speed claims as settled fact.
For the broader status-code picture, see my HTTP Status Codes & Their SEO Impact and 11 Types Of Redirects & Their SEO Impact.
A friendly not-found template can still return 200 and become a soft 404. The response code and final destination must match the visible state.
Run the URL through my HTTP Status Checker to distinguish a real 404 from a redirect, server error, or success-coded error page. HTTP Status Checker Free
- Test the exact missing URL without browser cache.
- Confirm the final response is 404 and not a 200 template, redirect loop, or irrelevant homepage redirect.
- If a true replacement exists, add one relevant permanent redirect and retest the chain.
AI summary
A condensed take on the Advanced version:
- A 404 Not FoundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. is a
4xxclient-error status code for a URL the server can’t find (deleted pages, broken links, typos, URL changes). RFC 9110 defines it as “no current representation, or unwillingness to disclose one” — it doesn’t itself say whether the absence is temporary or permanent, and it’s heuristically cacheable by default. - Not a signal that hurts your other pages. Google “doesn’t use the content
from URLs that return
4xxstatus codes,” and the fact that some URLs 404 doesn’t affect the performance of your site’s other, successful URLs. “404s hurt rankings” as a blanket fear is a myth; Illyes and Mueller have said repeatedly that 404s are fine and expected — though a 404’d page that used to earn traffic or links is still worth a decision. - De-indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. is gradual, not instant. Google drops a previously-indexed 404’d URL and re-crawls it “less and less often.” The source wording is bounded — GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. “probably” keeps retrying “for some period of time,” not forever. The Removals toolA Google Search Console feature for verified owners to manage how their URLs appear in Search. A Temporary Removal hides a URL for about six months — it does not delete the page from the index. only temporarily hides a URL (~6 months).
- 404 vs. 410: both drop from the index;
410is marginally faster/stronger, but the SEO difference is negligible (Mueller). - Hard vs. soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing. is the real issue. A soft 404 returns a success code
(
200) for gone content — it wastes crawl resources because botsA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. can’t tell the page is gone. Google recommends returning a true404. - Common soft-404 causes: blanket-redirecting every 404 to the homepage, JS/SPA
“not found” states returning
200(which also corrupts analytics), and CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. misconfigs. - Only 301-redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. when a page truly moved or has valuable backlinks/traffic; otherwise let it 404 cleanly. Splitt: don’t redirect gone pages to the homepage.
- Custom 404 pages help UX/retention, not indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. — and must still return a
real
404. - Audit via GSCA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. Page indexing reportThe Google Search Console report (formerly Index Coverage) showing how many of your URLs are indexed vs. not indexed, and grouping the not-indexed ones by reason., Ahrefs Site Audit/Site Explorer, Screaming Frog, and server logs.
Official documentation
Primary-source documentation from the search engines.
- How HTTP status codes, and network and DNS errors affect Google Search — how Google treats
4xx(including 404), the de-indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. mechanic, and the inline soft-404 definition. - Page indexing report (Search Console Help) — the “Not foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. (404)” and “Soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.” statuses, plus fix guidance.
- Redirects and Google Search — when and how to 301-redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. a moved page instead of letting it 404.
- Remove a page hosted on your site from Google (Removals tool) — temporary hiding vs. permanent removal.
Bing / Microsoft
- Bing Webmaster Tools Help — crawl reports and the Content Removal tool for notifying Bing of genuine 404s.
Quotes from the source
On-the-record statements from Google. Each Google-docs link is a deep link that jumps to the quoted passage on the source page; relayed statements link to the coverage that reproduced them.
Google Search Central — how 404s are handled
- “Google doesn’t use the content from URLs that return
4xxstatus codes. If a URL was previously used but is now returning4xxstatus code, Google systems will stop using the URL over time.” Jump to quote - “Google doesn’t indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. URLs that return a
4xxstatus code, and URLs that are already indexed and return a4xxstatus code are removed from the index.” Jump to quote - “In the case of Google Search, the indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. pipeline removes the URL from the index if it was previously indexed. Newly encountered
404pages aren’t processed. The crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. frequency gradually decreases.” Jump to quote - “If the content suggests an error for Google Search, an empty page or an error message, Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. will show a
soft 404error.” Jump to quote
Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance. Help — Page indexing reportThe Google Search Console report (formerly Index Coverage) showing how many of your URLs are indexed vs. not indexed, and grouping the not-indexed ones by reason.
- “404 responses are not necessarily a problem, if the page has been removed without any replacement. If your page has moved, use a 301 redirectA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank. to the new location.” Jump to quote
- “GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. will probably continue to try this URL for some period of time; there is no way to tell GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. to permanently forget a URL, although it will crawl it less and less often.” Jump to quote
- “We recommend returning a 404 response code for truly ‘not foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore.’ pages and adding more information on the page to let us know that it is not a soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing..” Jump to quote
Gary Illyes, Google (via SEJ’s reproduction of his LinkedIn posts — verify against the original LinkedIn wording, which resists automated fetching)
- “404 (Not found) errors are not to be afraid of and you don’t need to scramble to fix them, at least not most of the time.” Relayed from Illyes’ LinkedIn post.
- “CrawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. use the status codes to interpret whether a fetch was successful, even if the contents of the page is basically just an error message. They might happily go back to the same page again and again wasting your resources, and if there are many such pages, exponentially more resources.” Relayed via Search Engine Journal; confirm against the original before final use.
John Mueller, Google — johnmu.com/soft-404s-your-site
- “Using soft-404s instead of real 404s is a bad practice, and it makes things harder for our algorithms.”
- “Returning 404 — and having the URLs listed in the crawl errors in Webmaster Tools — is not a problem.”
- “Think about ways that you can make your 404 pages useful to users, so that they recognize that the page no longer exists, and so that they can find something else that’s appropriate.” From Mueller’s personal site; re-verify the exact substrings on the live page before generating deep links from them.
Martin Splitt, Google (via SEJ’s coverage of an SEO Office Hours short — verify against the original video)
- “If it moved somewhere else, use a redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.. If it’s gone, don’t redirect me to the homepage.”
- “A 404 is a very clear signal this link is wrong and broken or this URL no longer exists.” Relayed via Search Engine Journal.
What not to do with 404s
1. Blanket-redirecting every 404 to the homepage.
The instinct is “a redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. looks safer than an error.” It isn’t. The homepage
returns 200, so a genuinely-gone URL now resolves “successfully” to unrelated
content — that’s a soft-404 pattern, and Splitt explicitly calls it out as
annoying and unhelpful. Fix: redirect only to a specific, relevant target
when a page actually moved; otherwise let it 404.
2. Soft-404ing instead of returning a real 404.
Serving a “Page not foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore.” message (or an empty page) with a 200 OK tells
crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. the fetch succeeded. They keep re-crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. it, wasting resources, and your
analytics record a “successful” hit on a dead page. Fix: return an actual 404
(or 410) status code for gone content — Google explicitly recommends this.
3. Panicking and “fixing” every 404 in your reports. 404s in GSCA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. or a site audit are normal and expected. Reflexively redirecting or resurrecting every one wastes time and often creates soft 404sA soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.. Fix: triage — redirect the few with real backlinks/traffic, leave the rest.
4. Trying to force Google to “forget” a URL instantly. There’s no button for that. The Removals toolA Google Search Console feature for verified owners to manage how their URLs appear in Search. A Temporary Removal hides a URL for about six months — it does not delete the page from the index. is a temporary (~6-month) hide, not a permanent de-indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed.. Fix: return the right status code and let the crawl frequency taper off on its own.
5. Shipping a JS/SPA “not found” screen that returns 200.
Client-side routers can’t throw a server 404, so a rendered not-found component
over a 200 response is a soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing. that also corrupts your tracking. Fix:
server-side route those paths to a real 404, or at minimum noindex the
not-found state and accept the analytics tradeoffs.
6. Treating a pretty custom 404 page as an SEO fix.
A well-designed 404 page helps users, not indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. — and if it returns 200
it’s a soft 404. Fix: keep the real status code and make the page helpful;
they’re two separate jobs.
Good vs. bad 404 handling
A bad custom 404 page
- Returns a
200 OKstatus code while showing “Page not foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore.” (a soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.). - Or it’s the raw server-default page: a bare “Not Found” on a white background, with no navigation and no way forward.
- Dead-ends the user — no search box, no links, nothing on-brand.
- Result: crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. keep re-fetching it (soft 404), users bounce, and any link equity pointing at the URL is stranded.
A good custom 404 page
- Returns a real
404status code (the crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index./indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. side is handled correctly). - Clearly says the page doesn’t exist, in plain language.
- Includes your main navigation and a search box so the user can find what they were after.
- Offers links to popular or related content (top articles, main categories).
- Stays on-brand — same header, footer, and styling as the rest of the site, so the user knows they’re still in the right place.
The two properties are independent: the status code keeps search engines happy; the
on-page design keeps humans from leaving. A page can nail one and fail the other —
a gorgeous 404 page that returns 200 is still a soft 404, and a correct 404
that dead-ends the user still loses the visitor.
Good vs. bad redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. handling for a gone URL
- Bad: every deleted product 301-redirects to the homepage → soft-404-like signal, frustrated users.
- Good: a deleted product with backlinks 301-redirects to the closest relevant
live page (its parent category or a replacement product); a deleted product with
no value and no links simply returns
404.
404 audit & handling checklist
- Missing URLs return a real
404(or410) status code — verify the code, don’t trust the on-page message. - No soft 404sA soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.: no “not foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore.” content served with a
200, and no blanket redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. of gone pages to the homepage. - GSCA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. Page indexing reportThe Google Search Console report (formerly Index Coverage) showing how many of your URLs are indexed vs. not indexed, and grouping the not-indexed ones by reason. reviewed for both “Not found (404)” and “Soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.” statuses.
- 404’d URLs with real backlinks/traffic identified (Ahrefs Site Explorer “Best by links”, filter for 404s) and 301-redirected to a relevant live page.
- Gone pages with no value and no links left to 404 — not redirected, not resurrected.
- Redirects point to a specific, relevant target, never a catch-all homepage redirect.
- The custom 404 page is helpful (clear message, navigation, search, links
to popular content) and still returns a
404. - For JS/SPA sites: not-found routes resolve to a real server
404, or are at leastnoindex’d, and analytics aren’t recording them as successful hits. - Not wasting effort “fixing” every 404 — triaged, not blanket-actioned.
Patrick's relevant free tools
- Website Down Checker — Check whether one URL or a small sample is reachable right now from one Cloudflare location, with response timing, redirects, DNS fallback evidence, and connection-status details.
Tools for finding and handling 404s
- Google Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. — Page indexing reportThe Google Search Console report (formerly Index Coverage) showing how many of your URLs are indexed vs. not indexed, and grouping the not-indexed ones by reason. — Google’s own view of “Not foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. (404)” and “Soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing.” statuses, with example URLs and the ability to request validation after fixes.
- Ahrefs Site Audit — flags 404s and broken internal linksAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. across a crawl of your site.
- Ahrefs Site Explorer (“Best by links”) — find 404’d URLs that still have backlinks, sorted by referring domains, so you can prioritize which ones deserve a 301 redirectA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank..
- Screaming Frog SEO SpiderA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. — crawl-level view of every 404 (and its source links) on your site.
- Server log file analysisLog file analysis is reading a web server's raw access logs to see exactly which URLs search engine crawlers actually requested, when, how often, and what status code they got. Unlike crawl tools or Search Console, logs are the unsampled, ground-truth record of what really happened. — see which 404s real bots and users are actually hitting, and how often.
- Bing Webmaster ToolsMicrosoft's free portal for monitoring and improving how a site appears in Bing search — the peer to Google Search Console, plus IndexNow instant indexing, richer backlink data, and keyword volumes. Because Bing's index also feeds Microsoft Copilot, it doubles as a window into AI-search visibility. — crawl reports surfacing 404s/server errors, plus the Content Removal tool to flag a URL you want treated as gone (Bing’s own classifier and speed-of-removal specifics aren’t independently verified, so treat this as secondary to the GSC-documented Google behavior).
- URL Inspection (GSC) — check the fetched status code for a single URL to confirm it’s a real 404 (not a soft 404).
Resources worth your time
My related writing
- HTTP Status Codes & Their SEO Impact — the full status-code picture, including where 404, 410, and soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing. fit.
- 11 Types Of Redirects & Their SEO Impact — when to 301-redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. a would-be-404 versus letting it 404/410.
- The Beginner’s Guide to Technical SEO — where status codes sit in the bigger technical picture.
- JavaScript SEO Issues & Best Practices — the renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. context behind JS/SPA soft-404 pitfalls.
My speaking
- How Search Works (SlideShare) — my walkthrough of crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor., renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM., and indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., the pipeline 404s flow through. (My standing disclaimer applies: “This is my understanding of systems… not going to be 100% complete or accurate.”)
From around the industry
- How HTTP status codes affect Google Search (Google Search Central) — the primary source for how
4xx/404 is handled. - Page indexing report (Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results. Help) — the canonical hard-404 and soft-404 definitions and fix guidance.
- Soft-404s & your site (John Mueller) — Google’s own take on why soft 404sA soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing. are worse than real ones.
- Google Warns Of Soft 404 Errors And Their Impact On SEO (Search Engine Journal) — coverage of Illyes on soft 404s and wasted crawl resources.
- Google’s John Mueller Clarifies 404 & 410 Confusion For SEO (Search Engine Journal) — why the 404-vs-410 difference is negligible for SEO.
- Google’s Martin Splitt Warns Against Redirecting 404s To Homepage (Search Engine Journal) — the case against blanket homepage redirects.
- 404 Not Found error pages: the do’s and don’ts (Yoast) — good/bad custom 404 page examples and do’s/don’ts.
- Everything You Need to Know About 404 Errors for SEO (Seer Interactive) — a severity-tiered framework for prioritizing 404 fixes.
Test yourself: 404 Not Found
Five quick questions on what 404s mean for SEO and how to handle them. Pick an answer for each, then check.
404 Not Found
404 Not Found is the HTTP client-error status code a server returns when it can't find the requested URL — RFC 9110 defines it as no current representation, or unwillingness to disclose one. A "hard 404" actually returns the 404 status; a "soft 404" returns a success code (like 200) for a page that's really gone. 404s are normal and expected: the fact that some URLs 404 doesn't affect your site's other, successful pages, and Google de-indexes 404'd URLs over time (probably retrying for some period, less and less often).
Related: Soft 404, 410 Gone, HTTP Status Code
404 Not Found
A 404 Not FoundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. error is what a server returns when someone requests a URL it can’t find — a deleted page, a broken link, a typo, an expired product. It’s a 4xx client-error status code, meaning the problem is with the request (the URL doesn’t exist here), not the server itself. The HTTP spec (RFC 9110) defines it narrowly: the origin has no current representation for the resource, or is unwilling to disclose that one exists — the code alone doesn’t say whether the absence is temporary or permanent.
There are two flavors that behave very differently for SEO:
- Hard 404 — the server genuinely returns the
404status code. This is the correct behavior for content that’s truly gone. Search engines read the status code, understand the page is missing, and de-indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. it over time. - Soft 404A soft 404 is a URL that returns a success status code (usually 200 OK) even though the page is empty, missing, or shows a 'not found' message. It isn't a status code a server sends — it's a label search engines apply after comparing the response code against the rendered content, and they treat the page like a 404 for indexing. — the server returns a success code (usually
200 OK) for a page whose content is actually an error (“not found,” an empty page, or a redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. to the homepage). Google detects these algorithmically and flags them in Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results., but they’re worse than real 404s because a crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. can’t tell from the status code alone that the content is gone, so it keeps wasting resources re-crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. them.
The most important thing to know: 404s are not a penalty. Google doesn’t use the content of a 404 page, and its own guidance is that the fact some URLs on a site return 404 doesn’t affect the performance of that site’s other, successful URLs. Broken links are a normal part of the web. What matters is returning the right status code — a clean hard 404 (or 410 Gone) for content that’s gone, and a 301 redirect only when a page genuinely moved to a relevant new location.
Related: Soft 404, 410 Gone, HTTP Status Code
Build-time retrieval analysis plus live signals for this exact article. The automatic chunk report includes a deterministic readiness score and is ready without a model download.
Search Console
sampleGA4 traffic (28d)
sampleCloudflare traffic (7d)
sampledCrUX field data (28d, phone)
sampleGoogle NLP entities
localChangelog
Revision history
Compare the published article with an archived editorial snapshot. Added and removed words are shown only after you open a comparison.
Updated Jul 17, 2026.
Editorial summary and recorded change details.Summary
Bounded recrawl, site-quality, and Bing claims to what current sources actually establish.
Change details
-
Added an evidence/action matrix using backlinks, traffic, and replacement availability to choose between restoring, redirecting, or leaving a 404.
Try it live
This is a real endpoint on this site — not a simulation.
Hit it from the button, open it in a new tab, or
curl -i it from your terminal, and the server answers with the actual status code this article is about.