SEO & Redirects
What is crawling?
Crawling is the process by which search engines, and other automated systems, systematically discover and fetch web pages using software programs called crawlers, spiders, or bots. A crawler starts with a set of known URLs, fetches the content of each URL, extracts links from the fetched content, adds those links to its list of URLs to visit, and repeats the process, traversing the web’s link graph in a continuous cycle of discovery and content retrieval.
Crawling is the first stage of the search engine pipeline, before a page can be analysed, indexed, or ranked it must first be crawled. Without crawling search engines would have no way to discover web content or keep their indexes current as content is created, updated, and removed. The crawler is the search engine’s eyes on the web, continuously scanning billions of pages to keep the search index fresh and comprehensive.
Google’s primary crawler is Googlebot, the automated bot responsible for fetching web pages for Google’s search index. Bing uses Bingbot, Yandex uses YandexBot, and other search engines operate their own crawlers. Each crawler operates according to its own logic and configuration but all follow the same fundamental model, following links to discover URLs, fetching content, and processing what they find.
For redirect management crawling is the mechanism through which redirect signals are communicated to search engines. When Googlebot crawls a URL that returns a 301 permanent redirect it processes the redirect signal, following the redirect to the destination and initiating the index update that transfers the source URL’s accumulated SEO equity to the destination. Every redirect configuration only takes effect for search engines when Googlebot actually crawls the redirect source URL, the crawl is the trigger for search engine awareness of the redirect.
How crawling works
The crawling process follows a systematic cycle that operates at enormous scale, Googlebot crawls billions of pages every day across the entire web.
The crawl queue: a continuously maintained list of URLs waiting to be crawled. New URLs enter the queue when discovered through links, sitemaps, or direct submission. Existing URLs re-enter the queue when their recrawl schedule arrives. The queue is prioritised, high-authority pages, frequently updated content, and URLs from recently submitted sitemaps are crawled before lower-priority URLs. The crawl queue at Google scale contains billions of URLs at any given time.
Fetching: the crawler makes an HTTP request to each queued URL, just as a browser would when a user visits a page. The HTTP request includes identifying headers, notably the User-Agent header that identifies the crawler. For Googlebot the User-Agent is Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html). Servers receive this user agent and can use it to identify Googlebot requests in server logs.
The server responds to the crawler’s request with an HTTP response, including a status code, response headers, and a response body. The status code is critical, it tells the crawler what happened with the request.
Rendering: modern web pages increasingly rely on JavaScript to generate content, content that is not present in the initial HTML response but is injected by JavaScript execution. Googlebot has a two-phase crawling approach, the initial HTML fetch is processed immediately, and a secondary rendering phase executes JavaScript to discover dynamically generated content. The rendering phase uses a headless browser similar to Chrome. Rendered content is processed after the initial fetch, sometimes hours or days later for lower-priority pages.
Link extraction: from each fetched and rendered page the crawler extracts all hyperlinks, <a href="..."> elements, canonical link elements, sitemap references, and other URL references. Extracted links are added to the crawl queue for future fetching, this is how crawlers traverse the web’s link graph and discover new content.
Signal extraction: alongside link extraction the crawler extracts signals relevant to indexing and ranking. Page title, headings, body text, meta descriptions, structured data markup, canonical tags, noindex directives, hreflang annotations, and many other signals are extracted during crawling and passed to the indexing pipeline for processing.
Crawl frequency and recrawl scheduling
Not all pages are crawled with equal frequency, the crawl schedule varies based on several factors that determine how often a page needs to be recrawled to keep the search index current.
Content freshness requirements: pages that change frequently need more frequent recrawling to keep the indexed version current. A news site publishing dozens of articles daily needs near-continuous crawling. A static brochure site that changes quarterly needs only infrequent recrawling. Crawlers assess change frequency through historical crawl data, if a page is different on every crawl it is scheduled for frequent recrawling.
Page importance: pages with high SEO equity: many high-quality inbound links, strong brand signals, high user engagement, are crawled more frequently than low-authority pages. Important pages have a higher return on crawl investment, the information they contain is more likely to be queried by users.
Crawl budget: the total crawl capacity allocated to a site limits how many pages can be crawled in a given period. For large sites with more pages than can be crawled in a single cycle crawl budget determines which pages are crawled and how frequently. Crawl budget is the intersection of how much the search engine wants to crawl a site, crawl demand, and how fast the site’s servers can handle crawling, crawl rate limit.
Server response signals: fast, reliable server responses that return 200 status codes with appropriate content indicate a healthy crawlable site. Slow responses, intermittent errors, and connection failures reduce crawl frequency, the crawler backs off to avoid overloading struggling servers and deprioritises sites that consistently fail to deliver content reliably.
sitemap lastmod signals: the lastmod attribute in XML sitemaps provides hints about when pages were last modified. Pages with recent modification dates are prioritised for recrawling over pages with old modification dates.
Crawling and robots.txt
Before beginning to crawl a site Googlebot fetches the site’s robots.txt file, the plain text file that communicates crawling permissions to automated agents. The robots.txt file is one of the first things any crawler retrieves when visiting a domain for the first time.
Robots.txt compliance: well-behaved crawlers including Googlebot respect robots.txt directives, not crawling URLs that are disallowed for their user agent. If a URL is disallowed in robots.txt Googlebot does not fetch its content, it may still be discovered through links and included in the crawl queue but the fetching step is skipped.
Crawling vs indexing distinction: robots.txt blocks crawling, not indexing. A URL that is disallowed in robots.txt but linked from other pages can still be discovered and indexed, without its content being crawled. The indexed version may show only the URL with no snippet. For complete exclusion from the search index a noindex directive on the page itself is required alongside robots.txt blocking.
robots.txt and redirect interactions: if a redirect source URL is disallowed in robots.txt Googlebot does not crawl it, but may still follow the redirect when it encounters the URL in other contexts. Disallowing redirect source URLs in robots.txt is generally unnecessary, well-designed redirect configurations do not need robots.txt to function correctly.
Crawling and redirect signals
The interaction between crawling and redirects is fundamental to how redirect management affects search engine behaviour. Crawling is the mechanism through which redirects are discovered and processed.
Redirect discovery through crawling: a redirect configuration only becomes known to search engines when Googlebot crawls the redirect source URL and receives the redirect response. A redirect configured today on a URL that Googlebot last crawled six months ago will not be processed until Googlebot next crawls the source URL, which may not happen for days or weeks. The crawl cycle is the bridge between redirect configuration and search engine awareness.
Redirect response processing: when Googlebot crawls a URL and receives a redirect response it processes the redirect type to determine appropriate action.
A 301 permanent redirect response triggers index update processing, Googlebot follows the redirect to the destination, crawls the destination content, and initiates the gradual process of deindexing the source URL and indexing the destination URL as the canonical version.
A 302 temporary redirect response causes Googlebot to follow the redirect and crawl the destination but does not trigger index update processing, the source URL remains indexed and the destination is treated as a temporary alternative rather than the canonical version.
A 404 error response signals that the URL no longer exists, Googlebot schedules the URL for reduced crawl frequency and eventual deindexation if the 404 persists across multiple crawl visits.
Crawl frequency affecting redirect processing speed: the speed at which redirect signals propagate through search engine indexes depends on crawl frequency. A high-authority site crawled frequently will have redirects processed and indexes updated within days. A low-authority site crawled infrequently may have redirects unprocessed for weeks, during which the redirect source URL remains in the search index and the destination has not yet received the transferred equity.
Crawling new redirect destinations: when Googlebot follows a redirect to a destination URL it crawls the destination to assess its content. If the destination URL is new and not yet indexed this crawl is the discovery event that enables the destination to enter the indexing pipeline. A redirect from an established indexed URL to a brand new destination accelerates the new destination’s indexation, the crawl triggered by the redirect visit is the new URL’s first crawl.
Crawling efficiency and redirect chains
Redirect chains: sequences of multiple redirects before reaching the final destination, affect crawling efficiency in specific ways.
Chain length and crawl cost: each redirect hop in a chain requires a separate HTTP request, Googlebot fetches the source URL, receives the redirect, fetches the next URL, receives another redirect, and so on until reaching the final destination. A three-hop redirect chain requires three HTTP requests to reach the final content, triple the crawl cost of a direct access to the destination.
For sites with many redirect chains the cumulative crawl cost is significant, crawl budget is consumed on redirect processing rather than content discovery.
Chain following limits: Googlebot follows redirect chains up to a limited number of hops, generally reported as around 5 hops maximum though Google has not published an exact limit. Redirect chains longer than the following limit are not fully processed, the final destination may not be crawled and the equity transfer may be incomplete or entirely absent.
Chain collapsing for crawl efficiency: replacing multi-hop redirect chains with direct single-hop redirects reduces crawl cost and ensures reliable equity transfer. A three-hop chain A → B → C → D should be collapsed to direct redirects A → D, B → D, C → D: each source URL redirects directly to the final destination rather than through intermediate hops.
Crawl errors and their impact
Crawl errors occur when Googlebot attempts to fetch a URL and receives an error response, or fails to connect at all. Understanding crawl errors and their implications helps diagnose technical SEO issues.
DNS errors: Googlebot cannot resolve the domain name to an IP address. Caused by DNS misconfiguration, domain expiry, or nameserver failures. All URLs on the domain fail to crawl, Googlebot cannot reach any content.
Server errors, 5xx: the server responds with a 5xx error code indicating a server-side failure. Pages returning consistent 5xx errors are crawled less frequently over time and may be deindexed if errors persist. Temporary 5xx errors during server maintenance recover without lasting index impact if the outage is brief.
404 Not Found: the URL does not exist. Googlebot crawls the 404 response, notes that the URL is missing, and reduces crawl frequency. If 404 persists across multiple crawl visits the URL is deindexed. Configuring 301 redirects from 404 URLs with valuable backlinks recovers the equity that the 404 is wasting.
Connection timeout: the server does not respond within the crawler’s timeout limit. Similar to 5xx errors, repeated timeouts reduce crawl frequency and may eventually result in deindexation.
Robots.txt blocked: the URL is blocked in robots.txt. Googlebot does not fetch the content, the crawl is blocked at the permission check stage rather than the fetching stage. Not technically a crawl error but appears in Google Search Console’s Coverage report as excluded URLs.
Monitoring crawling
Several tools provide visibility into how search engines are crawling a site, essential for diagnosing crawl issues and verifying that redirect configurations are being processed.
Google Search Console crawl stats: the Crawl Stats report in Google Search Console shows total crawl requests per day, average response time, distribution of responses by type, success, redirect, not found, other error, and crawl request breakdown by file type and purpose. This report provides a comprehensive view of how Googlebot is interacting with the site.
Server log analysis: web server access logs record every HTTP request including requests from Googlebot. Analysing logs for Googlebot’s user agent shows exactly which URLs were crawled, when they were crawled, what response codes were returned, and how much time each response took. Server log analysis provides more complete crawl data than Google Search Console, including crawl activity that Search Console does not report, but requires log access and processing tools.
URL Inspection tool: Google Search Console’s URL Inspection tool shows the last crawl date for any specific URL, what Googlebot saw when it crawled the page, and any crawl issues detected. Testing a redirect source URL through the URL Inspection tool confirms whether Googlebot has crawled it recently and how it processed the redirect response.
Real-time crawl monitoring: for large sites undergoing migrations or significant URL changes real-time server log monitoring provides immediate visibility into how Googlebot is processing the new configuration, whether it is following redirects, reaching redirect destinations, and updating its crawl patterns to reflect the new structure.