GSC Errors Explained, One Error at a Time

You open the Page Indexing report in Search Console expecting a quick check-in, and instead you're looking at a list of labels that sound like error codes from a language you half-remember: "Crawled - currently not indexed," "Duplicate without user-selected canonical," "Alternate page with proper canonical tag." Some of these are genuine problems. Some are Google doing exactly what you asked it to. The report doesn't tell you which is which — it just hands you the count and moves on.

Most GSC guides either explain one error in isolation or gloss over the whole report with "just fix your errors." Neither approach helps when you're staring at nine different statuses and need to know which ones are actually costing you traffic. This guide goes through the report the way you'd actually use it: status by status, cause by cause, fix by fix.

Quick Answer

Google Search Console's Page Indexing report sorts every crawled URL into a status: Error, Valid with warning, Valid, or Excluded. Error means Google tried to index the page and failed. Excluded usually means Google chose not to index it, often intentionally. Fixing GSC issues means matching each specific status to its cause — a blanket fix applied across every red label will solve some problems and misfire on others.

What is the Page Indexing report?

The Page Indexing report (formerly called the Coverage report) is Search Console's record of every URL on your site that Google has discovered, and what happened when it tried to crawl and index each one. Every URL lands in exactly one status per report, and those statuses fall into four broad groups.

The report groups URLs by these detailed statuses rather than the four broad categories alone, which is why the same "problem" — a page not showing up in search — can trace back to a dozen different root causes.

Why these statuses matter

Treating every red label in the report the same way wastes effort and, sometimes, breaks pages that were working as intended:

📊 Quick stat On most mid-size sites, the largest single bucket in the Page Indexing report isn't "Error" at all — it's "Crawled - currently not indexed" or "Discovered - currently not indexed," both of which are about crawl prioritization rather than a broken page.

Step-by-step: working through the report

  1. Open Indexing → Pages in Search Console. Start with the summary chart rather than the raw URL list.
  2. Prioritize true Errors first. Server errors, redirect errors, and 404s on pages you actually want indexed cost the most and are usually the fastest to confirm.
  3. Click into a status to see sample URLs. Google shows a representative sample, not the full list, so treat these as examples of a pattern rather than an exhaustive audit.
  4. Run the URL Inspection tool on one example. This shows the live crawl result and often reveals the exact cause — a redirect chain, a robots.txt rule, a response code.
  5. Fix the root cause across the whole pattern. If the cause is a template issue, correcting one URL and requesting indexing won't resolve the others in that status.
  6. Click Validate Fix only once the fix is live sitewide. Validating early, before the underlying template or server issue is actually resolved, burns the validation attempt.
  7. Recheck after Google's re-crawl window. Validation runs on Google's schedule, typically resolving over one to two weeks rather than instantly.
Seeing "Alternate page with proper canonical tag"? That status is often an hreflang cluster issue — the free Rebrixe generator builds return-tag-safe hreflang markup in seconds.
Generate Hreflang Tags →

Error by error: what each status means

1. Server error (5xx)

Google's crawler received a server-side error when requesting the page. This is almost always a hosting or application issue — an overloaded server, a misconfigured route, or a temporary outage during a traffic spike or deployment.

2. Redirect error

Google followed a redirect and hit a problem: a redirect chain that's too long, a redirect loop, or a redirect pointing to an invalid URL. Flattening redirects to a single hop per URL resolves most of these.

3. Blocked by robots.txt

The page is disallowed in robots.txt, so Google won't crawl it, even if it's linked from elsewhere on the site. This is only a problem if the page was blocked unintentionally, often by a rule left over from a staging environment.

4. Marked 'noindex'

The page itself instructs Google not to index it, either via a meta tag or an HTTP header. Correct for thank-you pages or internal search results; a mistake when it turns up on pages meant to rank.

5. Soft 404

The server returned a 200 OK status, but the page's content looks like a "not found" page to Google — thin, empty, or a generic message. Common on out-of-stock product pages or broken template fallbacks.

6. Duplicate without user-selected canonical

Multiple URLs serve near-identical content and none of them has a canonical tag telling Google which one is preferred, so Google picks one on its own — not always the one you'd choose.

7. Duplicate, Google chose different canonical than user

You did set a canonical tag, but Google's own signals — internal links, sitemaps, backlink patterns — pointed it toward a different URL as the "real" version instead.

8. Crawled / Discovered - currently not indexed

Google has either crawled the page and decided not to index it yet, or knows it exists but hasn't crawled it at all. Both often reflect crawl budget and perceived priority rather than a defect in the page itself.

💡 Pro tip Before touching code, separate every non-Valid status into two piles: "pages I want indexed" and "pages I don't." Only the first pile needs a fix — the second pile is the report working correctly.

Real-world examples

How these statuses show up in practice, across different kinds of sites:

Ecommerce store
Duplicate canonical conflict
1,200+ URLs
Filtered category URLs with parameters competing with the clean category page — resolved with consistent canonical tags across all variants.
Content blog
Soft 404 on tag pages
Thin templates
Auto-generated tag archive pages with one or zero posts were read as near-empty by Google and excluded as soft 404s.
News publisher
Server error spike
Traffic surge
A breaking-news traffic spike overwhelmed the origin server, producing a temporary but sitewide cluster of 5xx errors.
Migrated site
Redirect chain errors
Old → new URLs
A domain migration left two-hop redirects in place; flattening every chain to a single redirect cleared the errors within weeks.

The pattern across all four: the fix is almost never "resubmit the URL." It's finding the template, server condition, or tag rule producing the whole cluster of affected pages.

GSC status severity compared

Not every status deserves the same urgency. Here's how to triage the most common ones.

Status Category Typical priority Usually needs a fix?
Server error (5xx) Error High Yes, almost always
Redirect error Error High Yes, almost always
Duplicate, no canonical Excluded Medium Yes, if the wrong page is preferred
Soft 404 Excluded Medium Yes, on pages meant to rank
Discovered - not indexed Excluded Low Often no, especially on large sites
Alternate page, proper canonical Excluded Low No, usually intentional (hreflang/mobile pairs)

Fix hreflang-related canonical errors — free

If your "Alternate page with proper canonical tag" or duplicate-canonical statuses trace back to a badly-linked international or language cluster, the Rebrixe Hreflang Generator builds a complete, return-tag-safe set of hreflang link tags for every page in the set, including x-default. No account, no watermark.

Free Hreflang Tag Generator Add your pages and language codes, copy the complete, error-free tag set.
Open Hreflang Generator →

Frequently asked questions

Error means Google tried to index the page and couldn't, usually due to a server problem, a block, or a broken redirect. Excluded means Google made a deliberate decision not to index the page, often because you told it not to, or because the page duplicates another one.
Not necessarily. It means Google knows the URL exists but hasn't crawled it yet, usually because of limited crawl budget or low perceived priority. On a large site it can be normal; a sudden spike after a migration or relaunch is worth investigating.
After you fix the underlying issue and click Validate Fix, Google typically re-crawls affected URLs over one to two weeks, though large sites or low-priority pages can take longer since validation runs at Google's own pace, not on demand.
Only after you've actually fixed the root cause site-wide, not just on one sample URL. Validating before the fix is complete wastes the validation attempt and can make a status look resolved only to reopen days later.
It means the page is intentionally pointing its canonical tag at a different, preferred version of itself, which is expected behavior for pages that are part of an hreflang set or have a mobile/desktop counterpart, not necessarily an error to fix.
Most excluded statuses don't directly hurt rankings since they reflect pages you've asked Google to skip, such as noindex tags or duplicate content. They only become a problem when a page you actually want indexed ends up excluded by mistake.
Google's index carries URLs it has discovered over time, including old paths, parameter variations, or pages created by scrapers or spam links pointing at your domain, which can surface as 404 or soft 404 errors long after the real pages are gone.
Yes. On sites with tens of thousands of URLs, Google allocates a limited crawl budget, so low-priority or duplicate pages can sit in "Discovered" or "Crawled - currently not indexed" simply because higher-priority pages are consuming the available crawl activity first.

Fix hreflang-driven GSC errors in seconds

The Rebrixe Hreflang Generator builds a complete, return-tag-safe set of hreflang markup — no account, no watermark, just a ready-to-paste tag set that clears up alternate-page and canonical confusion in your Page Indexing report.

Launch the Hreflang Generator →
← Back to blogs