{"id":13590,"date":"2026-10-19T07:35:00","date_gmt":"2026-10-19T05:35:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=13590"},"modified":"2026-09-25T09:45:53","modified_gmt":"2026-09-25T07:45:53","slug":"410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/","title":{"rendered":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour"},"content":{"rendered":"<p>A refusal is meant to end a conversation. The clearest one the web has is <code>410 Gone<\/code>: not &#8220;try later&#8221;, not &#8220;moved&#8221;, but &#8220;this existed and it does not any more&#8221;.<\/p>\n<p>A small server sent that refusal 732,498 times in a single day. The crawler receiving most of them did not slow down, and had not slowed down for eleven days.<\/p>\n<figure class=\"lw-diagram\">\n<img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/410-einladung-en.png\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"Four steps from a correct refusal to an endless crawl, the measured request counts, and a scale comparison of what one refusal weighs before and after\"><figcaption>Four steps, each correct on its own, and together they kept a crawler busy for eleven days.<\/figcaption><\/figure>\n<h2>What a 410 actually says<\/h2>\n<p>Several answers cover the ways a page can be unavailable, and they say quite different things.<\/p>\n<p><code>404 Not Found<\/code> means nothing is here. It leaves open whether something was here before, or might be here tomorrow. A crawler treats it as temporary and comes back.<\/p>\n<p><code>410 Gone<\/code> means something was here, it was removed on purpose, and there is no forwarding address. It is the strongest way to say a page is finished, and search engines drop such addresses faster than they drop a 404.<\/p>\n<p>So answering thousands of dead addresses with 410 is the correct choice. The mistake was somewhere else entirely.<\/p>\n<h2>The rule caught the one file that could have stopped it<\/h2>\n<p>The refusal was implemented as a single rule: every address under the retired hostnames answers 410. Two exceptions were carved out, both deliberate and both narrow.<\/p>\n<p><code>robots.txt<\/code> was not among them.<\/p>\n<p>That is easy to miss, because robots.txt is not a page. It is the file about the pages. Under a rule saying &#8220;everything here is gone&#8221; it is simply an address like any other, and it answered 410 like any other.<\/p>\n<h2>Why a 4xx answer means no restrictions<\/h2>\n<p>This is the part that turns an oversight into an invitation.<\/p>\n<p>The standard is explicit about what happens when robots.txt cannot be fetched. A 5xx answer &#8211; the server is broken &#8211; means a crawler should treat the whole site as forbidden and come back later. A 4xx answer means the opposite: there are no rules on this host, and everything may be crawled.<\/p>\n<p>The reasoning behind that is sound. A missing robots.txt has always meant &#8220;no restrictions&#8221;, and nothing distinguishes &#8220;this host never had rules&#8221; from &#8220;this host removed them&#8221;. 404 and 410 land in the same category.<\/p>\n<p>So the refusal arrived exactly backwards. It did not say stay away. It said, in the one sentence a crawler reads before deciding anything, that nothing here was off limits.<\/p>\n<figure class=\"lw-illu\">\n<img decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/illustrationen\/illu-410-einladung.webp\" width=\"1120\" height=\"580\" loading=\"lazy\" alt=\"A closed barrier with its sign lying face down on the ground, and behind it a path branching endlessly\"><br \/>\n<\/figure>\n<h2>An address space with no bottom<\/h2>\n<p>A wrong answer only becomes expensive when there is somewhere to spend it.<\/p>\n<p>The addresses being requested carried a parameter encoding where the crawler had come from. Every page therefore linked onward to addresses that had never existed before, and those linked onward again. The supply never ran out.<\/p>\n<p>The numbers show it plainly. Of 698,400 requests in one day, 696,907 were for different addresses &#8211; two requests in a thousand were repeats. A crawler working through such a space is not doing anything wrong; it is following links, which is its entire job, and it will never finish.<\/p>\n<h2>What a single refusal weighs<\/h2>\n<p>The last surprise was in the size of it.<\/p>\n<p>The message itself is small: 415 bytes of plain text saying the resource is gone. The headers wrapped around it came to 1,949 bytes, and roughly 1,700 of those were a content security policy.<\/p>\n<p>That policy exists to restrict what a page is allowed to load. On a refusal there is no page &#8211; nothing to load, nothing to restrict, nothing the header can protect. It was attached to every one of the 732,498 answers all the same, because it had been set to apply always, which is exactly the right setting for real pages.<\/p>\n<p>The result: 2,364 bytes to say no, and 1.65 GB in a day spent saying it.<\/p>\n<h2>What follows from this<\/h2>\n<p>Three things, in order of effect.<\/p>\n<p>A rule that makes a host disappear needs an exception for the file describing the host. robots.txt, and anything else a crawler reads in order to decide, has to stay readable even when everything it describes is gone. A reachable robots.txt carrying a single <code>Disallow: \/<\/code> ends the traffic at its source rather than absorbing it.<\/p>\n<p>Headers meant for pages do not belong on refusals. Restricting them to the hosts that actually serve pages cut each answer from 2,364 bytes to 850 &#8211; the same refusal at roughly a third of the weight.<\/p>\n<p>And a parameter that generates fresh addresses turns any crawl into an endless one. Where such a space sits behind removed content, removing the content is not the end of the work.<\/p>\n<div class=\"lw-faq\">\n<h2>Questions and answers<\/h2>\n<h3>Does a Disallow: \/ also remove the old addresses from the search index?<\/h3>\n<p>Not directly. A Disallow forbids fetching, not indexing. A blocked address is no longer requested, so the crawler no longer sees its 410 either. Addresses that are already known, or linked from elsewhere, can therefore stay in the index as a bare address without content. A noindex does not help here, because it too would sit on a page that is no longer fetched.<\/p>\n<p>Anyone who wants both has to choose an order: first the important addresses need a chance to deliver their 410, then the block ends the traffic. With an address space that has no bottom, like the one in the article, that plan does not work, because the refusals would never be finished. There the block is the better choice, even if individual addresses stay in the index for a while.<\/p>\n<h3>Why not answer robots.txt with a 503 so that the whole site counts as blocked?<\/h3>\n<p>Because that block only lasts for a while. RFC 9309 treats a server error on robots.txt as a complete disallow at first, but allows a crawler, once the file has been unreachable for a long time (the standard gives 30 days as an example), to act as if there were no robots.txt, or to keep using a cached copy. In the first case the host is back to having no rules, just as with the 410. A reachable file containing Disallow: \/ is the form that holds permanently.<\/p>\n<h3>How quickly does a corrected robots.txt take effect?<\/h3>\n<p>With a delay of up to a day. RFC 9309 says a crawler should not use a cached robots.txt for more than 24 hours; until then it may still act on the old answer, which here meant behaving as if there were no rules. Whether the fix works therefore shows in the following day&#8217;s traffic, not in the first hour.<\/p>\n<\/div>\n<div class=\"lw-quellen\">\n<h2>Sources<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9110.html#name-410-gone\" target=\"_blank\" rel=\"noopener noreferrer\">RFC 9110: 410 Gone<\/a><\/li>\n<li><a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9309.html\" target=\"_blank\" rel=\"noopener noreferrer\">RFC 9309: Robots Exclusion Protocol<\/a><\/li>\n<li><a href=\"https:\/\/developers.google.com\/search\/docs\/crawling-indexing\/overview-google-crawlers\" target=\"_blank\" rel=\"noopener noreferrer\">Google Search Central: crawlers<\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>A server answered 732,498 requests in one day with the clearest refusal the protocol has. The crawler kept going, and the reason was that the same refusal covered the one file that could have stopped it.<\/p>\n","protected":false},"author":1,"featured_media":16136,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[92636],"tags":[91094,91099,91219],"class_list":["post-13590","post","type-post","status-publish","format-standard","hentry","category-tutorials-en-cloud-ai","tag-seo","tag-server-administration","tag-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour | Lukas Wojcik<\/title>\n<meta name=\"description\" content=\"Why a 4xx answer on robots.txt counts as full permission, how an endless URL space keeps a crawler busy for weeks, and what a single refusal actually costs in bytes.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour | Lukas Wojcik\" \/>\n<meta property=\"og:description\" content=\"Why a 4xx answer on robots.txt counts as full permission, how an endless URL space keeps a crawler busy for weeks, and what a single refusal actually costs in bytes.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-19T05:35:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13590-robots-txt-410-invites-crawler-nz.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Lukas Wojcik\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lukas Wojcik\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/\"},\"author\":{\"name\":\"Lukas Wojcik\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour\",\"datePublished\":\"2026-10-19T05:35:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/\"},\"wordCount\":1090,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13590-robots-txt-410-invites-crawler-nz.png\",\"keywords\":[\"SEO\",\"Server Administration\",\"Tutorial\"],\"articleSection\":[\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/\",\"name\":\"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour | Lukas Wojcik\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13590-robots-txt-410-invites-crawler-nz.png\",\"datePublished\":\"2026-10-19T05:35:00+00:00\",\"description\":\"Why a 4xx answer on robots.txt counts as full permission, how an endless URL space keeps a crawler busy for weeks, and what a single refusal actually costs in bytes.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13590-robots-txt-410-invites-crawler-nz.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/hero-13590-robots-txt-410-invites-crawler-nz.png\",\"width\":1200,\"height\":630,\"caption\":\"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/en\\\/cloud-ai\\\/tutorials-en-cloud-ai\\\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"Lukas Wojcik\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"Lukas Wojcik\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour | Lukas Wojcik","description":"Why a 4xx answer on robots.txt counts as full permission, how an endless URL space keeps a crawler busy for weeks, and what a single refusal actually costs in bytes.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/","og_locale":"en_US","og_type":"article","og_title":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour | Lukas Wojcik","og_description":"Why a 4xx answer on robots.txt counts as full permission, how an endless URL space keeps a crawler busy for weeks, and what a single refusal actually costs in bytes.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-10-19T05:35:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13590-robots-txt-410-invites-crawler-nz.png","type":"image\/png"}],"author":"Lukas Wojcik","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Lukas Wojcik","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/"},"author":{"name":"Lukas Wojcik","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour","datePublished":"2026-10-19T05:35:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/"},"wordCount":1090,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13590-robots-txt-410-invites-crawler-nz.png","keywords":["SEO","Server Administration","Tutorial"],"articleSection":["Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/","url":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/","name":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour | Lukas Wojcik","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13590-robots-txt-410-invites-crawler-nz.png","datePublished":"2026-10-19T05:35:00+00:00","description":"Why a 4xx answer on robots.txt counts as full permission, how an endless URL space keeps a crawler busy for weeks, and what a single refusal actually costs in bytes.","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13590-robots-txt-410-invites-crawler-nz.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/09\/hero-13590-robots-txt-410-invites-crawler-nz.png","width":1200,"height":630,"caption":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/en\/cloud-ai\/tutorials-en-cloud-ai\/410-gone-on-robots-txt-how-a-4xx-answer-on-the-rules-file-affects-crawler\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"410 Gone on robots.txt: How a 4xx Answer on the Rules File Affects Crawler Behaviour"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"Lukas Wojcik","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"Lukas Wojcik"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13590","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=13590"}],"version-history":[{"count":3,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13590\/revisions"}],"predecessor-version":[{"id":22727,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/13590\/revisions\/22727"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/16136"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=13590"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=13590"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=13590"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}