Page Indexing Report (GSC)

How Google Search Console's Page Indexing report (formerly Index Coverage) works — indexed vs. not indexed, the Source column, every status, Validate fix, and report lag.

First published: Jun 23, 2026 · Last updated: Aug 2, 2026 · Advanced
demand #18 in Indexing#55 in How Search Works#310 in Technical SEO#426 on the site

The Page Indexing report (formerly Index Coverage, now labeled 'Pages' under 'Indexing' in Google Search Console) shows how many of your URLs are indexed vs. not indexed, then groups the not-indexed ones by reason in the 'Why pages aren't indexed' table. It's an aggregate, property-wide report — for a single page you use URL Inspection instead. The single most useful mindset: not indexed is not necessarily bad — canonical/duplicate, noindex, robots, and intentional 404s are all correct outcomes, and Google says you should only expect your canonical pages to be indexed. Filter by Source = Website to find what you can actually fix, work the pre-sorted table top-down, and use Validate fix (~2 weeks) to ask for a recrawl. Sites under 500 pages probably don't need it. This hub explains how to read the report and links down to every individual status.

TL;DR — The Page Indexing report (formerly Index Coverage; “Pages” under “Indexing” in GSC) is an aggregate view of every URL Google knows about on your property, split into Indexed and Not indexed, with the not-indexed URLs grouped by reason in the “Why pages aren’t indexed” table. It’s not for single pages — that’s URL Inspection. The mindset that matters: not indexed is not necessarily bad — canonical/duplicate, noindex, robots, and intentional 404s are correct outcomes; Google says you should only expect your canonical pages to be indexed. Filter by Source = Website to find what you can fix, work the pre-sorted table top-down, and use Validate fix (~2 weeks typical) to request a recrawl. The report lags reality. Sites under 500 pages probably don’t need it.

Evidence for this claim The Page indexing report shows indexed and not-indexed pages known to Google and groups non-indexing by reason. Scope: Current Page indexing report terminology and behavior. Confidence: high · Verified: Google Search Console: Page indexing report Evidence for this claim The Page indexing report is for site-wide patterns; URL Inspection provides the indexed and live-test details for an individual URL. Scope: Current distinction between Page indexing and URL Inspection. Confidence: high · Verified: Google Search Console: URL Inspection tool

What the report actually is (and its old name)

Google’s one-liner is the cleanest definition: the report lets you “see which pages Google can find and index on your site, and learn about any indexing problems encountered.” More precisely, it “shows the Google indexing status of all URLs that Google knows about in your property.” It’s an aggregate, property-wide report — not a per-URL tool.

If you’ve been doing SEO for more than a couple of years, you knew this as the Index Coverage report. Google renamed it to Page indexing in 2022 (it shows as “Pages” in the left nav), so a lot of older guides — and a lot of people’s muscle memory — still call it “Coverage.” Same report. I’m spelling that out because people searching the old name need to know they’re in the right place. (The rename was first spotted in a Google I/O 2022 demo and rolled out later that year; before that, a January 2021 data-quality update had already reworked several of the statuses, which is why some old screenshots won’t match what you see today.)

How to read the report

The summary view has a few parts worth understanding before you start clicking.

Indexed vs. Not indexed. The two totals above the chart. Google notes these are “complete and accurate from Google’s perspective, but small discrepancies can occur for various reasons” — so don’t expect them to perfectly equal your URL count. You can click “View data about indexed pages” for the historical indexed count and a sample of up to 1,000 indexed URLs.

The “Why pages aren’t indexed” table. This is the heart of it. It “shows issues that prevented URLs from being indexed on your site,” sorted by what Google thinks are the most important issues to address. Start at the top — the ordering is already a priority list.

The Source column — your fix filter. Each issue is sourced to either Google or the website, and Google’s guidance is direct: “The Source value in the table shows whether the source of the issue is Google or the website. In general, you can fix only issues where the source is listed as ‘Website’.” So Source = Website plus a validation state of “failed” or “not started” is your real to-do list. Google-source statuses (like a duplicate it chose to consolidate) usually aren’t yours to “fix.”

The “Improve page experience” table. A separate table for “issues that didn’t prevent page indexing, but we recommend that you fix them.” These are warnings, not blockers.

The sitemap filter. Above the chart you can scope the report to All known pages, All submitted pages, Unsubmitted pages only, or a specific sitemap. (Note: “A URL is considered to be submitted by a sitemap even if it was also discovered through some other mechanism.”) This filter is genuinely useful — more on that under validation.

The example URL lists are capped. When you open a status, the sample of affected URLs is “limited to 1,000 items, and isn’t guaranteed to show all URLs in a given status, even when less than 1,000 items.” Treat the examples as a sample, not a complete export of everything in that bucket.

Triage order, if you only have ten minutes. Scope the report to the sitemap that represents your intended URL inventory, so you’re reading it against the pages you actually want indexed. Scan the totals for any unexpected change first — a drop or spike is more urgent than a steady-state number. Filter to Source = Website for the issues you can actually act on. Within that filtered list, prioritize whatever’s hitting a business-critical template or URL pattern over an isolated one-off. Then fix the whole pattern — not just one URL — before you validate.

Report vs. URL Inspection — use the right one

The biggest practical distinction on this page. Google: “This report isn’t used to investigate the index status of specific pages. To find the index status of a specific page, use the URL Inspection tool.”

  • Page Indexing report = aggregate trends, grouped by reason, property-wide.
  • URL Inspection = one URL’s live/indexed state, the canonical Google chose, and a “Test live URL” option.

When a status confuses you, pull a sample URL out of it and inspect that URL. The two tools are meant to be used together.

A note on lag — the report is behind reality

This one saves a lot of false alarms. The report doesn’t update in real time; it reflects the last time Google crawled each URL, and the counts move when Google recrawls (Google: it “updates your instance count whenever it crawls a page with known issues, whether or not you explicitly requested fix validation”). Google’s John Mueller has described the indexing report as lagging behind — his read is that it’s more a matter of timing, where URLs show up in the report and then get indexed over time, so the report is essentially catching up to a state that’s already changed. Don’t over-react to a number that may just be stale.

One limitation worth knowing before you lean on URL Inspection’s “Test live URL” to settle an argument: the live test confirms whether Google can currently crawl and index that URL right now — it doesn’t tell you which canonical Google will choose among a set of duplicates. Canonical selection is a separate indexing decision made against the indexed data, not something the live test evaluates. For canonical/duplicate statuses specifically, the indexed result in URL Inspection (not the live test) is the signal to trust, and it can still lag your latest change.

Where to go next — every status, grouped

The “Why pages aren’t indexed” table is the map to the rest of this section. Each status below is its own deep dive (they’re in the sidebar too). I’ve grouped them by what’s actually going on, because the right reaction is completely different depending on the group — some you fix, some you confirm and leave alone.

Not indexed — Google’s choice (often nothing to fix)

  • Discovered – currently not indexed — Google found the URL but hasn’t crawled it yet. Usually a crawl-demand or site-quality signal, not a one-page bug.
  • Crawled – currently not indexed — Google crawled the page and chose not to index it (yet). A large bucket here often points at quality or duplication, site-wide.

Blocked by you (intentional — confirm it’s deliberate)

  • Blocked by robots.txt — your robots.txt told Google not to crawl it.
  • URL marked ‘noindex’ — Google found a noindex directive when it tried to index the page.

HTTP errors (these you usually fix)

  • Blocked due to unauthorized request (401) — the page asked Googlebot to authenticate.
  • Blocked due to access forbidden (403) — access wasn’t granted to the crawler.
  • Blocked due to other 4xx issue — a 4xx that isn’t one of the named ones.
  • Server error (5xx) — your server returned a 500-level error when the page was requested.
  • Not found (404) — the URL returned a 404 when requested.

Canonical & duplicates (mostly correct — verify the chosen canonical)

  • Alternate page with proper canonical tag — this page correctly points at its canonical, which is indexed. Working as intended.
  • Duplicate without user-selected canonical — Google clustered it as a duplicate and chose a different page as canonical, and you never declared one.
  • Duplicate, Google chose different canonical than user — you declared a canonical, but Google picked a different URL. (See canonicalization — the fix is aligning your signals, not adding a stronger tag.)

Redirects (one is normal, one is a bug)

  • Page with redirect — a non-canonical URL that redirects to another page. This is normal; the destination is what gets indexed.
  • Redirect error — a broken redirect: a chain that’s too long, a loop, an empty or bad target URL, or one that exceeds the max URL length. This one you fix.

Warnings (indexed, but worth attention)

  • Indexed, though blocked by robots.txt — the page got indexed despite your robots.txt block (links to it were enough). Google can’t read its content or any noindex you put there — a classic crawl-vs-index gotcha.
  • Page indexed without content — indexed, but Google couldn’t read meaningful content (often a rendering or cloaking-like issue).

I’m naming each status the way Google labels it so the per-status articles auto-link as they publish. The recurring theme: the canonical/duplicate, noindex, robots, and intentional 404 buckets are frequently correct — Google literally says “You should not expect all URLs on your site to be indexed, only the canonical pages.” The buckets to actually chase are the HTTP errors, redirect errors, and unexpectedly large “crawled/discovered not indexed” piles.

Fixing and validating

Once you’ve fixed the real issues (Source = Website), you tell Google to re-check:

  1. Fix every instance of the issue on your site first.
  2. Open the issue details and click “Validate fix.”
  3. Don’t click it again until validation succeeds or fails.

Timing: “Validation typically takes up to about two weeks, but in some cases can take much longer, so please be patient.” The request moves through states (Not started → Started → Looking good → Passed, or Failed, or N/A if Google found the issue fixed on its own before you ever started). You don’t strictly have to click validate at all — Google can detect fixes on its own — but validation gives you a tracked result.

The speed trick: validate against a subset. Submit a sitemap of just your most important pages, filter the report to that sitemap, then request validation — Google notes “a validation request against a subset of your affected URLs can complete faster.”

Diagnosing drops, spikes, and “more not-indexed than indexed”

A few patterns Google itself calls out, and that I look for first:

  • Indexed pages dropped with no errors showing. You probably blocked existing pages — a new robots.txt rule, a noindex, or a login requirement. Look for a matching spike in a non-indexed status.
  • More not-indexed than indexed. Usually a robots.txt rule blocking a big section, or a flood of duplicates from filter/sort parameters (?type=dress, ?color=green, ?sort=price). That’s a faceted navigation and canonicalization problem more than an indexing one.
  • A sudden error spike. Often a template change that introduced an error across many URLs, or a submitted sitemap full of URLs that are blocked or noindexed.

A few things to keep straight

  • Indexed ≠ ranking. Indexed only means eligible to appear in Search. Whether it ranks depends on the query and many other factors.
  • 100% coverage isn’t the goal. Per Google, only your canonical pages should be indexed — a healthy site has plenty of intentionally not-indexed URLs.
  • Validate fix doesn’t re-index instantly. It queues a recrawl of known affected URLs; budget ~2 weeks.
  • GSC data has limits. Example lists cap at 1,000; totals can drift slightly; and the report lags. (My own GSC data study — Anonymized Queries Make Up Nearly Half of GSC Traffic — is a good reminder that Search Console is a powerful but incomplete picture.)

A one-liner on Bing

Bing has no single “Page Indexing” equivalent. The closest aggregate view is Site Explorer in Bing Webmaster Tools (browse your site as a folder tree broken down by indexed, error, warning, and excluded pages), and URL Inspection in Bing covers the single-URL case. Use Site Explorer for the bird’s-eye view, URL Inspection for one page.

This page is the hub for the Page Indexing report; the per-status deep dives sit under it. For the whole pipeline — discovery, crawling, rendering, indexing, and serving — see the How Search Works cluster.

Add an expert note

Pin an expert quote

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