Crawlability & Indexing

Before a page can rank in search, it has to be found, crawled, and indexed — and if any of those steps fails, the best content in the world is invisible to search engines. Crawlability and indexing are the technical foundation of SEO: they govern whether search engines can access your pages, understand their structure, and add them to the index they search. Get this wrong (a stray robots.txt rule, an accidental noindex, a canonical pointing at the wrong page) and traffic can vanish overnight, no matter how good your content or links are.

The key distinction many people blur: crawling (a bot fetching the page) and indexing (the page being stored and made eligible to appear in results) are different steps. A page can be crawled but not indexed, or blocked from crawling yet still indexed from external links. Understanding the controls for each — robots.txt, sitemaps, canonical tags, and noindex — is what lets you steer search engines deliberately instead of hoping.

TL;DR

Quick Example

The two most consequential controls — and they do different things:

Crawling vs Indexing

They're sequential but distinct: blocking crawling doesn't guarantee a page won't be indexed (it can be indexed from links pointing to it, without content), and a crawlable page isn't automatically indexed (the engine decides). Controlling each requires the right tool.

The Key Controls

Crawl Budget

For large sites, search engines allocate a finite crawl budget — how many pages they'll crawl in a given time. Wasting it on low-value, duplicate, or infinite URL spaces (faceted navigation, session ids) means important pages get crawled less often. Manage it by blocking crawl traps, fixing duplicate URLs with canonicals, and keeping a clean internal link structure. Small sites rarely need to worry; large ones must.

Common Indexing Problems

Best Practices

Common Mistakes

Blocking a page in robots.txt to keep it out of search

Leaving a staging noindex in production

FAQ

What's the difference between crawling and indexing?

Crawling is when a search engine's bot fetches a page's content by following links and sitemaps. Indexing is when that content is analyzed and stored in the search index, making the page eligible to appear in results. They're separate steps: a page can be crawled but not indexed (the engine decides it's not worth indexing), and — counterintuitively — a page blocked from crawling can still be indexed based on links pointing to it (just without its content). Because they're distinct, you control them with different tools: robots.txt for crawling, noindex for indexing.

How do I stop a page from appearing in search results?

Use a noindex directive (a meta robots tag or an X-Robots-Tag HTTP header) — and crucially, make sure the page is still crawlable so the bot can actually read that directive. The common mistake is blocking the page in robots.txt instead, which prevents crawling: the bot never sees the noindex, and the page can remain indexed from external links. So to reliably remove a page from the index, allow crawling and add noindex; don't block it in robots.txt at the same time. For already-indexed pages, also request removal in Search Console.

What is a canonical tag and when do I need one?

A canonical tag (<link rel="canonical" href="...">) tells search engines which URL is the authoritative version when the same or very similar content is accessible at multiple URLs — for example, with tracking parameters, http/https, www/non-www, or print/mobile variants. It consolidates ranking signals (links, relevance) onto the canonical URL instead of splitting them across duplicates, and prevents duplicate-content dilution. You need it whenever content is reachable via more than one URL, which is extremely common; setting canonicals correctly is a core technical-SEO task.

Why isn't my page getting indexed?

Many possible causes, best diagnosed via Search Console's Page Indexing report. Common ones: it's blocked by robots.txt or carries a noindex directive; a canonical tag points elsewhere (so Google indexes the canonical instead); it's an orphan page with no internal links, so it was never discovered; the content is low-value or duplicate and Google chose not to index it; it relies on JavaScript the crawler didn't render (see SEO for SPAs); or it's simply new and not yet crawled. Check the indexing report for the specific reason, fix it, submit the URL, and request reindexing.

Related Topics

References