Stop guessing why pages aren't indexed. This guide breaks down each coverage status — Error, Valid with warnings, Excluded, and Submitted not indexed — with specific diagnoses and fixes. Includes a worked example, a diagnostic flowchart, and operational edge cases most guides miss.
Quick calculator. Put in the expected monthly value of a page or link batch and the natural waiting time.
In practice, when you open Google Search Console and see a red Error count next to your sitemap, you have about 10 seconds before the panic sets in. Don't panic. The Index Coverage report is the single most actionable diagnostic in GSC — but only if you can read each status correctly and know what to do next.
I've seen teams waste weeks chasing 'Excluded' entries that were perfectly intentional, while ignoring a handful of real 'Submitted URL not indexed' errors that were killing their product pages. This guide walks you through every status, the specific fixes that work, and the edge cases that will trip you up.
| Status | What It Actually Means | First Action | Hidden Risk / Failure Mode |
|---|---|---|---|
| Error Server error (5xx), Redirect error, or Soft 404 | Google tried to crawl the URL and got a technical failure. Not a content problem. | Check robots.txt and server logs for 5xx. Inspect the URL in GSC and test live URL. | A 502 from your CDN that lasts 2 hours can spike errors. If you fix it but don't request re-crawl, the error persists for days. |
| Valid with warnings Indexed but with indexing issues (e.g., page indexed via a noindex tag) | The page is in the index but Google found a contradictory signal like a noindex meta tag or a canonical tag pointing to a different URL. | Remove the noindex tag or align the canonical. Submit the URL for re-crawl after fixing. | A page indexed with a 'valid with warnings' status may be de-indexed on the next crawl if you don't fix the warning. It's a ticking clock. |
| Excluded Page not in index for a reason like 'Crawled - currently not indexed', 'Page with redirect', or 'Not found (404)' | Google chose not to include this URL in the index. This is the largest category and often the most misunderstood. | Filter by reason. If 'Crawled - currently not indexed', improve content quality, internal links, and request indexing. If 'Page with redirect', decide if you want the redirect target indexed. | The 'Excluded' filter can show thousands of URLs. A common mistake is trying to fix all of them. Focus on high-value pages only. URL parameters and pagination pages belong here. |
| Submitted not indexed URL was in your sitemap but Google hasn't indexed it yet | Your sitemap told Google about this URL, but it hasn't been crawled and added to the index. This is often a crawl budget or priority mismatch. | Check if the page has unique, high-value content. Ensure it's not blocked by robots.txt. Use the URL Inspection tool to force indexing. | Sites with more than 50,000 sitemap entries often see this on less important pages. Google may deprioritize them. Thin or duplicate content is the most common root cause. |
Go to the report and note the total Error count and the top reason in Excluded. Don't look at Valid unless you need to audit warnings.
This is the most common and fixable Excluded reason. Sort by URL. Pick 10 URLs that are important for your business.
Use the URL Inspection tool. Check if Google can fetch the page. Look for 'URL is not on Google' status.
Verify <code>robots.txt</code>, meta robots tags, and the <code>x-robots-tag</code> HTTP header. Remove any <code>noindex</code> directives.
If the page is technically accessible but still not indexed, the content is likely thin or duplicate. Add 300+ words of unique, useful information and internal links from authoritative pages.
Use the 'Request Indexing' button in URL Inspection. Check again in 1-2 weeks. If still not indexed, re-evaluate content depth.
A common situation we see in audits is a site with 5,000 product pages, 4,500 of which are 'Crawled - currently not indexed'. The site owner panics and starts resubmitting all 4,500 URLs. That's a waste of time.
Google crawled those pages and decided they weren't valuable enough to include in the index. The fix is not more sitemaps — it's better content, stronger internal links from indexed pages, and sometimes just waiting. Google has a per-site crawl budget, and if you have 4,500 weak pages, they're burning that budget without payoff. The operational edge case: we once saw a client's entire blog section land in this bucket because every post was 150 words of fluff with no internal links. Fixing the content quality on just the top 20 posts brought the entire section into the index within 10 days.
Scenario: An e-commerce site with 350 product pages in the 'Submitted URL not indexed' bucket. All pages are in the sitemap. No robots.txt blocks. No noindex tags.
Step 1: I filter the report by 'Submitted URL not indexed' and export the URL list. Then I use the URL Inspection tool on 5 random pages. Each page shows 'URL is not on Google'. The page content is 120 words of manufacturer description — identical for 270 of the 350 pages.
Step 2: I check the sitemap. The sitemap includes all 350 product URLs. I check the Google sitemaps documentation and verify my sitemap format is correct — it is. The issue is not the sitemap; it's the content.
Step 3: I prioritize the 80 best-selling products (the top 23% of the list). For each, I write 200+ words of unique copy: sizing details, material notes, real customer feedback snippets. I add internal links from the category pages to these 80 products. I remove the other 270 product URLs from the sitemap to stop wasting crawl budget.
Step 4: I submit the sitemap again and use the URL Inspection tool to request indexing for each of the 80 prioritized URLs (one per day to avoid rate limits). After 14 days, 76 of the 80 are indexed. The remaining 4 still show 'Submitted URL not indexed' — I inspect them and discover they have noindex in the x-robots-tag HTTP header added by the server. I remove that header and they index within 48 hours.
Check Errors count: if >0, inspect each error URL and fix server or redirect issues within 24 hours.
Filter Excluded by 'Crawled - currently not indexed': identify the top 5 high-value pages and improve their content.
Review 'Submitted URL not indexed' for pages that have been in this state >30 days. Remove them from the sitemap or improve content.
Check 'Valid with warnings' for any noindex or canonical mismatches. Fix the source of the warning.
Run a crawl with Screaming Frog or Sitebulb to cross-reference GSC data. Look for discrepancies in robots.txt and meta tags.
For large sites: review the sitemap index file. Ensure each sitemap contains <50,000 URLs and is under 50MB uncompressed.
First, identify the specific status your high-priority pages fall under. If it's 'Crawled - currently not indexed', improve page content uniqueness and internal link depth. If it's 'Submitted URL not indexed', verify the page isn't blocked by robots.txt and has a strong internal link from an already-indexed page. Request indexing via the URL Inspection tool, then wait 7-14 days before re-checking.
E-commerce product pages often fall into 'Crawled - currently not indexed' due to thin or duplicate descriptions. Write 200+ words of unique copy per product. Remove manufacturer blurbs. Ensure product pages have no canonical tags pointing elsewhere. If you have hundreds of similar products, consider using canonical tags to consolidate and remove low-value product URLs from your sitemap.
Export the Excluded list and filter by reason. The most actionable reasons are 'Crawled - currently not indexed' and 'Page with redirect'. Ignore 'Not found (404)' if those pages are genuinely gone. Use the URL Inspection tool on a sample of 10 URLs from each reason. If the majority show 'URL is not on Google' and the page is important, your content likely needs improvement.
It means Google crawled the URL but chose not to include it in the index — usually due to low content quality or insufficient internal links. The fix timeline varies: if you improve content and add strong internal links, you may see indexing within 1-2 weeks after requesting re-crawl. If the page is in a large site with limited crawl budget, it can take 4-6 weeks.
Blog posts often get 'Not indexed' because they're too short (<300 words) or lack internal links from the homepage or category pages. Ensure each post has at least 500 words of unique content, a featured image, and internal links from at least 2 other indexed pages. Also check that your blog is not blocked by robots.txt and that the sitemap for blog posts is correctly submitted.
For sites with 50k+ pages, crawl budget is the primary constraint. Remove low-value pages from your sitemap (e.g., tag pages, paginated archives, thin affiliate pages). Consolidate similar content under canonical URLs. Ensure your sitemap index file is properly structured and each sitemap contains no more than 50,000 URLs. Focus indexing requests on your top 100 pages first.
This happens when a page is indexed via an external link or URL discovery, but never submitted in a sitemap. The page will appear in the 'Valid' section only if it was discovered through a sitemap. If you want it in the report, add the URL to your sitemap and resubmit. Also check for 'Valid with warnings' — the page may be indexed but have a noindex tag, which can cause confusion.
1. Open URL Inspection in GSC. 2. Paste the URL and press Enter. 3. Check 'Coverage' status — if it says 'URL is not on Google', click 'Test Live URL'. 4. If the test shows 'URL is available to Google', check the 'robots.txt' report. 5. If no blocks, click 'Request Indexing'. 6. Wait 24 hours, then re-inspect. If still not indexed, the issue is content quality or insufficient internal links.
1. Confirm your sitemap is valid via the Sitemaps report (no parse errors). 2. Check that the URLs in your sitemap are not blocked by robots.txt. 3. Verify each URL returns a 200 status code (not 3xx or 5xx). 4. Ensure pages have unique, substantial content. 5. Add internal links from already-indexed pages to the new pages. 6. Wait 1-3 weeks after submission. 7. If still not indexed, re-evaluate content depth.
'Excluded' means Google crawled or saw the URL and decided not to index it — reasons include duplicate content, redirects, 404s, or being blocked by robots.txt. 'Submitted not indexed' means the URL is in your sitemap but Google has not yet crawled it (or crawled it and chose not to index it, but this is rare). Action: Excluded pages need a content or technical fix; Submitted not indexed often need more time or a crawl budget adjustment.
The Index Coverage report is a sample, not a census. Google doesn't show every URL. If you have 100,000 pages, the 'Excluded' count may represent only a fraction of the actual excluded URLs. I've seen sites with 200 'Crawled - currently not indexed' entries in the report, but a full crawl reveals 5,000. The fix is the same — focus on high-value pages — but don't assume the report is complete.
Another edge case: duplicate lists due to URL parameters. We once saw a client who had 5,000 'Excluded' entries that were all session parameters (/product?id=123&session=abc). The fix was to tell Google to ignore those parameters in the URL Parameters tool (which is now deprecated, so you need to handle this via canonical tags or disallow in robots.txt). If you have a lot of 'Excluded' URLs that look like parameter versions, that's your root cause.
Finally, bad data from the 'Valid with warnings' column. A page can show as 'Valid with warnings' because Google detected a noindex tag, but the tag might be on a different version of the page (e.g., AMP vs. HTML). Always test the specific URL shown in the report. I've wasted a morning chasing a noindex warning that was on a printer-friendly version, not the real page.
For more advanced indexing workflow management, especially when launching many new pages quickly, see this resource on drip-feed indexing and managing link velocity to avoid algorithmic penalties from sudden surges in submitted URLs.