Does somebody experienced a page with 410 status code in index?

Could you imagine, that an indexed healthy page, which is set to 410 only through adding of <?php header( "HTTP/1.1 410 Gone" ); ?> remains still indexed?

After adding of <?php header( "HTTP/1.1 410 Gone" ); ?> to the beginning of the source code, tha page remains the same, but fires status code 410 Gone, as shown on the screenshot - look at DevTools:

enter image description here

  • 1
    It still has full content, but serves a 410 Gone status? Why would it be set up like that? – Stephen Ostermiller Jun 17 '20 at 17:36
  • Yes, the pages still have full content - they don't undergo any change, only status code is putted with the php header on the file begin. This setup ist for getting pages outta index fast. There are many pages and noindex, even together with new sitemap, containing only nondexed urls is very slow - page remain in index for months – Evgeniy Jun 17 '20 at 18:17
  • 2
    I don't think a 410 header is going to be any faster than a noindex tag. Googlebot still has to crawl the page to see the header. Once Googlebot crawls the page, either method should get the page out of the index quickly. – Stephen Ostermiller Jun 17 '20 at 19:25
  • 1
    "page remain in index for months" - presumably you aren't blocking the crawling of the page with robots.txt? Have you confirmed that Googlebot has visited the page? – MrWhite Jun 18 '20 at 1:25
  • sure. but this is the old misunderstanding of Google behavior: if you use simultanously noindex and crawling blocking through robots, than Google can't read noindex, because of forbidden crawling. This is not the way. This leads to appearing of an url in SERP without snippet. – Evgeniy Jun 18 '20 at 10:42

A page that returns a 410 status code will be dropped from Google's index very shortly after Googlebot re-crawls it, even "a little bit faster than a 404" according to Mueller from Google.

However, to me it seems like you are using the 410 Gone status code incorrectly. If the pages "still have full content", then they aren't really gone! In this case, if you want to drop them from search engines then use a robots noindex meta tag instead.

If you can't wait for Google to re-crawl your page automatically, use Google Search Console's Removals Tool to expedite the process.

  • what do you mean with "using 410 gone incorrectly"? I added screenshot of the page and of DevTools to my post - there you can see: after adding of <?php header( "HTTP/1.1 410 Gone" ); ?> to the begin of the source code the page remains the same, but fires 410 as status code. – Evgeniy Jun 18 '20 at 10:57
  • Removals tool is not the way - there are to much urls to input them manually.I've automated the usage of this tool with iMacros, but here i've preferred this way. – Evgeniy Jun 18 '20 at 11:02
  • By "using 410 gone incorrectly", I mean that "410 Gone" should only be used for content that is, well, gone. Your content isn't gone, it's still there, so you should use noindex instead. Otherwise bots will think your page doesn't exist, which might sound good on the surface but can cause issues with interoperability (analytics, social media, inbound links, etc). – Maximillian Laumeister Jun 18 '20 at 17:52
  • The removals tool is the only way to expedite page removal. Otherwise you have to wait for Google to re-crawl all of your pages on its own, which can take a long time if you have lots of pages. – Maximillian Laumeister Jun 18 '20 at 17:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.