HTTP 410 Gone
A 410 is the HTTP "Gone" status code — an explicit "this URL was here, has been intentionally removed, and is not coming back". Stronger than 404, which is ambiguous about future availability. Google has confirmed it deindexes 410s faster than 404s in practice.
Long definition
Where 404 says "I can't find this," 410 says "I removed this on purpose, stop asking." RFC 9110 describes 410 as appropriate when "the resource is intentionally unavailable and the server owners desire that remote links to that resource be removed."
For SEO, John Mueller has stated multiple times that Google treats 410 as a stronger signal than 404 and drops 410-returning URLs from the index faster. The exact delta is undocumented — observed reports range from "a few days faster" to "noticeably faster on large sites" — but the direction is clear and consistent.
When 410 is the right code:
- Content pruning — you've decided a page adds no value, isn't coming back, and has no good redirect target.
- Retired products with no replacement (vs replaced products → 301 to the new SKU).
- Expired campaigns and event pages with no archive plan.
- Forum threads or user-generated content removed for policy violations.
- Legacy URL patterns abandoned in a content audit.
When 404 is fine and 410 is overkill:
- Typos and never-existed URLs — there's nothing to "be gone" from.
- Temporarily missing content — backend bug, CDN cache issue, accidental deletion you plan to restore.
- Pages that might come back — seasonal landing pages, paused product lines.
Implementation is identical to 404 at the server level — just return the different code. Most frameworks have a one-line equivalent: Express res.sendStatus(410), Django HttpResponseGone, Laravel abort(410), Nginx return 410. A custom 410 body explaining the removal helps users; the status code is what helps crawlers.
The Bing position is similar — both 404 and 410 trigger removal, with 410 generally faster. For a single page, the difference is rarely measurable. For a bulk removal of thousands of URLs (a content prune, a sunset section), 410 across the batch is the cleaner signal and gets the crawl budget back faster.
Common misconceptions
- "410 is permanent and 404 is temporary." Both can be permanent in practice. The semantic difference is intent: 410 says "I deliberately removed this," 404 says "I can't find it right now." Google reads that intent.
- "Use 410 for everything you're removing." For genuinely pruned content, yes. For pages that might come back or have an obvious replacement (use 301), no. Right tool for the job.
- "410 hurts trust signals." It doesn't. Sites that prune ruthlessly with 410 often improve overall quality scores because crawl budget shifts to the URLs that matter.
- "Once a URL returns 410, the SEO history is wiped." Inbound links pointing at the URL still exist on third-party sites. The link equity dissipates over time as those links are recrawled and the target shows 410, but the past traffic from those links is gone the moment you return 410. Migrate equity before removing if it matters.
Continue exploring