SEO glossary

What is Index Coverage?

Learn what index coverage means—how much of your site Google has indexed versus excluded or unknown—and how to read Search Console coverage states and reason buckets.

IndexingUpdated August 14, 2026
Also known asindexing coverageGoogle coverage reportpage indexing coverage

Definition

Index coverage describes the extent to which a website's URLs are represented in a search engine's index, typically reported as indexed versus not-indexed populations with categorized exclusion reasons in tools like Google Search Console.

Index coverage: the indexed vs everything-else map

Index coverage is how SEO teams visualize what share of known URLs Google keeps in the index versus excludes, defers, or has not yet processed. The term comes from years of Search Console "coverage" reporting; today the same ideas live under Page indexing, but practitioners still say index coverage when they mean site-wide index health breakdowns.

Coverage is a population statistic—not a single URL verdict. It answers: of the URLs Google is aware of on our property, how many are indexed, and why are the rest not?

Coverage states at a glance

Modern Page indexing reports group URLs into familiar buckets:

Coverage bucketPlain meaningAction type
IndexedIn the corpus; eligible for resultsMonitor, protect
Not indexedKnown but not in indexed setDiagnose by sub-reason
↳ Excluded by noindexPublisher blocked indexingVerify intentional
↳ Duplicate, Google chose different canonicalConsolidationFix canonical alignment
↳ Duplicate without user-selected canonicalAmbiguous duplicatesDeclare canonical
↳ Crawled — currently not indexedQuality or deferralContent, links, uniqueness
↳ Discovered — currently not indexedNot crawled or queuedDiscovery, crawl priority
↳ Page with redirectRedirect handlingEnsure target indexed
↳ Soft 404Empty or unhelpful 200Fix template or 404
↳ Server error (5xx)Fetch failuresInfrastructure
↳ Blocked by robots.txtCrawl preventedrobots policy
↳ Not found (404)Missing URLRedirect or remove links
Index coverage snapshot:
  Indexed:                    36,100  (72%)
  Not indexed:                14,100  (28%)
    ├─ Excluded by noindex:    6,400  (intentional facets)
    ├─ Crawled not indexed:    3,200  ← quality program target
    ├─ Discovered not indexed: 2,100
    └─ Other reasons:          2,400

Reading coverage charts, not just totals

Healthy monitoring tracks shape, not only indexed count:

  1. Indexed trend line — slow growth on publishing sites; stable on mature catalogs
  2. Not-indexed composition — which reason buckets grow?
  3. Spikes correlated with deploys — template regressions show as sudden noindex waves
  4. Sample URLs per bucket — validate that labels match reality

A rising indexed count with exploding "crawled — currently not indexed" is a quality crisis, not a win.

Coverage vs crawl stats vs performance

ReportMeasuresBlind spots
Index coverageIndex membership outcomesNo ranking data
Crawl statsFetch volume, response timesNot indexing decisions
PerformanceImpressions, clicks, positionOnly URLs with impressions
Funnel alignment:
  Crawled URLs (logs)     41,800
  Indexed (coverage)      36,100
  URLs with impressions   8,400

The gap between indexed and impressions is ranking and demand, not coverage failure.

Building a coverage reconciliation model

Enterprise teams reconcile three populations:

PopulationSource
Intended indexable inventorySEO + product URL strategy
Crawled populationLogs, crawl tools
Coverage populationSearch Console export
Reconciliation example:
  Strategic indexable:     38,000
  GSC indexed:             36,100  (95% of target — good)
  GSC not indexed:         14,100
    Of which intentional:   8,500  (facets, noindex)
    Of which fixable:       5,600  ← backlog
  Never seen in GSC:        2,200  (discovery gap)

Coverage reports only include URLs Google knows about. Unknown orphans will not appear until discovered.

Coverage after migrations

Migrations produce characteristic coverage signatures:

PhaseCoverage pattern
Pre-launchOld URLs indexed; new URLs discovered-not-indexed
Launch weekRedirect bucket spikes; duplicate canonical noise
StabilizationIndexed count shifts to new URL patterns
Failure modeIndexed cliff + 404 bucket growth

Track indexed URL samples daily during migrations—aggregate charts lag painful URL-level failures.

Improving coverage by reason bucket

Align playbooks to Google's categories:

Crawled — currently not indexed

  • Strengthen unique body content on template
  • Improve internal links from indexed hubs
  • Consolidate near-duplicates
  • Resolve soft 404 patterns

Discovered — currently not indexed

  • Add sitemap entries and internal links
  • Fix crawl budget waste on traps
  • Request indexing for critical URLs after fixes

Duplicate without user-selected canonical

  • Implement consistent rel=canonical
  • Align redirects with canonical targets
  • Remove conflicting signals in hreflang

Excluded by noindex

  • Confirm intentional; remove accidental staging directives

Coverage sampling and API exports

Weekly exports power coverage dashboards:

columns: url, coverage_state, last_crawl, canonical, referring_urls
filter: coverage_state != 'Indexed' AND revenue_tier = 'A'
sort: revenue DESC
→ prioritized fix list for engineering

Automate alerts when indexed count drops >5% week-over-week on /product/ paths.

Coverage misconceptions

  • Myth: "100% coverage is the goal." Reality: exclude junk by design; coverage should match strategy.
  • Myth: "Coverage fixes rankings." Reality: coverage enables eligibility; ranking is separate.
  • Myth: "Removing URLs from sitemap improves coverage %." Reality: math games; fix real exclusions.
  • Myth: "Coverage updates in real time." Reality: GSC lag; confirm critical URLs with Inspection.

Coverage for executives and multi-property sites

Each Search Console property reports coverage independently—www vs bare domain, regional subfolders, or legacy HTTP properties can split the picture. Prefer domain-level verification where possible.

For stakeholders, translate buckets plainly: Indexed = pages Google can show; Excluded by noindex = pages you asked to hide; Crawled not indexed = quality backlog. Pair site-wide % with revenue-weighted coverage on tier-A URLs.

How Crawlox helps

Crawlox closes the gap between your URL inventory and what Search Console coverage can explain—surfacing indexability issues, orphan pages, and duplicate templates before they inflate "crawled — currently not indexed" buckets. Export Crawlox crawl data alongside GSC coverage exports to build reconciliation dashboards that show not just how much is indexed, but which fixable URLs are still missing from coverage.

Related terms

Frequently asked questions

Is index coverage the same as the old Google Index Coverage report?

Google rebranded and refined reporting under Page indexing in Search Console. Practitioners still say index coverage for the indexed vs not-indexed breakdown and reason buckets—same conceptual job, updated UI labels.

Why does my indexed count not match my sitemap URL count?

Sitemaps list URLs you submit for discovery. Coverage counts URLs Google knows about with indexing outcomes. Sitemaps may include non-indexable URLs; Google may index URLs not in sitemaps via links.

What is a healthy index coverage ratio?

Depends on site type. Compare indexed URLs to your strategic inventory—not every CMS row should be indexed. Sudden ratio shifts matter more than absolute percentages.

Can coverage be good while traffic is bad?

Yes. Coverage measures corpus membership, not rankings or demand. Full coverage of irrelevant pages still yields zero impressions.

How often does index coverage data update?

Search Console aggregates with delay—often days behind real-time crawl. Use URL Inspection for single-URL freshness; use coverage reports for trends.

References

Explore authoritative guidance and frameworks related to index coverage.

Explore every glossary definition

Return to the glossary to search by term, alias, starting letter, or category.

Browse glossary