Indexing Diagnosis Worksheet for Search Console
"Not indexed" is a symptom, not a diagnosis. Google's Page indexing report has more than a dozen reasons, and the fix for one can make another worse. Request indexing on a page that's really a duplicate and nothing happens. Remove a robots.txt block before removing noindex and you can end up with the wrong page in search. This worksheet makes you write down the evidence first: the exact status Google reports, what robots.txt and meta robots say, which canonical you declared and which one Google chose. Then each row gets one fix and one owner. Not every page should be indexed, and the worksheet helps you tell those apart from the ones that are costing you.
- Format
- Editable Word .docx
- Length
- 9 variants · ~9 pages
- Price
- 100% free
- Setup
- Copy or download
Get the editable Word doc in one click.
★★★★★4.9·Free · No signup · Instant download
Indexing Diagnosis Worksheet for Search Console
Start by proving the page is genuinely excluded
Before changing anything, confirm the URL is truly missing from Google's index. A page that ranks for its own title is already indexed.
- Search Console URL Inspection: paste [Full URL] into the inspection bar and read the verdict at the top. "URL is on Google" means it is indexed; "URL is not on Google" means it is not.
- site: query: run a search for [site:example.com/path]. No result is a strong signal, but trust URL Inspection over [site:], which can lag.
- Coverage context: open the Page Indexing report and find which excluded reason this URL falls under.
Record the exact reason string Google reports. The fix for "Crawled - currently not indexed" is completely different from "URL blocked by robots.txt," so capturing the precise state now saves wasted effort later.
Inspected URL: [URL] Reported state: [State]
Why it works
Find the real reason a page isn't indexed and hand the fix to the right person, instead of resubmitting and hoping.
- Logs Google's exact status with robots, meta robots and both canonicals, so the evidence comes before the fix.
- Maps each status to a first check and a usual owner, so the work reaches the right team.
- Asks whether each page should be indexed at all, so you stop chasing pages that are correctly excluded.
9 ready-to-use variants
Copy allConfirm the Problem
When to use: You think a page should be indexed but aren't sure it actually isn't.
Start by proving the page is genuinely excluded
Before changing anything, confirm the URL is truly missing from Google's index. A page that ranks for its own title is already indexed.
- Search Console URL Inspection: paste [Full URL] into the inspection bar and read the verdict at the top. "URL is on Google" means it is indexed; "URL is not on Google" means it is not.
- site: query: run a search for [site:example.com/path]. No result is a strong signal, but trust URL Inspection over [site:], which can lag.
- Coverage context: open the Page Indexing report and find which excluded reason this URL falls under.
Record the exact reason string Google reports. The fix for "Crawled - currently not indexed" is completely different from "URL blocked by robots.txt," so capturing the precise state now saves wasted effort later.
Inspected URL: [URL] Reported state: [State]
Crawled-Not-Indexed & Discovered-Not-Indexed
When to use: Google knows your URL but has chosen not to index it (yet).
Two different signals, two different responses
These states usually point to value or crawl-budget issues rather than a technical block, so resist the urge to just hit "Request indexing" repeatedly.
- Crawled - currently not indexed: Google fetched the page but decided it wasn't worth indexing. This is most often a quality or value signal: thin, duplicative, or low-demand content.
- Discovered - currently not indexed: Google found the URL (often via your sitemap) but hasn't crawled it yet. This frequently reflects crawl-budget limits or a slow, large site.
For Crawled-not-indexed, strengthen the page: deepen the content, add internal links from relevant indexed pages, and make sure it serves clear intent. For Discovered-not-indexed, reduce crawl waste: fix slow responses, prune low-value URLs, and improve internal linking so important pages are reachable in fewer clicks.
State: [State] Likely cause: [Quality / Crawl budget]
URL Blocked by robots.txt / Marked 'noindex'
When to use: A directive is actively keeping the page out of the index.
Check for self-inflicted blocks
These are the most fixable causes because the page is excluded by an explicit rule you control. URL Inspection will name the directive directly.
- URL blocked by robots.txt: Google was disallowed from crawling. Open your robots.txt and find the rule matching [URL path]. Remember that a robots block prevents crawling, not always indexing, but it stops Google from seeing your content.
- URL marked ‘noindex’: the page returns a [noindex] meta robots tag or X-Robots-Tag header. Run the live test in URL Inspection to confirm the directive is still present right now.
Remove or correct the offending rule, then verify with the live test that Google can both crawl the page and that no noindex remains. Watch the order of fixes: if robots.txt blocks a page, Google can't see its noindex tag either. To remove a page from search, allow crawling and keep noindex until it drops out. Once clean, move on to requesting indexing.
Directive found: [robots.txt / noindex]
Canonical & Duplicate Issues
When to use: Google indexed a different URL than the one you submitted.
When Google picks its own canonical
If a page shows "Duplicate, Google chose different canonical than user" or "Alternate page with proper canonical tag," the content is likely indexed, just under another URL.
- Compare canonicals: in URL Inspection, check "User-declared canonical" against "Google-selected canonical." A mismatch is the heart of the issue.
- Find the chosen page: note which URL Google preferred and decide whether that is acceptable or wrong.
If Google's choice is acceptable, no action is needed: the content is covered. If you want the inspected URL to win, send consistent signals: a self-referencing canonical, internal links pointing to the preferred URL, matching sitemap entries, and genuinely distinct content so the pages aren't seen as duplicates. Conflicting signals are the usual reason Google overrides your declaration.
Declared canonical: [URL] Google-selected: [URL]
Quality & Thin-Content Causes
When to use: The page is crawlable and unique but still not indexed.
Earn the index, don't just request it
When there is no technical block and no canonical conflict, "Crawled - currently not indexed" almost always reflects Google's judgment that the page doesn't add enough value. Treat this as a content problem, not a bug.
- Assess uniqueness: does the page offer something the indexed competitors and your own other pages don't?
- Check depth and intent: thin, templated, or auto-generated pages are common non-index candidates.
- Review internal authority: orphaned pages with no internal links read as low priority.
Improve the page substantively (original detail, clear purpose, and helpful structure) then link to it from related, already-indexed pages to pass relevance and discovery signals. Accept that some pages, like near-empty tag archives or duplicate paginated views, may simply not warrant indexing. Consolidating or removing those can lift the pages that do.
Page value gap: [Notes]
Request Indexing & Validate Fixes
When to use: You've fixed the root cause and want Google to recheck.
Close the loop the right way
Once the underlying issue is resolved, prompt Google to recrawl and confirm the fix held. Do this only after the real cause is fixed: requesting indexing on an unfixed page wastes the request.
- Run the live test: in URL Inspection, click "Test live URL" to confirm the page is now crawlable, indexable, and free of noindex.
- Request indexing: click "Request indexing" for the single corrected URL. Avoid repeatedly submitting the same page: it does not speed things up.
- Validate at scale: in the Page Indexing report, open the affected reason and click "Validate fix" so Google rechecks all URLs in that group.
Google says validation typically takes up to about two weeks, sometimes longer; monitor the status until it reads "Passed." For sitewide fixes, lean on Validate Fix rather than inspecting URLs one at a time.
Fix applied: [Description] Validation status: [Status]
Diagnosis Worksheet (fill-in)
When to use: One row per URL or URL pattern: exact status, robots, meta robots, canonicals, sitemap, internal links, evidence, fix, owner and validation date.
Indexing diagnosis worksheet
Fill the evidence columns before the fix column. If a row has a fix but no evidence, it's a guess.
Columns
- URL or pattern and page type [product, category, article]
- Status in Search Console: [exact label, e.g. Crawled - currently not indexed]
- robots.txt: [allowed / blocked by rule]
- Meta robots / X-Robots-Tag: [index / noindex, and where it is set]
- Declared canonical and Google-selected canonical [from URL Inspection]
- In sitemap: [yes / no] · Internal links in: [number, from crawl]
- Evidence: [inspection date, live test or indexed version, screenshot file]
- Should it be indexed? [yes / no, and why]
- Fix, owner, validated on [one change, one name, one date]
| URL | GSC status | robots.txt | Meta robots | Canonical (declared / Google) | Links in | Index? | Fix | Owner | Validated |
|---|---|---|---|---|---|---|---|---|---|
| [url] | [status] | [robots] | [meta] | [canonicals] | [links] | [yes no] | [fix] | [owner] | [date] |
| [url] | [status] | [robots] | [meta] | [canonicals] | [links] | [yes no] | [fix] | [owner] | [date] |
| [url] | [status] | [robots] | [meta] | [canonicals] | [links] | [yes no] | [fix] | [owner] | [date] |
Evidence rules
- Live test vs indexed version: the live test shows the page now. The indexed version shows what Google saw at its last crawl, with the date. Record which one you used.
- The live test doesn't check everything. Google notes it doesn't test duplicate and canonical conditions, so a passing live test doesn't clear a canonical problem.
- Example lists are capped at 1,000 rows. For big sites, diagnose by pattern (one row per template) rather than chasing every URL.
Status-to-Cause Lookup
When to use: Match each Search Console status to what it usually means, the first thing to check and who normally owns the fix.
Status-to-cause lookup
Labels as they appear in Search Console's Page indexing report, checked October 2026. Use this to pick your first check, not to skip the evidence.
| Status | Usually means | First check | Usual owner |
|---|---|---|---|
| Crawled - currently not indexed | Google fetched it and chose not to index it yet | Uniqueness, depth, internal links | Content |
| Discovered - currently not indexed | Known but not crawled yet | Internal links, crawl waste, server speed | SEO + dev |
| URL blocked by robots.txt | A Disallow rule matches | The matching rule in robots.txt | Dev |
| URL marked ‘noindex’ | Meta robots or X-Robots-Tag says noindex | Template, CMS setting, HTTP header | Dev / CMS |
| Alternate page with proper canonical tag | Working as intended: points to another URL | Is the canonical target right? | Usually none |
| Duplicate without user-selected canonical | Google sees duplicates and you declared none | Add a canonical, reduce duplicates | SEO + dev |
| Duplicate, Google chose different canonical than user | Your canonical and other signals disagree | Internal links, sitemap, redirects, content | SEO |
| Page with redirect | The URL redirects; the target is what counts | Sitemap and internal links still using the old URL | Dev |
| Redirect error | Chain, loop, too long or empty redirect | Trace every hop | Dev |
| Soft 404 | Returns 200 but looks empty or missing | Thin template, out-of-stock, empty search | Content / dev |
| Not found (404) | The URL is gone | Should it redirect? Who still links to it? | SEO |
| Server error (5xx) | The server failed when Google tried | Server logs at the crawl time | Dev / hosting |
| Blocked due to unauthorized request (401) / access forbidden (403) | Login, firewall or bot protection | WAF or CDN rules for Googlebot | Dev / hosting |
Worked Example (fictional recipe site)
When to use: Four filled-in rows from an invented site, including one page that should stay out of the index and one fix that needed a different owner.
Worked example: a recipe site
Example only. The company, people, URLs and figures are invented to show what a usable, filled-in version looks like.
| URL / pattern | GSC status | Evidence | Index? | Fix | Owner |
|---|---|---|---|---|---|
| /recipes/*-printable | Duplicate without user-selected canonical | Inspected 6 Oct; same content as the main recipe | No | Canonical to the main recipe URL | Dev |
| /recipes/lentil-dal | Crawled - currently not indexed | Live test passes; 0 internal links; 140 words | Yes | Add method notes and link from 3 related recipes | Content |
| /collections/autumn | URL marked ‘noindex’ | X-Robots-Tag header set by a caching plugin | Yes | Remove header rule for /collections/ | Hosting |
| /search?q=* | URL blocked by robots.txt | Rule: Disallow: /search | No | None. Working as intended |
What the evidence changed
The team assumed the noindex on /collections/ came from the CMS. The page source showed no meta robots tag at all. It was an HTTP header added by a caching plugin, so the fix belonged to hosting, not content. Row 4 needed no fix: internal search pages should stay out of the index.
Next step
Use Get Source Code of Webpage to see the meta robots and canonical a page really serves, and the Redirect Checker for any Page with redirect or Redirect error rows. Run a website audit to find noindex and canonical issues across templates. If the fixes need a technical team, our SEO & GEO services include implementation.
How to use this template
- Open Search Console's Page indexing report and list the reasons by affected URL count. Start with the reasons that hit pages you want indexed.
- For each reason, add a row per URL or per template to the worksheet, using Google's exact status label.
- Inspect a sample URL. Record the verdict, the declared and Google-selected canonical, and whether you used the live test or the indexed version.
- Check robots.txt and the page's meta robots and X-Robots-Tag header. Fetch the page source to see what is actually served.
- Decide whether each page should be indexed at all. Filtered, sorted, printable and internal search pages usually shouldn't be.
- Use the status-to-cause lookup to pick the first check, then write one fix and one owner per row.
- Fix the cause at its source, run the live test again, and request indexing once for an important URL if needed.
- Open the reason in the Page indexing report and click Validate fix. Google says this typically takes up to about two weeks. Record the result date.
Pro tips
- Write the evidence before the fix. Most wasted indexing work comes from fixing the cause someone assumed.
- Diagnose by template on large sites. One row per page type is faster and finds the shared cause.
- Requesting indexing repeatedly doesn't help. Fix the cause, request once, then validate the group.
- Treat Crawled - currently not indexed as a value question. Better content and internal links usually help more than technical changes.
Frequently asked questions
What does Crawled - currently not indexed actually mean?
Google fetched the page but chose not to index it, at least for now. It's usually a value or duplication judgment rather than a technical error, so improve the page's depth, uniqueness and internal links before changing settings.
How is Discovered - currently not indexed different?
Discovered means Google knows the URL exists, often from your sitemap, but hasn't crawled it yet. It frequently signals crawl-budget pressure on large or slow sites. Improve site speed, prune low-value URLs, and strengthen internal links to important pages.
Should every page on my site be indexed?
No. Many URLs, such as filtered or sorted listings, near-empty tag pages, and duplicate paginated views, are correctly left out. Aim to get your genuinely valuable pages indexed rather than chasing 100 percent coverage.
Why did Google choose a different canonical than the one I set?
When signals conflict, Google may pick its own canonical and report Duplicate, Google chose different canonical. Align your canonical tag, internal links, sitemap entries, and content so they all point to and support the same preferred URL.
Does requesting indexing guarantee a page gets indexed?
No. Request indexing only asks Google to recrawl sooner; it never overrides a quality decision or a block. If the real cause isn't fixed, the page will remain excluded, so resolve the root issue before requesting.
How long does Validate fix take?
Google's help page says validation typically takes up to about two weeks, sometimes longer. You get an email when it passes or fails. If it fails, fix the URL shown and restart validation.