Error fix · Server errors

HTTP 410 Gone: What It Means and When to Use It Instead of 404

HTTP 410 Gone says content was removed on purpose. Learn how to fix accidental 410s, serve 410 correctly in nginx and Apache, and how Google treats it versus 404.

Error messageHTTP 410 Gone

By SiteDownCheck Editorial · Updated November 11, 2026 · 4 min read

A 410 tells the client that the resource used to exist at this URL, was deliberately removed, and is not coming back. It is a stronger, more specific signal than 404 Not Found, which simply says "nothing here right now". See the HTTP 410 reference.

Most 410s are intentional. The trouble starts when one appears on a page that should exist, or when you want to use 410 well for clean-up and are unsure how.

If you are a visitor

  1. Do not keep retrying. A genuine 410 is permanent.
  2. Search for the new location. Use the site's search, its sitemap, or a search engine to find a replacement page.
  3. Check an archive for the old content if you need it.
  4. Report it if you reached the 410 from a link on the owner's own site, so they can update the link.
  5. If the page should exist (you used it yesterday), clear your cache and try a private window, then contact the owner. Some caches keep an old 410 for a while.

If you own the site

1. Decide: 410, 404 or 301?

  • 301 when the content has a direct replacement. Send visitors and link value to it. See HTTP redirects: 301 vs 302.
  • 410 when content is deliberately and permanently gone with no replacement: discontinued products, expired campaigns, spam pages you removed after a hack.
  • 404 when you do not know, or the URL never existed.

Google has said it treats 410 and 404 very similarly for indexing, though 410 may drop a URL from its index slightly faster. Do not expect a ranking boost. Its main advantages are clarity for humans and tools, and clean log analysis.

2. Return 410 in nginx

For single URLs or patterns:

location = /old-campaign/ { return 410; }
location ~ ^/discontinued/ { return 410; }

Add a friendly page:

error_page 410 /gone.html;
location = /gone.html { internal; }

Reload with sudo nginx -t && sudo systemctl reload nginx.

3. Return 410 in Apache

Redirect gone /old-campaign/
  # or with mod_rewrite
RewriteEngine On
RewriteRule ^discontinued/ - [G,L]

The G flag means gone. In .htaccess, make sure AllowOverride permits the directives you use.

4. Fix accidental 410s

If a live page returns 410, work backwards through the layers:

  1. Search the web server config and .htaccess for 410, Redirect gone and [G] flags. A wide regex like ^(.*)/feed can match more URLs than intended.
  2. Check your CMS and plugins. Some SEO or cleanup plugins send 410 for trashed posts, tags or attachment pages.
  3. Check the CDN or WAF. Rules created during a spam cleanup sometimes remain in place.
  4. Look for a cached response. Purge the CDN and page cache after fixing.

Then confirm with the HTTP Status Checker and curl -I https://example.com/page.

5. After a hack or spam injection

Mass-injected junk URLs (pharma, casino and similar) are a good use for 410: it tells crawlers they are gone for good, which can help them clear out. Pair it with real cleanup, since removing the infection matters more than the status code. For recovery steps see WordPress site hacked recovery.

What search engines do

Crawlers will keep checking a gone URL occasionally. Remove 410 URLs from your sitemap and from internal links so they do not waste crawl time. Find internal links that still point at removed pages with the Broken Link Checker. Do not block those URLs in robots.txt, because a crawler that cannot fetch the URL cannot see the 410. You can check your rules with the Robots.txt Checker. For the SEO side of removals, see website downtime and SEO impact.

Verify

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/old-campaign/

You should get 410. Check redirects with the Redirect Checker so a 410 is not hidden behind a catch-all redirect, and use the HTTP Header Checker to inspect cache headers, since a cacheable 410 may be stored by intermediaries.

Next steps

FAQ

Is 410 better than 404 for SEO?

Not materially. Search engines treat them alike, with 410 sometimes processed a little faster. Use 410 for clarity when removal is deliberate.

Can a 410 be undone?

Yes. Serve the content again with a 200. Crawlers may take time to return, and caches may need purging.

Should I redirect old URLs to the home page instead?

Generally no. Mass redirects to unrelated pages can be treated as soft 404s. Redirect to a relevant page or serve 404 or 410.

Does 410 apply to whole sections?

Yes, using a pattern rule. Test it carefully so it does not catch live URLs.

Get notified when this fix updates

Plus occasional practical tips on uptime and monitoring, nothing else. Unsubscribe anytime.

This page is general information written by our editorial team and updated when documentation changes. Servers and providers differ, so test changes safely first. See our editorial policy and disclaimer.