You built the sitemap, submitted it in Google Search Console, and got the green “Success” status. A few weeks later, half your pages still aren’t in Google. This is one of the most common complaints in SEO, and the reason is simple once you see it: a sitemap is a list of suggestions, not a request Google has to honor.
The short answer: Submitting a sitemap tells Google your pages exist. It does not make Google index them. Pages stay out of the index when Google can’t reach them, is told not to index them, sees them as duplicates, or decides they aren’t worth adding yet. The fix depends on which of these is happening, and Search Console will usually tell you if you know where to look.
- First, Check What Google Is Telling You
- The Common Causes and How to Fix Each One
- 1. Discovered – Currently Not Indexed
- 2. Crawled – Currently Not Indexed
- 3. A Noindex Tag You Forgot About
- 4. Blocked by Robots.txt
- 5. Canonical Tags Pointing Somewhere Else
- 6. Bad URLs Inside the Sitemap
- 7. The Sitemap File Itself Has Problems
- 8. Orphan Pages and Weak Internal Links
- 9. Soft 404s and Server Errors
- 10. Content That Only Appears With JavaScript
- 11. A New Site With Little Trust Yet
- 12. A Manual Action or Security Issue
- Step-by-Step Fix Plan
- What Not to Do
- How Long Indexing Takes
- FAQs
- Why Does Search Console Say My Sitemap Was a Success but Pages Aren’t Indexed?
- Does Submitting a Sitemap Guarantee Indexing?
- What’s the Difference Between “Discovered” and “Crawled” Not Indexed?
- Should I Remove Non-Indexed Pages From My Sitemap?
- Is It Normal for Some Pages Never to Be Indexed?
- How Many Sitemaps Can I Submit?
- Does Requesting Indexing in URL Inspection Help?
- Can Too Many Low-Quality Pages Hurt the Rest of My Site?
- My Pages Were Indexed and Then Dropped. Why?
First, Check What Google Is Telling You
Don’t guess. Before you change anything on the site, spend ten minutes in Search Console.
Open the Page Indexing report. Go to Indexing, then Pages. Use the filter at the top to switch from “All known pages” to your submitted sitemap. Now you are only looking at URLs you asked Google to index, which cuts out a lot of noise.
Read the “Why pages aren’t indexed” list. Each row is a reason with a count of URLs. Click any row to see example pages. This list is your diagnosis. The most common reasons you’ll see are “Discovered – currently not indexed,” “Crawled – currently not indexed,” “Excluded by ‘noindex’ tag,” “Blocked by robots.txt,” “Duplicate without user-selected canonical,” “Alternate page with proper canonical tag,” “Page with redirect,” “Not found (404),” “Soft 404” and “Server error (5xx).”
Inspect a few URLs one by one. Paste a missing page into the URL Inspection bar at the top of Search Console. It shows whether the page is on Google, when it was last crawled, which canonical Google picked, and whether indexing is allowed. Click “Test live URL” to see what Googlebot gets right now, including the rendered HTML and a screenshot.
Check the sitemap itself. Under Indexing, then Sitemaps, make sure the status says “Success” and not “Couldn’t fetch” or “Has errors.” Note how many URLs Google discovered from it. If that number is far below what you expected, the problem is the file, not the pages.
Also See: Best URL Indexing Tools
The Common Causes and How to Fix Each One
1. Discovered – Currently Not Indexed
Google knows the URL exists but hasn’t crawled it yet. On big sites this usually means Google is rationing its crawling, either because the server slowed down or because it doesn’t expect much value from those URLs. On small sites it often means the pages are new and weakly linked.
How to fix it: Link to these pages from pages that already get crawled, like your homepage, main categories or popular posts. Check server response times and hosting limits. Cut out crawl waste such as endless filter URLs, tag pages and session parameters, so Google spends its visits on pages that matter.
2. Crawled – Currently Not Indexed
Google visited the page, read it, and chose not to add it. This is a judgment about the page, not a technical block. Thin content, pages that look a lot like other pages, near-empty category pages, and content that adds nothing new to what’s already ranking all land here.
How to fix it: Make the page worth indexing. Add real detail: original photos, data, examples, prices, specifications, answers to the questions people actually ask. Merge thin pages that cover the same topic into one stronger page and redirect the old URLs. If a page has no reason to exist in search, remove it from the sitemap.
For a deeper walkthrough of this status, see our guide on how to fix Crawled – Currently Not Indexed.
3. A Noindex Tag You Forgot About
A <meta name="robots" content="noindex"> tag or an X-Robots-Tag: noindex HTTP header tells Google to keep the page out. This often slips in from a staging site, a WordPress setting (“Discourage search engines from indexing this site”), or an SEO plugin applied to a whole post type.
How to fix it: Remove the tag or header, then inspect the URL and request indexing. Check plugin settings for templates, categories, tags and archives, not just single pages.
4. Blocked by Robots.txt
If robots.txt disallows a path, Google can’t crawl those pages. Note that robots.txt and noindex don’t mix well: if a page is blocked, Google never sees the noindex tag on it.
How to fix it: Open yoursite.com/robots.txt and look for Disallow lines that cover pages in your sitemap. Remove them, and make sure CSS and JavaScript files aren’t blocked either, or Google may not render the page properly.
5. Canonical Tags Pointing Somewhere Else
You’ll see “Alternate page with proper canonical tag” or “Duplicate, Google chose different canonical than user.” Either your own canonical tag points to another URL, or Google decided another page is the main version.
How to fix it: Every page you want indexed should have a self-referencing canonical. If Google picks a different canonical, the two pages are probably too similar. Make them clearly different, or merge them. Also check that HTTP, HTTPS, www, non-www and trailing-slash versions all redirect to one version.
6. Bad URLs Inside the Sitemap
Sitemaps go stale. They often list URLs that redirect, return 404, are noindexed, or are canonicalized to a different page. Google treats a sitemap full of junk as less trustworthy.
How to fix it: Your sitemap should only contain final URLs that return a 200 status, are indexable, and are their own canonical. Crawl the sitemap with a tool such as Screaming Frog to find anything else. Use the exact URL format your site uses, including HTTPS and www or non-www.
Our technical SEO guide covers duplicate URLs, redirects and canonical checks in more detail.
7. The Sitemap File Itself Has Problems
“Couldn’t fetch” or “Has errors” means Google can’t read the file. Common causes are a wrong URL, a sitemap blocked by robots.txt, a server or firewall blocking Googlebot, invalid XML, or a file over the limit of 50,000 URLs or 50MB uncompressed.
How to fix it: Open the sitemap URL in a browser and confirm it loads. Validate the XML. Split large sitemaps and use a sitemap index file. Ask your host whether a security plugin or CDN rule blocks Googlebot.
8. Orphan Pages and Weak Internal Links
A page that appears only in the sitemap, with no internal links pointing to it, looks unimportant. Google relies much more on links than on sitemap entries.
How to fix it: Link every important page from at least one relevant page that already ranks or gets traffic. Use descriptive anchor text. Add related posts, breadcrumbs and category links so new pages are a few clicks from the homepage.
9. Soft 404s and Server Errors
A soft 404 is a page that returns a normal 200 status but looks empty or like an error, for example an out-of-stock product with no content or a search results page with no results. Server errors (5xx) mean Googlebot hit a failure while crawling.
How to fix it: Add real content to pages flagged as soft 404s, or return a proper 404 or 410 if the page is gone. For 5xx errors, check server logs, hosting resources, and any rate limiting that kicks in when Googlebot crawls quickly.
10. Content That Only Appears With JavaScript
If the main text, links or canonical tag are added by JavaScript, Google may see an empty page on the first pass and put off rendering it.
How to fix it: Use URL Inspection and “Test live URL,” then view the rendered HTML. If your content isn’t there, switch to server-side rendering or static generation for important pages.
11. A New Site With Little Trust Yet
Brand-new domains with no backlinks often wait weeks before many pages get indexed. Google is cautious with sites it knows nothing about.
How to fix it: Publish fewer, better pages first. Earn a handful of real links and mentions from relevant sites. Share new pages where real people will find them. Indexing usually speeds up as the site builds a track record.
12. A Manual Action or Security Issue
This is rare, but check it. A manual action for spam or a hacked-site warning can stop pages from being indexed.
How to fix it: Look under Security & Manual Actions in Search Console. If there’s an issue, fix it fully and file a reconsideration request explaining what you changed.
Also See: Google Showing Old Titles, How To Fix It
Step-by-Step Fix Plan
If you have a lot of missing pages, work through them in this order. The technical blocks come first because they are quick to fix and nothing else helps until they’re gone.
- Filter the Page Indexing report to your sitemap and write down the top three reasons by count.
- Fix the hard blocks: noindex tags, robots.txt rules, server errors and wrong canonicals.
- Clean the sitemap so it lists only live, indexable, canonical URLs that return 200.
- Add internal links to the pages you care about most, from pages that already get traffic.
- Improve or merge thin pages flagged as “Crawled – currently not indexed.” Remove the ones that don’t deserve to rank.
- Resubmit the sitemap once, then use URL Inspection to request indexing for your most important pages.
- In the report, click “Validate fix” on each reason you’ve dealt with, so Google rechecks those URLs.
- Wait two to four weeks, then compare the counts. Repeat for the next reason on the list.
What Not to Do
Don’t resubmit the sitemap every day. Google already rechecks it on its own schedule. Resubmitting doesn’t move you up a queue.
Don’t keep clicking “Request Indexing” on the same URL. There’s a daily limit, and repeated requests for a page Google has already judged won’t change the decision. Fix the page first.
Don’t use the Indexing API for normal pages. Google says it’s only for job postings and livestream events. Plugins that push blog posts through it aren’t a supported route.
Don’t buy “instant indexing” services. Most rely on spammy links or misuse of the API. At best they do nothing.
If you want to compare the tools that are actually worth using, read our roundup of the best Google indexing tools.
Don’t put every URL on the site in the sitemap. Tag pages, filtered views, thank-you pages and internal search results dilute the file. A smaller, cleaner sitemap is better than a complete one.
Don’t rely on priority and changefreq. Google ignores both. It does use lastmod, but only when the dates are accurate, so update it only when the content really changes.
How Long Indexing Takes
There’s no fixed timeline. On an established site with good internal linking, new pages often get indexed within a few days. On a new site, or for pages buried deep in the structure, it can take several weeks. After you fix a problem and click “Validate fix,” Google says validation can take up to about two weeks, sometimes longer.
If a page has been live for more than a month, is linked internally, passes URL Inspection, and still isn’t indexed, the problem is almost always quality or duplication, not time. Waiting longer won’t help; improving the page will.
Once the basics are fixed, these tips on how to make Google index your site faster can help new pages get picked up sooner.
FAQs
Why Does Search Console Say My Sitemap Was a Success but Pages Aren’t Indexed?
“Success” only means Google could read the file. It says nothing about whether the URLs inside will be indexed. Each URL is judged on its own.
Does Submitting a Sitemap Guarantee Indexing?
No. A sitemap helps Google find pages. Whether a page gets indexed depends on whether it can be crawled, whether indexing is allowed, and whether Google thinks it’s useful and not a duplicate.
What’s the Difference Between “Discovered” and “Crawled” Not Indexed?
“Discovered” means Google hasn’t visited the page yet. “Crawled” means it visited and decided not to index it. The first is usually a crawling or linking issue. The second is usually a content issue.
Should I Remove Non-Indexed Pages From My Sitemap?
Remove any page you don’t want indexed, such as redirects, noindexed pages and duplicates. Keep pages you do want indexed and fix the reason they’re excluded.
Is It Normal for Some Pages Never to Be Indexed?
Yes. Almost no site has 100% of its URLs indexed, and Google says so openly. Focus on whether your important pages are in, not on the total percentage.
How Many Sitemaps Can I Submit?
As many as you need. Each file can hold up to 50,000 URLs or 50MB uncompressed. Larger sites should split sitemaps by section, such as products, categories and blog posts, which also makes problems easier to spot.
Does Requesting Indexing in URL Inspection Help?
It can speed up crawling for a new or updated page. It won’t get a page indexed if Google has decided it isn’t worth adding. Use it after you’ve fixed something, not instead of fixing it.
Can Too Many Low-Quality Pages Hurt the Rest of My Site?
They can slow things down. If Google finds a lot of thin or duplicate pages, it may crawl the site less and be slower to index new pages. Pruning or merging weak pages often helps the good ones get picked up faster.
My Pages Were Indexed and Then Dropped. Why?
Google re-evaluates pages over time. Pages can drop out after a site change that added noindex or broke canonicals, after a core update, or when Google decides a similar page elsewhere on your site is the better version. Check URL Inspection for the current reason.
