Googlebot

What Googlebot actually is — Smartphone vs Desktop, evergreen Chromium rendering, user-agent strings, IP-range verification, byte limits, and the crawl-vs-rank distinction.

First published: Jun 24, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #8 in Crawling#17 in How Search Works#94 in Technical SEO#125 on the site
1 evidence signal on this page

Googlebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants that share one robots.txt token: Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop. It runs an evergreen Chromium and renders JavaScript in a separate, later queue (crawl ≠ render). Crawling isn't a ranking factor, and blocking Googlebot in robots.txt isn't the same as deindexing — a blocked URL can still be indexed URL-only. The user-agent is trivially spoofed, so verify with reverse + forward DNS or Google's published IP ranges. 'Googlebot' is really Google Search's slice of a much larger crawling platform.

TL;DR — GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. is Google Search’s crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index., split into Smartphone (primary, mobile-first) and Desktop, which share one Googlebot robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. tokenA token is the smallest unit of text (or image/audio/video) an LLM processes — roughly 4 characters, or about ¾ of an English word. A context window is the maximum number of tokens (input plus output) a model can hold at once, like its short-term memory. — you can’t target them separately. It runs an evergreen Chromium and renders JavaScript in a separate, later queue (crawl ≠ render). CrawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. is required to rank but is not a ranking signal, and a robots-blocked URL can still be indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. URL-only. Verify it by reverse + forward DNS to a Google domain or against Google’s published IP ranges — the user-agentA user agent is the HTTP request header a client (browser, crawler, or bot) sends to identify itself. For crawlers, a short user-agent token — a substring of that string — is what robots.txt rules actually target. is trivially spoofed. And “Googlebot” is really just the Search-facing slice of a much bigger crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. platform.

Evidence for this claim Googlebot is Google's crawler, with smartphone and desktop crawler types that share the same product token. Scope: Current Googlebot crawler and user-agent documentation. Confidence: high · Verified: Google Search Central: Googlebot Evidence for this claim A claimed Google crawler can be verified using reverse and forward DNS or Google's published IP ranges. Scope: Google's current crawler-verification methods. Confidence: high · Verified: Google Search Central: Verify Googlebot

What Googlebot actually is

Google is precise about the name: “Googlebot is the generic name for two types of web crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. used by Google Search.” Those two types are Googlebot Smartphone (“a mobile crawler that simulates a user on a mobile device”) and Googlebot Desktop (“a desktop crawler that simulates a user on desktop”).

It is not one little program running on one machine. “Googlebot runs on thousands of machines,” as I describe it in my Googlebot guide, “they determine how fast and what to crawl on websites,” distributed across datacenters worldwide but egressing primarily from US IP addresses. Discovery happens mostly through links — Google finds new URLs “primarily from links embedded in previously crawled pages” — plus sitemapsA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing.. (For the full discovery and scheduling picture, that’s the crawling hub’s job.)

Smartphone vs Desktop — and why it’s “smartphone-first”

Under mobile-first indexingGoogle's practice of using the mobile version of a page's content — crawled by Googlebot smartphone — for indexing and ranking. It is not a separate index and not a ranking boost., the smartphone crawler is the primary one. Google: “For most sites Google Search primarily indexes the mobile version of the content. As such the majority of Googlebot crawl requests will be made using the mobile crawler, and a minority using the desktop crawler.” Mobile-first indexingGoogle's practice of using the mobile version of a page's content — crawled by Googlebot smartphone — for indexing and ranking. It is not a separate index and not a ranking boost. has been complete for all sites since October 2023, so the practical rule is: if content isn’t visible to the smartphone agent, it isn’t indexed. Match your content, structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding., metadata, and robots tags across mobile and desktop.

The robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. gotcha: “Both crawler types obey the same product token (user agentA user agent is the HTTP request header a client (browser, crawler, or bot) sends to identify itself. For crawlers, a short user-agent token — a substring of that string — is what robots.txt rules actually target. token) in robots.txt, and so you cannot selectively target either Googlebot Smartphone or Googlebot Desktop using robots.txt.” The only way to differentiate is to read the HTTP user-agent request header in your own server-side logic. (For the mechanics of that header format, see mobile-first indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. and user-agent.)

The user-agent strings

The robots.txt product token for both is just Googlebot. The full UA strings differ:

Googlebot Desktop:

Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Googlebot/2.1; +http://www.google.com/bot.html) Chrome/W.X.Y.Z Safari/537.36

Googlebot Smartphone:

Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/W.X.Y.Z Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

W.X.Y.Z is a placeholder for the current Chrome version, which moves as Googlebot’s evergreen Chromium is updated. Don’t trust the string on its own, though — it’s trivially spoofed (see verification below).

Evergreen Chromium and the rendering queue

This is the distinction that trips people up most: crawling and renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. are separate steps. Googlebot runs “an evergreen version of Chromium,” and it became evergreen back in May 2019 (jumping from the old Chrome 41 to current stable), which is why it now handles ES6+, IntersectionObserver, Web Components, and modern CSS. But it doesn’t execute your JavaScript the moment it fetches the HTML.

Google: “Googlebot queues all pages with a 200 HTTP status codeAn HTTP status code is the three-digit number a server returns with every response to tell a browser or crawler what happened to its request — success, redirect, client error, or server error. For SEO the code matters as much as the content: it tells Google and Bing whether to index a page, follow a redirect, retry later, or drop the URL from the index. for rendering, unless a robots meta tagThe robots meta tag is an HTML element in a page's head — <meta name=\"robots\" content=\"noindex\"> — that tells search engines how to index and serve that page. It's crawl-then-obey: a page blocked in robots.txt is never fetched, so the tag is never seen. or header tells Google not to index the page. The page may stay on this queue for a few seconds, but it can take longer than that. Once Google’s resources allow, a headless Chromium renders the page and executes the JavaScript.” The rendering service (WRS) behaves like a modern browser but with quirks worth knowing: it’s effectively stateless — local/session storage and cookies are cleared across page loads — it doesn’t fetch images or videos (to save bandwidth), caches aggressively (and may ignore your caching headers), and doesn’t support WebSockets or WebRTC. If your content only appears after a click or a JS-driven navigation that isn’t a real <a href> link, expect rendering trouble. (Depth lives in the rendering sibling.)

Byte limits

Googlebot doesn’t download an unlimited amount per URL. As of Google’s March 2026 Inside Googlebot update, it fetches roughly the first 2 MB of any individual URL (including the HTTP header) and up to 64 MB for a PDF. The figure is a moving target — Google’s own framing is that “this limit is not set in stone and may change over time as the web evolves and HTML pages grow in size,” and earlier docs listed 15 MB (which turned out to be the broader infrastructure default, not Search’s number). The practical point holds regardless: anything past the cutoff simply isn’t fetched — “to Googlebot, they simply don’t exist.” Keep critical content and markup above the bloat.

How Googlebot fetches — politely

  • Crawl rateCrawl rate is how fast a search engine crawler fetches pages from your site — the number of simultaneous requests it makes and the delay between them. Google sets it automatically based on your server's health; it's the supply side of crawl budget, not a ranking factor. is algorithmic and self-throttling. “For most sites, Googlebot shouldn’t access your site more than once every few seconds on average.” It speeds up or backs off based on your server’s health.
  • Status codes are the lever. Returning 429, 500, or 503 tells Googlebot to slow down — but that affects the entire hostname, not just the erroring URLs, and only works for a day or two before sustained errors start dropping pages from the index. John Mueller: “I’d only expect the crawl rate to react that quickly if they were returning 429 / 500 / 503 / timeouts,” and “404s are generally fine & once discovered, Googlebot will retry them anyway.”
  • crawl-delay is ignored. Google does not process the non-standard crawl-delay robots.txt directive at all. (Bing does honor it — one of the real Googlebot/BingbotBingbot is Microsoft Bing's primary web crawler — the bot that discovers, fetches, and renders pages to build the Bing index. That index also powers Yahoo, DuckDuckGo, Ecosia, and Microsoft Copilot, so Bingbot's reach is far wider than Bing's own search-market share. divergences.)
  • Crawling tracks crawl demandCrawl demand is the 'want' side of crawl budget — how much a search engine wants to crawl a site or URL, driven by popularity, staleness, and perceived inventory (plus temporary spikes from site moves). It's distinct from crawl rate/capacity, the 'can' side., not a flat quota — capacity (what your server can take) plus demand (popularity and staleness). For most sites this is a non-issue; it only bites at real scale. The full treatment is in crawl budgetThe number of URLs an engine will crawl in a timeframe..

Verifying it’s really Googlebot

The user-agent header is “often spoofed by other crawlers” — so it alone proves nothing. Google’s crawlers identify themselves three ways: the user-agent header, the source IP, and the reverse-DNS hostname of that IP. Two real verification methods:

  1. Manual (one-off). Reverse-DNS the source IP; confirm it resolves to a hostname ending in googlebot.com, google.com, or googleusercontent.com (the mask looks like crawl-***-***-***-***.googlebot.com); then forward-DNS that hostname and confirm it returns the original IP.
  2. Automatic (at scale). Match the IP against Google’s published CIDR ranges. Google has split these from the old single googlebot.json into several JSON files by crawler category — the Googlebot one is https://www.gstatic.com/ipranges/common-crawlers.json (the legacy googlebot.json URL still redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. to the same data).

Both are in the Scripts tab, for macOS/Linux and Windows. Why bother? Plenty of traffic lies about being Googlebot, so logs that “show Googlebot” can be largely impostors — verify before you trust.

TIP

Verify a claimed Googlebot request against both published ranges and forward-confirmed reverse DNS with my free Googlebot Verifier Free

  1. Enter the source IP from your server log and the crawler identity it claims.
  2. Check both the published-range result and reverse-then-forward DNS confirmation; the user-agent string alone is not evidence.
  3. Exclude or separately label failed claims before using crawler traffic in crawl-rate or log-analysis decisions.
A Googlebot user-agent can be copied. Verify the source network and the reverse-to-forward DNS round trip before trusting the request.

A focused Googlebot Verifier finding says the IP claims to be Googlebot but is outside Google's published ranges and fails forward-confirmed reverse DNS.

Googlebot is one bot in a fleet

“Googlebot” is genuinely a bit of a misnomer. Gary Illyes, March 2026: “I mean, calling it Googlebot, that’s a misnomer,” and “Googlebot is not our crawler infrastructure.” The infrastructure underneath, in his words, is “software as a service, if you like. SaaS” — a shared platform many Google products draw from. What you see in your logs is the Search slice of it: “When you see Googlebot in your server logs, you are just looking at Google Search.” He also notes there are “dozens, if not hundreds of different crawlers,” most too small to bother documenting.

The named ones you’ll actually meet alongside Googlebot include Googlebot-Image, Googlebot-Video, and Googlebot-News (which share Googlebot’s strings/tokens), Storebot-Google, and Google-InspectionTool (powers the URL Inspection and Rich Results tools). Two behave unusually: AdsBot ignores the global * robots.txt rule (a Disallow: / under User-agent: * still won’t stop it), and Google-Safety ignores robots.txt entirely. The AI-related crawlers — Google-Extended (controls Gemini training; not a ranking signal) and GoogleOther (R&D crawls, offloaded from Googlebot) — exist too, but the AI crawlersAI crawlers are bots from AI companies that fetch web pages to train language models, build AI-search indexes, or answer live user questions. They come in three categories, each with its own user-agent tokens and its own robots.txt controls. sibling covers those in depth, so I’ll point there rather than duplicate.

How to control Googlebot

Three controls, three different effects:

  • robots.txt stops crawling, not indexing. Use it to keep bots out of low-value URL spaces — never as a deindexingDeindexing means getting a URL to stop appearing in Google's search results. There's no single delete button — the right method depends on whether you own the page, whether removal is temporary or permanent, and whether the content should still exist. tool.
  • noindex stops indexing — but Googlebot must be allowed to crawl the page to see the tag in the first place.
  • Password protection blocks access entirely.

Which brings us to the single most misunderstood Googlebot fact: “There’s a difference between crawling and indexing; blocking Googlebot from crawling a page doesn’t prevent the URL of the page from appearing in search results.” A robots-blocked URL can still get indexed URL-only if something links to it. To actually remove a page, allow crawling and add noindex. I’ve written this up in detail in Indexed, though blocked by robots.txt.

For the wider pipeline Googlebot lives inside — URL discoveryURL discovery is how search engines find URLs to crawl — by pull (following links and reading sitemaps) and by push (you notify them via IndexNow, the Indexing API, or WebSub). It's the find step that comes before a page is ever fetched., the crawl scheduler, rendering, and the crawl-vs-index-vs-rank distinctions — see the crawling hub and How Search WorksSearch works in three stages — crawling, indexing, and serving (ranking). A page has to clear each one to appear in results: getting crawled doesn't mean you're indexed, and getting indexed doesn't mean you rank..

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.