Inferensys

Glossary

Crawl-Delay Directive

An unofficial but widely supported robots.txt parameter specifying the number of seconds a crawler should wait between successive requests to avoid overloading the server.
Logistics warehouse with trucks at loading bays representing operational AI systems.
ROBOTS.TXT PARAMETER

What is Crawl-Delay Directive?

An unofficial but widely supported extension to the Robots Exclusion Protocol that specifies a custom crawl rate by defining the minimum delay in seconds between successive requests from a specific crawler.

The Crawl-Delay directive is a non-standard robots.txt parameter that instructs a compliant crawler to wait a specified number of seconds between fetching successive pages from the origin server. Unlike the official Crawl Rate Limiting setting in webmaster tools, this directive is defined directly in the robots.txt file, targeting a specific User-Agent Token to prevent server overload from aggressive bots that ignore implicit politeness windows.

Because it is not part of the formal Robots Exclusion Protocol (REP) defined in RFC 9309, major search engines like Googlebot ignore the Crawl-Delay directive entirely, relying instead on algorithmic Crawl Budget management. However, it is actively honored by crawlers such as Bingbot, YandexBot, and various specialized archival or AI training bots, making it a critical tool for managing Crawl Rate Limiting on legacy infrastructure or protecting origin servers from third-party foundation model data collectors.

POLITENESS POLICY

Key Characteristics of Crawl-Delay

The Crawl-Delay directive is an unofficial but widely adopted parameter that specifies the minimum time, in seconds, a crawler must wait between successive requests to the same host.

01

Non-Standard but Ubiquitous

Unlike the core directives defined in RFC 9309, the Crawl-Delay parameter is not part of the official Robots Exclusion Protocol standard. It originated as an extension supported by major search engines like Bing and Yandex to provide a simple server-side throttling mechanism. Because it lacks a formal specification, its interpretation varies slightly between crawler implementations, but it remains a critical tool for infrastructure teams managing legacy or resource-constrained servers.

02

Syntax and Placement

The directive is placed within a specific user-agent record block in the robots.txt file. The value is a positive integer or floating-point number representing seconds.

  • Syntax: Crawl-Delay: <seconds>
  • Example: Crawl-Delay: 10 instructs the bot to wait 10 seconds between requests.
  • Granularity: Some parsers accept decimal values like 0.5 for sub-second delays, though integer values are safest for broad compatibility.
  • Scope: It applies globally to the entire host for the specified user-agent, not to specific paths.
03

Googlebot's Incompatibility

Googlebot explicitly ignores the Crawl-Delay directive. Google's official stance is that server-side rate limiting should be managed through the Google Search Console interface, which allows site owners to adjust the crawl rate in a more dynamic fashion. Relying on Crawl-Delay to throttle Google's crawler will have no effect. For Google, engineers must use the Crawl Rate Settings tool, which provides a visual slider to communicate preferred fetch rates.

04

Server Resource Protection

The primary use case for Crawl-Delay is preventing server overload on sites with limited computational resources or inefficient backend queries.

  • Legacy Systems: Protects older infrastructure that cannot handle rapid, successive dynamic page renders.
  • Shared Hosting: Prevents a single aggressive bot from consuming all CPU or I/O resources on a shared server, degrading performance for human users.
  • Traffic Shaping: Acts as a blunt instrument to ensure crawler traffic remains a low, steady hum rather than a spike, complementing more sophisticated rate-limiting logic at the reverse proxy level.
05

Interaction with Crawl Budget

Crawl-Delay directly impacts a site's crawl budget—the number of URLs a bot will fetch in a given timeframe. A high delay value reduces the total number of pages a crawler can index daily.

  • Trade-off: A delay of 20 seconds on a site with 86,400 seconds in a day mathematically caps the crawler to a maximum of 4,320 requests per day.
  • Strategic Use: This is useful for massive sites that want to ensure deep crawling happens slowly over weeks rather than hammering the server in hours, but it risks delaying the indexing of fresh content.
06

Modern Alternatives

While Crawl-Delay remains useful for simple cases, modern infrastructure often relies on more dynamic mechanisms:

  • HTTP 429 (Too Many Requests): A standard response code that includes a Retry-After header, allowing per-request backpressure.
  • Reverse Proxy Rate Limiting: Tools like Nginx or HAProxy can enforce per-IP or per-user-agent rate limits with leaky bucket algorithms.
  • Google Search Console: The dedicated UI for controlling Googlebot's specific fetch rate.
  • CDN Rules: Edge platforms like Cloudflare allow granular rate limiting rules based on bot scores and request paths.
ACCESS CONTROL MECHANISMS

Crawl-Delay vs. Crawl Rate Limiting

Comparison of the two primary methods for throttling automated crawler request frequency to manage server load and crawl budget consumption.

FeatureCrawl-Delay DirectiveCrawl Rate Limiting

Definition

An unofficial but widely supported robots.txt parameter specifying the minimum seconds between successive requests from a crawler.

A server-side or webmaster tool configuration that throttles the maximum fetch rate a specific crawler can sustain over a defined time window.

Configuration Location

Declared within the robots.txt file at the domain root.

Configured in webmaster tools (e.g., Google Search Console) or via server-level traffic shaping.

Standardization Status

Non-standard; not defined in RFC 9309. Supported by Bing, Yandex, and others, but ignored by Googlebot.

Proprietary to specific search engines; Google's implementation is the most prominent example.

Granularity

Per-crawler, applied uniformly to all URLs on the host.

Per-crawler, often adjustable as a scalar value affecting the entire domain's crawl rate.

Enforcement Mechanism

Advisory; relies on voluntary compliance by the crawler's parser.

Enforced by the search engine's own crawl scheduling infrastructure.

Primary Use Case

Protecting low-resource servers from being overwhelmed by rapid sequential requests from any compliant bot.

Managing the crawl budget allocated by a specific search engine to optimize indexing of high-value pages.

Googlebot Support

Bingbot Support

CRAWL-DELAY DIRECTIVE

Frequently Asked Questions

Essential questions and answers about the Crawl-Delay directive, its implementation, and its role in managing bot traffic to prevent server overload.

The Crawl-Delay directive is an unofficial but widely supported parameter in a robots.txt file that specifies the minimum number of seconds a compliant crawler must wait between successive requests to the same origin server. When a bot parses a robots.txt file and encounters Crawl-Delay: 10, it should pause for 10 seconds after fetching one URL before requesting the next. This mechanism is designed to prevent aggressive crawlers from overwhelming server resources, reducing bandwidth consumption and CPU load. Unlike the Crawl Rate Limiting setting in Google Search Console, which is configured externally, Crawl-Delay is a self-declared instruction within the Robots Exclusion Protocol (REP). It is particularly critical for managing AI training bots like GPTBot and CCBot, which may crawl large volumes of content for foundation model training.

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.