You open Pages, see “143 not indexed” and panic. Calm down. Most of those rows are noise, expected behavior, or pages you do not actually want indexed. Here is the triage order.
Background
The Pages report (Indexing -> Pages) groups every URL Google knows about your site into “Indexed” or “Not indexed”, and within Not Indexed, into reasons. The reasons range from “you blocked it on purpose” to “Google rejected it”. Treating them all the same is how indie devs waste weeks chasing nothing.
How to tell
- Total Indexed pages dropped suddenly and you do not know why.
- “Not indexed” count is way bigger than “Indexed” and you want to know if that matters.
- You see categories like “Crawled — currently not indexed”, “Discovered — currently not indexed”, “Duplicate, Google chose different canonical” and need to triage which to fix.
- You see “Excluded by noindex tag” but did not knowingly add noindex.
Quick verdict
Sort Not Indexed reasons by count. For each, ask: “did I block this on purpose?” If yes, ignore. If no, click in, look at 3 example URLs, and decide whether to fix the URL, fix the template, or fix the canonical. Most categories are informational, not actionable.
Step by step
- Open Indexing -> Pages. Note the chart: trends matter more than absolute numbers. A gradual climb in Indexed = healthy. A sudden drop = recent deploy or Google penalty.
- Scroll to Why pages aren’t indexed. Sort by descending count. For each row, ask whether you knowingly excluded those URLs.
- “Page with redirect” / “Not found (404)” / “Excluded by noindex tag” / “Blocked by robots.txt” / “Alternate page with proper canonical tag” — these are usually intentional. Click in, spot-check 5 URLs to confirm they are what you expect, move on.
- “Crawled — currently not indexed” / “Discovered — currently not indexed” / “Duplicate, Google chose different canonical than user” — these are the rows that actually need work. Each has its own playbook (see related links).
- For “Soft 404” — Google thinks the page is too thin to be a real page. Open 3 examples and ask: would I be happy if a stranger landed here? If no, add content or noindex it.
- After triage, only fix what is clearly broken. Then wait 2-4 weeks before re-evaluating — the report updates slowly and most fixes need a re-crawl cycle to reflect.
Common pitfalls
- Trying to drive Not Indexed to zero. Impossible and not the goal. Healthy sites have thousands of “not indexed” URLs (pagination, filters, redirects) — focus on the actionable ones.
- Confusing “Discovered” (Google saw the URL but has not crawled) with “Crawled — not indexed” (Google crawled and decided no). Different causes, different fixes.
- Panicking over a one-day drop. Page counts can fluctuate ±10% day to day from re-evaluation. Look at the 30-day trend.
- Fixing every category at once. Pick the largest actionable bucket; ignore the rest for now.
- Assuming “Indexed but not submitted in sitemap” is a sitemap bug. It is often Google indexing URLs you did not list — usually fine, sometimes a clue you have URLs leaking from somewhere.
Who this is for
Site owners with > 50 indexed pages who want to understand their indexing health and catch regressions early.
When to skip this
Sites with under 20 pages — you can verify indexing one URL at a time with URL Inspection faster than reading the report.
FAQ
- How often does the Pages report update?: Once a day, but with a 2-7 day lag behind reality. Recent changes show up later in the week; do not look for instant feedback.
- Should I worry if “Indexed” drops by 5%?: No. Normal fluctuation. Worry if it drops 20%+ over a few days with no deploy explanation, or if a specific URL category disappeared entirely.
- What about “Indexed, though blocked by robots.txt”?: Means Google indexed the URL despite your block (usually from external links). If you really want it out, replace robots.txt block with a
noindextag on the page itself. - My “Crawled — not indexed” bucket keeps growing — am I being penalized?: Probably not a penalty. Usually means content depth, internal linking, or authority is below the threshold Google needs to commit a URL to its index. See the crawled-not-indexed fix guide.