DD
DevDash

HTTP 410 Gone: What It Means and When You See It

Quick Answer

HTTP 410 Gone means the resource is permanently deleted and will not be available again. Unlike 404, a 410 signals intentional removal.

HTTP 410 vs 404

HTTP 410 Gone signals that the resource existed but has been intentionally and permanently deleted. Unlike 404, a 410 tells search engines and clients not to look for this resource again. Search engines remove 410 pages from their index faster than 404 pages. Use 410 for: deleted user accounts, removed blog posts, discontinued products, and revoked API endpoints. Use 404 when you are unsure if the resource ever existed or may be restored.

Implementing 410 Gone

Track deleted resource IDs in a database or blocklist. Before returning 404, check if the slug or ID was previously deleted: if (await db.deleted.find(slug)) return res.status(410).json({ error: "Gone" }). In Next.js: return notFound() for 404, or send a 410 response in a route handler for explicitly deleted items. Set Cache-Control: max-age=86400 on 410 responses - clients and CDNs can cache the "gone" state.

Try the interactive tool

Convert any value instantly — no sign-up required

Open tool →

Frequently Asked Questions

Related Values

Want API access + no ads? Pro coming soon.