Ultimate 410 gone status code WordPress Plugin
WordPress Plugin: Ultimate 410 status code
The easy "410 - gone" status code Plugin for WordPress: Featuring.csv bulk upload, manual and regex entry, and 410 option, when deleting pages, posts, categories and tags.
Use it when content is removed on purpose and for good. Moved content needs a redirect instead. The check below does not store any URL.
Check the status code of a deleted URL
tinyweb.com/sudoku/ responds with 410 Gone.
- Statuscode
- 410 Gone
- Meaning
- permanently and deliberately removed
- Redirect
- none
- Cache note
- no cache header
The address is reported as permanently removed. Google drops it from the index.
Ultimate 410 at a glance
- Plugin
- Ultimate 410 Gone Status Code, free on wordpress.org
- Developed by
- tiny web, Hans Jung, alpipego
- Version
- 1.1.8
- WordPress
- 5.1 or higher, tested up to 6.6 on wordpress.org
- PHP
- 7.0 or higher
- Active installations
- 6,000+
- Rating
- 4.4 out of 5 stars from 8 reviews
- As of
- , source wordpress.org
Features
Features:
- When deleting pages, posts, categories or tags from WordPress, the ultimate 410 status code will ask if a 410 response code should be set for the deleted URL.
- Add 410 URLs manually
- Add 410 URL via regex (regular expressions)
- Bulk upload 410 URLs via csv-file.
- even works if the csv-file contains a BOM
Additional since version 1.1.0: bulk delete of entries. Custom 410 page: place a 410.php template in your theme.
410 vs. 404 vs. 301
Status code 410, 404 or 301 for deleted pages
410 says: removed on purpose and for good. 404 says: not found, with no statement about duration. 301 says: moved, here is the new address. Google drops URLs with 404 and 410 from the index in the same way.
CompareTable, caption „Which response a removed URL gets“, columns „410 Gone“, „404 Not Found“, „301 Moved Permanently“, „noindex“ (no is-pick)
| Criterion | 410 Gone | 404 Not Found | 301 Moved Permanently | noindex |
|---|---|---|---|---|
| Meaning | intentionally and likely permanently removed | not found, duration unknown | permanently moved | page exists but should stay out of search |
| Use when | campaign ended, product discontinued, content without successor | the URL never existed, or it may come back | a page with the same purpose exists | content stays for visitors, not for Google |
| removed from the index | removed from the index | target takes over the signals | removed from the index, page stays reachable | |
| Links to the URL | linking sites should remove the link (RFC 9110) | have no effect | keep working for the target | keep working |
| In WordPress | Ultimate 410 | WordPress default | redirect plugin or server | SEO plugin |
Next step
What to do with the result of the 410 check
Deleted URLs with a successor get a 301, URLs without one get a 410. Before that, check in Search Console which URLs still have clicks or links.
URLs with clicks or external links are candidates for a redirect, not for 410. A 410 gives up the signals of those links. A content pruning strategy works the same way: list each URL with clicks, links and decision (keep, merge with 301, remove with 410). When we relaunched tinyweb.com, old service pages redirect to the new ones, and two URLs without any link to our offer return 410.
Setup
How to use the 410 gone plugin in WordPress
Install the plugin under „Plugins › Add New“, add the URLs and check the response. For a list from a relaunch, use the CSV upload.
- Install: In WordPress go to „Plugins › Add New“, search for „Ultimate 410“, install and activate.
- Collect URLs: Export the URLs without a successor from Search Console. One URL per line, written exactly as your site uses it.
- Add them: one by one, as a regex or as a CSV upload.
- Clear caches: Clear your caching plugin and, if you use one, your CDN.
- Check: Test two URLs with the check above or with
curl -I https://your-domain.com/old-url/. The first line must contain410.
When 410 is not the right response
- The content has moved or has a successor. Use a 301 redirect to the new URL.
- The URL still gets clicks or external links. A 410 gives up those signals.
- You do not know whether the content will come back. RFC 9110 recommends 404 in that case.
- You want to answer every missing URL with 410. That goes against the standard, because many of them never existed.
- Your site does not run on WordPress. Set 410 in your server configuration instead.
Method
Method and sources on the 410 status code
The plugin sends status code 410 as defined in RFC 9110 for the URLs you choose. It never decides on its own which URL is gone.
WordPress returns 404 for deleted content by default. Ultimate 410 answers with 410 for URLs on your list and URLs that match your patterns. Since version 1.1.7 it leaves empty requests, such as the home page with only query parameters, untouched.
Sources, checked in October 2026:
- RFC 9110, HTTP Semantics (IETF, June 2022), section 15.5.11 „410 Gone“ and 15.5.5 „404 Not Found“
- Google Search Central: How HTTP status codes, and network and DNS errors affect Google Search (updated February 2026)
- wordpress.org: Ultimate 410 Gone Status Code, readme and changelog
FAQ
Can I customize the 410 response message?
410.php in your theme folder, ideally in your child theme, and the plugin uses it. Your theme's 404.php shows how to build it.Will this plugin work if a caching/performance plugin is active?
How do you handle trailing slashes?
/page-to-be-deleted/ is different from /page-to-be-deleted. For both, use the regex /page-to-be-deleted/? or add both URLs.Why set „410 gone“ response status codes?
How do I use 410 gone in WordPress?
More tools
More free technical SEO tools from tiny web
- Create a canonical HTTP header for PDFs: code for Apache, Nginx and Cloudflare.
- Check whether your domain is in Common Crawl
- Create llms.txt and AI crawler rules
The person behind the plugin: Hans Jung and how tiny web works.
Next step
Talk to Hans Jung directly.
30 minutes, without obligation, with an honest assessment.