Inferensys

Glossary

Crawl-Delay

A non-standard robots.txt directive that specifies a minimum delay in seconds between successive requests from a crawler to a server to manage server load and crawl budget.
Stylish WeWork-like workspace with hot desks and document wall, professional searching through enterprise knowledge base on a mounted ultrawide display, warm industrial pendants overhead.
ROBOTS.TXT DIRECTIVE

What is Crawl-Delay?

A non-standard extension to the Robots Exclusion Protocol that specifies a minimum delay in seconds between successive requests from a crawler to a server.

Crawl-Delay is a non-standard robots.txt directive that specifies the minimum time interval, in seconds, a crawler must wait between successive requests to the same server. It is a polite request, not an enforceable command, designed to prevent aggressive bots from overwhelming server resources, degrading site performance for human users, and consuming excessive bandwidth. Unlike standard directives like Disallow, Crawl-Delay is not part of the official Robots Exclusion Protocol specification and is ignored by major search engines like Google, which prefer that webmasters manage crawl rate via their proprietary tools like Google Search Console.

The directive is primarily honored by secondary and niche crawlers, such as those from Bing, Yandex, and various SEO tools. Its syntax is simple: Crawl-delay: 10 instructs a compliant bot to pause for 10 seconds after each page fetch. For managing modern AI crawler agents like GPTBot or CCBot, Crawl-Delay is a blunt instrument; more effective control is achieved by combining it with the Disallow directive and monitoring server logs for crawl anomaly detection to ensure compliance and protect the crawl budget.

Server-Side Rate Limiting

Key Characteristics of Crawl-Delay

The Crawl-Delay directive is a non-standard extension to the Robots Exclusion Protocol that defines a politeness window, instructing automated crawlers to wait a specified number of seconds between successive requests to the same server.

01

Mechanism of Action

The directive specifies a minimum inter-request interval in seconds. A compliant crawler parses the value and sleeps for that duration between fetching successive URLs from the same host. It is a server-side advisory signal, not a client-side guarantee. The directive is placed in the robots.txt file, typically within a specific user-agent block:

code
User-agent: GPTBot
Crawl-delay: 10
  • The value must be a positive integer or a float (e.g., 0.5).
  • A value of 0 signals no artificial delay is requested.
02

Non-Standard Status

Crawl-Delay is not part of the official Robots Exclusion Protocol (RFC 9309). It originated as an informal extension and is ignored by major search engine crawlers like Googlebot, which relies on algorithmic crawl budget management instead.

  • Supported by: Bing, Yahoo, Yandex, and many niche or legacy crawlers.
  • Ignored by: Googlebot, which recommends using Google Search Console to adjust crawl rates.
  • AI Crawler Adherence: Many modern AI crawlers (e.g., GPTBot, CCBot) explicitly respect this directive as a politeness mechanism to avoid overwhelming smaller servers.
03

Crawl Budget Preservation

For sites with millions of URLs, an uncontrolled crawl can consume excessive bandwidth and server resources, degrading performance for human users. Crawl-Delay acts as a traffic throttle:

  • Resource Protection: Prevents CPU and I/O saturation on origin servers during deep crawls.
  • Budget Allocation: By slowing down a crawler, you ensure it spends its allocated time window on your most critical pages rather than exhausting its limit on low-value URLs.
  • Practical Example: Setting a delay of 5 seconds on a site with 100,000 pages limits a crawler to roughly 17,280 requests per day, preserving significant capacity.
04

AI Crawler Politeness

The rise of foundation model training crawlers has revitalized the importance of Crawl-Delay. These bots often perform deep, recursive crawls of massive scale. Explicitly setting a delay is a primary defense against aggressive ingestion:

  • GPTBot (OpenAI): Respects Crawl-Delay directives.
  • CCBot (Common Crawl): Adheres to the delay to maintain its non-profit, non-disruptive status.
  • Anthropic ClaudeBot: Explicitly checks for and respects this directive.
  • Strategic Use: Combine Crawl-Delay with Disallow rules to create a tiered access policy—slow down AI training crawlers while blocking specific sensitive directories entirely.
05

Interaction with Other Directives

Crawl-Delay operates in conjunction with other robots.txt rules to form a complete access control policy:

  • Disallow: Takes precedence. If a path is disallowed, the delay is irrelevant for that path.
  • Sitemap: Pointing to a sitemap helps the crawler prioritize high-value URLs, making the enforced delay more efficient by focusing it on canonical content.
  • Request-Rate: A related but distinct directive (used by Bing) that specifies requests per second, offering a more granular alternative to the simple inter-request delay.
  • Wildcards: The delay applies to the entire user-agent scope; you cannot set different delays for different paths under the same bot.
06

Implementation Pitfalls

Incorrect configuration can inadvertently block legitimate traffic or fail to protect resources:

  • Overly Aggressive Delays: Setting a delay of 30 or 60 seconds can effectively halt a crawl entirely, preventing your content from being indexed or ingested by compliant AI systems.
  • User-Agent Specificity: Always place the directive inside the correct User-agent: block. A global * block with a high delay might be ignored by sophisticated bots that look for their specific token.
  • Testing: Use tools like Google's robots.txt Tester (for syntax) or manual curl requests with specific user-agent strings to verify that the header is served correctly and the delay logic is parsed as intended.
CRAWL-DELAY DIRECTIVE

Frequently Asked Questions

Clear, technical answers to the most common questions about implementing and troubleshooting the Crawl-Delay directive in robots.txt for managing AI and traditional crawler traffic.

The Crawl-Delay directive is a non-standard extension to the Robots Exclusion Protocol that specifies the minimum time, in seconds, that a compliant crawler must wait between successive requests to the same server. When a bot parses a robots.txt file and encounters Crawl-delay: 10, it should pause for 10 seconds after finishing one request before initiating the next. This mechanism directly reduces the request rate, preventing server overload and allowing the site owner to manage crawl budget consumption. It is important to understand that this is a polite suggestion, not a strictly enforced protocol rule; its effectiveness depends entirely on the crawler's voluntary compliance. Major search engines like Google and Bing do not support this directive, preferring their own algorithmic crawl rate limiting via Google Search Console. However, many archival bots, specialized AI crawlers, and legacy search engines do respect it.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.