404 vs 410: How to Handle Removed Pages the Right Way

No Comments
404 vs 410: how to handle removed pages the right way
TL;DR

A 404 (Not Found) and a 410 (Gone) both tell crawlers a URL has no content, and Google will drop both from its index over time. A 410 is the more explicit "this is permanently gone" signal, and Google tends to act on it a little faster, but the end state is the same. Use a 301 redirect only when a genuinely equivalent page exists. Return 404 or 410 when content is truly gone with no replacement. A page returning 404 does not directly harm your rankings. The real cost comes from deleting pages that earned links or traffic, and from poor housekeeping such as dead internal links and stale sitemaps.

What 404 and 410 mean

Both 404 and 410 are HTTP status codes in the 4xx "client error" family. They describe the same broad situation, a request for a resource the server will not return, but they differ in certainty.

404 Not Found means the server cannot find a resource matching the request. It is deliberately open-ended. The page may never have existed, may have been moved without a redirect, may be temporarily unavailable, or may have been deleted. The 404 makes no promise about whether the URL will return.

410 Gone is more specific. It means the resource was available before and has been intentionally removed, with no forwarding address, and the condition is expected to be permanent. In plain terms, 404 says "I cannot find this," while 410 says "this used to be here and it is gone for good."

For human visitors the two are nearly identical, since most servers render the same error page for both. The distinction matters most to crawlers and to the engineers deciding how to retire a URL.

How Google treats each

Google has been consistent on this for years. Both 404 and 410 lead to the same outcome: the URL is eventually removed from the index. A 410 is treated as a slightly more definitive signal, and Google may stop attempting to recrawl it a little sooner than a 404, which it sometimes revisits in case the page comes back. But the gap is measured in a small number of recrawl cycles, not in ranking impact.

The important point is that neither code carries a penalty. Removing a page that genuinely has no equivalent is normal site maintenance, and search engines expect it. Google does not lower the rankings of your remaining pages because some URLs return 404 or 410. Treat the choice between the two as a question of how quickly and clearly you want the URL flushed from the index, not as a ranking lever.

One caveat: Googlebot can be slow. Even a clean 410 may linger in Search Console reports for a while before it clears, and a cached snippet can persist briefly. That is expected behavior, not a problem to fix.

404, 410, or 301: how to choose

The decision rests on one question: does an equivalent page exist that satisfies the same user intent?

Use a 301 redirect when

A specific, genuinely equivalent page exists. A product moved to a new URL, an article was consolidated into a better one, or a category was renamed. The redirect should point to the closest match, never to the homepage as a catch-all. A 301 passes the page's accumulated equity to the target.

Use 404 or 410 when

The content is gone and nothing on your site replaces it. A discontinued product with no successor, an expired campaign, a deleted thin page. Choose 410 when you are certain the removal is permanent and want the cleanest signal. Choose 404 when you are less certain or when your platform makes 410 hard to emit.

A useful rule: redirect for continuity, return a gone status for closure. Redirecting an irrelevant URL to a loosely related page, or to the homepage, creates a poor experience and is often interpreted as a soft 404 anyway, which defeats the purpose. If you would not send a human there expecting them to find what they wanted, do not redirect there. For the difference between permanent and temporary redirects, see our guide to 301 vs 302 redirects.

Implementation

Returning a 404 usually requires no work, since servers and content management systems emit it automatically for missing URLs. Returning a 410 is a deliberate act. Here is how to send a 410 for one URL or a small set of URLs.

Apache, in your .htaccess file or virtual host config:

# Return 410 Gone for a single removed URL
Redirect 410 /old-product-page/

# Return 410 for several removed URLs
<Location "/discontinued/widget-a/">
    Redirect 410
</Location>

# Match a pattern of removed URLs with RewriteRule
RewriteEngine On
RewriteRule ^expired-promo/ - [G]

The [G] flag in a RewriteRule is shorthand for "Gone" and emits a 410.

Nginx, in your server block:

# Return 410 Gone for a single removed URL
location = /old-product-page/ {
    return 410;
}

# Return 410 for a directory of removed content
location ^~ /discontinued/ {
    return 410;
}

# Optional: serve a friendly body with the 410
error_page 410 /gone.html;
location = /gone.html {
    internal;
}

Reload the server after editing config (nginx -s reload or apachectl graceful) and confirm the response with a header check, for example curl -I https://example.com/old-product-page/, which should show HTTP/1.1 410 Gone.

Handling removed pages at scale

When you retire many URLs at once, the status code is only part of the job. Good housekeeping around it is what keeps the site clean and the user experience intact.

Build a custom 404 page. The default server error page is a dead end. A branded 404 that returns the correct status code, offers a search box, and links to your main sections turns a mistake into a recovery path. Make sure it actually returns 404 and not 200, which would create a soft 404.

Drive removals from server config, not page logic. For large sets, manage 410 and 301 rules in the server or a centralized redirect map rather than scattering them across templates. This keeps the rules auditable and avoids conflicting handlers.

Remove internal links to dead URLs. Crawlers find dead pages through your own links. After you retire URLs, sweep the site for links pointing at them in navigation, body content, and footers, and either repoint or delete those links. Leaving them in place wastes crawl budget and frustrates visitors.

Keep your XML sitemap clean. A sitemap should list only live, indexable URLs that return 200. Remove retired URLs from it promptly. Listing a 404 or 410 in a sitemap sends mixed signals and can slow down how fast the removal is recognized. If you control crawler access more broadly, our robots.txt reference explains what belongs there and what does not.

Common mistakes

Redirecting everything to the homepage. This is the most common error when sites delete pages in bulk. A blanket redirect to the root sends users somewhere that does not answer their request, and Google generally treats these mass homepage redirects as soft 404s, so they do not preserve value and do not even keep the URL out of error reports. Redirect to a true equivalent or return a gone status. Do not split the difference with the homepage.

Soft 404s. A soft 404 is a page that looks like an error to a human but returns a 200 OK status to crawlers, or a thin "not found" message served with a success code. Google flags these because the signal contradicts the content. Empty category pages, expired listings that still render a stub, and JavaScript apps that show "no results" without setting the status are typical culprits. The fix is to return the honest code: 404, 410, or a 301 to a real replacement. We cover the diagnosis and repair in detail in our guide to soft 404 errors.

Deleting valuable pages without a plan. The myth that 404s hurt rankings persists because people notice traffic drops after deleting pages and blame the status code. The status code is not the cause. The loss comes from removing a page that earned links and traffic without redirecting its equity to a worthy successor. Before you delete, check whether the URL has backlinks or meaningful traffic. If it does, redirect it to the best equivalent rather than letting it go dark.

FAQ

Does a 410 remove a page from Google faster than a 404?

Usually a little. Google treats 410 as a more definitive removal signal and may stop recrawling it sooner, while it sometimes revisits 404s in case the page returns. Both end up deindexed. The speed difference is modest and rarely worth agonizing over.

Do 404 errors hurt my SEO?

Not directly. A URL returning 404 does not lower the rankings of your other pages. The harm people attribute to 404s actually comes from deleting pages that had links or traffic, and from poor cleanup such as dead internal links. Fix those and the 404 itself is harmless.

Should I redirect a deleted page to my homepage?

No. Redirect only to a genuinely equivalent page. A redirect to the homepage is usually treated as a soft 404 and provides a poor experience. If no equivalent exists, return a 404 or 410 instead.

How do I confirm a page is actually returning 410?

Check the response header directly, for example with curl -I https://example.com/old-page/ or your browser's developer tools network tab. You should see the status line read 410 Gone. Do not rely on the rendered page, since the visible message can be misleading.

Retiring pages without losing equity?

We map your removed URLs to the right status codes, redirects, and cleanup so nothing of value leaks away.

Request an advanced SEO audit

Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.

    About SEO ProCheck

    Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.

    Work With Me

    Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.

    Subscribe to our newsletter!

    More from our blog