---
title: "How to diagnose indexing in Google Search Console"
slug: "diagnose-indexing-in-search-console"
category: "howto"
tags: ["howto", "seo", "google-search-console", "gsc", "indexing", "url-inspection", "tutorial"]
status: "stable"
last_updated: 2026-09-27
summary: "Read the GSC Pages (Coverage) report, compare indexed and live state with URL Inspection, and use the Removals tool only for emergencies."
related: ["[[howto/master-google-search-console]]", "[[seo/crawl-budget]]", "[[seo/helpful-content-update]]", "[[seo/technical]]", "[[seo/sitemaps-deep]]", "[[glossary/canonical-url]]", "[[howto/launch-a-new-site]]"]
---

## Overview

Use the Pages (Coverage) report to find which URLs Google rejected, then use URL Inspection to find out why for a specific URL. This page is the indexing half of [[howto/master-google-search-console]]; it assumes a verified Domain property and a submitted sitemap. The Removals tool belongs here too, because it is the one GSC control that changes what appears in results without changing the index.

## Steps

### 1. Read the Coverage (Pages) report

Coverage answers a single question: which URLs has Google indexed, and which has it rejected? Three statuses matter.

- Indexed: the URL is in Google's index and eligible to rank.
- Excluded: Google saw the URL but chose not to index it. Reasons include "Discovered, currently not indexed," "Crawled, currently not indexed," "Duplicate, Google chose different canonical," and "Noindex tag."
- Error: a hard failure. Server error, redirect loop, 404 in the sitemap.

"Discovered, not indexed" is the most common diagnostic miss. It means Google knows the URL exists but has not spent crawl budget on it; the page is competing for budget against the site's stronger pages. See [[seo/crawl-budget]].

### 2. Use URL Inspection for live and indexed state

URL Inspection answers two different questions: what does the current index say about this URL, and what would Google see if it crawled the URL right now?

```
URL Inspection > paste URL > read the indexed state.
Then click "Test live URL" > read the live state.
```

The indexed view shows the version Google last crawled, with the canonical it picked, the structured data it parsed, and the last crawl date. The live view shows what would be indexed on the next crawl. A diff between the two reveals stale content, canonical drift, or recent fixes that have not propagated.

Request indexing only after a meaningful change. Spamming "Request indexing" does not speed up future crawls.

### 3. Use Removals only for emergencies

The Removals tool hides a URL from search results for 6 months. It does not delete the URL from the index and does not affect ranking signals. Use it only when a page must disappear immediately: leaked data, PII exposure, legal takedown. For ordinary removals, use `noindex` plus a deindex wait.

## Verify it worked

```bash
# 1. Indexed count is close to the sitemap URL count (house heuristic, not a Google threshold).
# Google does not index every submitted URL; large or growing gaps are worth investigating in the not-indexed reasons.

# 2. URL Inspection on a recent URL shows "URL is on Google."
```

## Common errors

- Ignoring "Discovered, currently not indexed." It looks benign because the URL is not marked an error. It means Google knows the URL but has not crawled it yet. Persistent, large counts can point to crawl-budget limits or to site-wide quality; see [[seo/helpful-content-update]] for how Google treats sites with a high share of unhelpful content.
- Using URL Inspection on the staging hostname and then assuming the production URL is indexed. Inspection is per-property; check the production property.
- Reading "Duplicate, Google chose different canonical" as an error. It is Google's canonical selection at work; fix it only when Google picked the wrong URL; see [[glossary/canonical-url]].

## Related

- [[howto/master-google-search-console]]
- [[seo/crawl-budget]]
- [[seo/helpful-content-update]]
- [[seo/technical]]
- [[seo/sitemaps-deep]]
- [[glossary/canonical-url]]
- [[howto/launch-a-new-site]]
