Why Google Is Not Indexing Your Pages
Start in Search Console, Indexing → Pages, and read the reason Google gives you. Everything below is organised by what it says there, because the fix depends entirely on which one you have.
1. "Discovered - currently not indexed"
Google knows the URL exists. It has not crawled it.
This is a priority problem, not a fault. Google has decided your site does not warrant the crawl budget to fetch this page yet. Common on large sites, new sites, and sites publishing faster than their authority supports.
Fix: improve internal linking to the page, cut the number of low-value URLs competing for the same budget, and get the page in front of Google repeatedly rather than once. How to index your website on Google covers the routes that help here.
2. "Crawled - currently not indexed"
Google fetched the page, looked at it, and chose not to keep it.
This is a judgement, and it is the hardest one to argue with. Usually thin content, near-duplication of something else on your site, or a page that adds nothing to what Google already holds.
Fix: technical work will not help here. Either make the page substantially better, merge it into a stronger page, or accept it and noindex it.
3. "Duplicate, Google chose a different canonical"
Google thinks this page is a version of another page, and picked the other one.
Fix: check your canonical tags. If every page on your site canonicals to the homepage, Google will consolidate the entire site into one URL. It happens more often than you would expect, particularly on platforms that generate the tag automatically.
4. "Alternate page with proper canonical tag"
You told Google this page is a duplicate. Google agreed. Working as intended, unless it was an accident.
5. "Excluded by noindex tag"
There is a noindex in the page's meta robots or HTTP header.
Fix: remove it. Check both the HTML and the response headers, and check what a crawler sees rather than what your CMS shows you. On JavaScript-rendered sites the prerendered HTML can carry different tags from the client-side ones, and Google reads the prerendered version.
6. "Blocked by robots.txt"
Google has been told not to crawl it.
Fix: amend the rule. Note that if the page is already indexed, blocking it in robots.txt prevents Google reading a noindex tag, so it can stay listed indefinitely. Crawling and indexing are controlled separately and using the wrong lever is a classic trap.
7. "Soft 404"
The page returns a 200 status but looks empty or error-like to Google.
Fix: common on JavaScript sites where content loads after the initial response, and on empty search or category pages. Either return real content or return a real 404.
8. "Page with redirect"
The URL redirects, so Google indexes the destination.
Fix: nothing, unless the redirect is unintended. Remove redirecting URLs from your sitemap.
9. Nothing is wrong and Google still is not indexing
The most frustrating category and more common than the others combined.
The page is good. It is not blocked, not duplicated, not thin. It is in the sitemap. And it sits in "Discovered" for weeks.
There is no clever fix, because there is no fault. Google has finite resources and makes continuous decisions about where to spend them. Your page is not being rejected. It is being deprioritised.
Two things move that. Genuine signals of importance: internal links, external links, traffic. And persistence: being in front of Google repeatedly rather than once, so that when priorities shift, your URL is already in the queue.
The part nobody mentions
Indexing is not permanent.
Pages that were indexed drop out. No notification, no Search Console alert, nothing on your end to trigger a check. You find out months later when you notice the traffic went, or you never find out at all.
This is why one-off submission methods have a structural limit. They handle the moment of publication. They have nothing to say about month fourteen.
What we do about it
Daily Indexing crawls your site once a day, rebuilds the sitemap from every page on it, and keeps it current so Google can discover eligible pages. Changed URLs are pushed to Bing, Yandex, Naver and Seznam through IndexNow. Every day, changed or not.
That directly addresses categories 1 and 9, which are the ones with no other fix, and it catches drop-outs because every URL is resubmitted the following morning regardless of what happened to it.
It will not fix categories 2, 5 or 6. Nothing external can. A thin page stays thin, and a page with a noindex tag stays out until you remove the tag. We would rather tell you that than sell you a solution to a problem you do not have.
From £29 a month, per site, no VAT.
Related reading
- What is Google indexing?Crawling, indexing and ranking are not the same thing.
- How long Google takes to indexWhy some pages take weeks and what actually speeds it up.
- Request indexing in Search ConsoleThe one-URL-at-a-time button and its daily cap.
- Google index checkerFind which of your pages are missing, free.