indexing.io
All posts
Technical SEO

What Is Crawl Budget and When Does It Matter?

What is crawl budget? A plain-English guide to how Google sets it, when it actually limits indexing, how to check it in Search Console, and how to optimize it.

By the Indexing team

July 2026 · 8 min read

Coverage Console
White-hat · official methods
Presets

Ready to check coverage

Paste a sitemap to sweep every URL for index status, then submit the missing ones through the official Google Indexing API and Bing IndexNow.

Not indexed Discovered, not indexed Indexed ✓

Coverage

indexed

Submitting via

Avg time to index

URLs submitted

Now eligible

Live, interactive · sample data · official methods only

Official Google Indexing API · Bing IndexNow · verified sitemaps · no spam, no PBNs

What is crawl budget? Crawl budget is the number of URLs Googlebot will crawl on your site within a given window. It is set by two forces: crawl capacity, how many requests your server can take without slowing down, and crawl demand, how much Google actually wants your pages based on their popularity and freshness. On a small site it is effectively unlimited and not worth a thought. It becomes a real constraint only on large or very fast-changing sites, where Google rations its crawls and every wasted fetch is one your important pages do not get.

Crawl budget is one of those SEO terms that gets far more worry than it deserves. Most sites never hit the limit, and chasing it is a distraction from the work that actually moves indexing. But for the sites that do run into it, usually large ecommerce catalogs, marketplaces, publishers and programmatic projects, it is the quiet reason thousands of pages sit unindexed no matter how many times they are submitted. Here is what the term really means, how Google decides your budget, and how to tell whether it is your problem at all.

The two halves of crawl budget

Google describes crawl budget as the product of two separate things, and understanding the split is what makes the rest of it make sense.

Crawl capacity limit is the ceiling. Googlebot does not want to hammer your server, so it watches how your site responds and adjusts. When your pages return quickly and without errors, it crawls more freely; when responses slow down or you start throwing 5xx errors, it backs off to avoid making things worse. This is an infrastructure signal, not a content one. A slow or flaky server directly shrinks how much Google is willing to fetch, which is why keeping response times low and uptime solid is one of the few purely technical levers on crawl budget. Teams running large sites often watch server response times with uptime and response-time monitoring precisely because a degraded server quietly costs them crawl coverage before it ever shows up as downtime.

Crawl demand is the appetite. Even if your server could handle unlimited crawling, Google only wants to fetch as many URLs as it thinks are worth keeping fresh. Popular pages that earn links and traffic get crawled more often. Pages that change frequently get revisited to stay current. Pages that look like duplicates of something Google already has, or that rarely change, get crawled rarely if at all. Demand is where most crawl budget is won or lost, because it is driven by the quality and uniqueness of your URLs.

Put simply: capacity is about what Google can crawl, demand is about what Google wants to crawl. When people say a site has a crawl budget problem, it is almost always demand being spent on URLs that should never have been crawlable in the first place.

When crawl budget actually matters

Google has been unusually direct about this, so there is no need to guess. Crawl budget becomes a genuine constraint in three situations:

Site profileWhy crawl budget bites
Over ~10,000 pages changing dailyGoogle cannot re-crawl every page every day, so freshness competes for a limited number of fetches.
Over ~1,000,000 pages changing weeklyThe sheer URL count exceeds what Google will crawl in any reasonable window, so coverage is partial by default.
Many URLs in "discovered, currently not indexed"Google knows the URLs exist but has not spent the crawl to fetch them, a direct symptom of budget being consumed elsewhere.

If your site is a few hundred or a few thousand stable pages, you are almost certainly not in any of these buckets. Google crawls sites that size efficiently without special effort, so if such a site has pages missing from the index, the cause is nearly always thin or duplicate content, a stray noindex, blocked resources or weak internal linking, not crawl budget. Spending an afternoon on log-file analysis for a 500-page site is effort you could put into making ten pages genuinely better.

The tell that you actually have a crawl budget problem is the Search Console coverage report showing a large and growing pile of "discovered, currently not indexed" URLs on a site with tens of thousands of pages or more. That combination, real scale plus stranded discovery, is the signal to take crawl efficiency seriously.

How to check your crawl budget

Two sources give you the picture. The first is the Crawl Stats report in Google Search Console, under Settings. It shows total crawl requests over time, average response time, and a breakdown by response code, file type and purpose. A healthy trend is steady or rising requests with fast responses and mostly 200s. Warning signs are a rising share of 404s, redirects or 5xx responses, or response times creeping up, all of which mean crawls are being wasted or capacity is shrinking.

The second, and more precise, is server log analysis. Your logs record every request Googlebot actually makes, so you can see exactly which URLs it fetches and how often. This is where crawl waste becomes visible: if a big fraction of Googlebot's requests land on parameter URLs, faceted combinations, redirects or dead pages, that is budget being burned on things you never wanted indexed. The pages you care about are getting whatever is left over.

How to optimize crawl budget

Crawl budget optimization is not a clever trick. It is mostly the unglamorous work of removing URLs Google should not be crawling so the fetches concentrate on the ones that matter. The high-value moves:

  • Prune the URL space. Canonicalize duplicate and parameter URLs to their clean version, and block the faceted or filter combinations you do not want crawled so they stop multiplying into thousands of near-identical pages.
  • Kill the dead weight. Return a real 404 or 410 for pages that are gone, rather than soft 404s that keep getting re-crawled, and collapse redirect chains to a single hop so Googlebot is not spending fetches walking through redirects.
  • Keep sitemaps clean. Include only indexable, canonical URLs in your XML sitemaps. A sitemap stuffed with non-canonical or noindexed URLs sends Google to crawl pages you do not want kept.
  • Strengthen internal linking. Pages buried many clicks deep get crawled rarely. Hub pages and cross-links that put important URLs two or three clicks from the home page raise both their crawl frequency and their perceived importance.
  • Protect crawl capacity. Fast, reliable server responses let Google raise your crawl rate. Slow responses and errors make it back off.

Once the URL space is clean, the discovery step is mechanical: submit the canonical pages you want indexed through the official Google Indexing API, Bing IndexNow and clean sitemaps rather than waiting for Google to rediscover them. If you run a genuinely large or generated site, that submission and monitoring loop is worth automating; this is exactly the problem crawl budget optimization tooling and programmatic SEO indexing workflows are built to handle at scale.

Does crawl budget affect indexing?

Yes, but only through crawling. A page has to be crawled before it can be indexed, so if Googlebot never reaches a URL because its budget is spent elsewhere, that page simply stays out of the index, showing up as "discovered, currently not indexed." Free up the budget and Google fetches those URLs, at which point the normal indexing decision applies: it keeps the ones worth keeping and drops the thin or duplicate ones.

That last part is the important caveat. Crawl budget controls whether a page gets fetched, not whether Google decides to keep it. Getting more of your pages crawled is necessary but not sufficient; the pages still have to earn their place with genuine, distinct value. A tool can speed discovery and confirm what landed, but no tool, and no amount of crawl budget, forces Google to index a page it judges not worth the storage.

The bottom line

Crawl budget is how many URLs Google will crawl on your site, governed by your server's capacity and Google's demand for your pages. It is a non-issue for small and mid-size sites and a real constraint for large or fast-changing ones. If you are in the second group, the fix is to stop wasting crawls on duplicates, parameters and dead pages, keep your server fast, and submit the pages you want indexed through official channels, then verify with the URL Inspection API what actually got crawled and kept. Do that and Googlebot spends its limited attention where it earns you traffic. Ignore it on a small site and you have lost nothing, because crawl budget was never your problem in the first place. If you want the submit-and-monitor half handled for you, a bulk URL indexer that works through approved APIs closes the loop after you have cleaned up the crawl waste.

See Indexing sweep your coverage

Indexing bulk-submits your URLs through official methods, monitors coverage, diagnoses what is not indexed in plain English, and auto-resubmits. White-hat only, no spam, no guarantees that Google must index, just faster discovery.

Get every page indexed

Indexing bulk-submits your URLs through the official Google Indexing API, Bing IndexNow and sitemaps, monitors coverage, tells you in plain English why a page is not indexed, and auto-resubmits until it is found.

Official methods only · Coverage monitored in real time · Auto-resubmit

White-hat only · No spam, no PBNs, no black-hat · We speed discovery and re-crawl but Google decides what to index.