Why Is Google Not Indexing All My Pages?

On this page

On a site of any real scale, Google not indexing every page is almost always a deliberate selection, not a malfunction. Google indexes what clears a value threshold and what its crawl economics make worth fetching, and it makes that call page by page. So before you treat partial indexing as a bug to be forced open, read it as a verdict: the unindexed pages are the ones Google decided do not earn a slot, and the fix is raising per-page value and concentrating crawl on pages that deserve it, not mass-submitting URLs to an index that already evaluated and declined them.

This is the partial-indexing-at-scale case specifically: a large, templated, or directory-style site where Google keeps a fraction of your URLs out. It is a different question from why one particular page won’t index, from a temporary crawl lag right after publishing, or from a brand-new site that isn’t showing up at all. Here the site is mostly indexed, you have thousands of pages, and a meaningful slice sits in the Page indexing report under statuses you keep refreshing in hope.

Read the two statuses as two different verdicts

The Page indexing report (the report Google renamed from the old “Coverage”) gives you two states that look similar and mean opposite things.

“Crawled – currently not indexed” is a value judgment. Googlebot fetched the page, read it, and chose not to index it. That happens when the page is thin, near-duplicate, or simply carries no unique signal beyond what is already represented elsewhere on the web or on your own domain. Re-requesting the same unchanged page does nothing useful; it just asks Google to reconfirm a rejection it already made on the merits.

“Discovered – currently not indexed” is a priority judgment. Google knows the URL exists (usually from your sitemap or a stray link) but has not spent a crawl on it yet, often because nothing in your internal linking signals that the page matters. On big sites this also appears when Google throttles crawling to avoid overloading the server. The page hasn’t been judged on quality at all. It is waiting in line, and weak internal linking is what keeps it at the back.

Sorting your unindexed URLs into these two buckets is the first move, because the levers are different. Value problems need better pages. Priority problems need better links and crawl efficiency.

The directory and listing archetype

The clearest version of this shows up on listing and directory sites, where every page is a slot built from structured data that also lives on larger, more established sources. A venue, a product, a professional profile: if your page for it contains the same name, address, and category that a dozen bigger aggregators already publish, Google has no reason to index your version. It already has that information indexed somewhere with more authority.

Look at which of your pages did get indexed and you will usually find the answer staring back. The survivors tend to be the ones carrying something the aggregators don’t have: an original description, genuine reviews, photos, a unique data point, an editorial take. That pattern is Google doing your content audit for you. The indexed set defines the threshold; the gap between it and the unindexed set is exactly the differentiator you are missing at scale.

Index bloat works against the pages you care about

Pushing more near-duplicate, parameter, or thin pages at Google does not raise your indexed count. It often lowers it. A large mass of low-value URLs dilutes the whole-site quality perception and burns crawl budget that should be reaching your good pages. When too much of the site is commodity filler, Google reads the site as commodity and gets pickier about all of it.

This is why deliberately removing or noindexing the unwinnable tail can lift the pages that remain. You are improving the ratio of strong-to-weak pages that Google sees, and you are freeing crawl to reach the URLs that actually deserve a slot. Cutting pages to get more pages indexed is counterintuitive, and it is frequently the right move.

A caution on cleanup: do not reach for the GSC URL Parameters tool to manage parameter bloat. It was retired years ago. Handle parameter and faceted explosions with canonicalization, robots rules, or noindex as appropriate, not a tool that no longer exists.

The two levers that actually move the number

Only two things reliably shift partial indexing at scale, and they map onto the two statuses.

First, add genuine per-page uniqueness so a page clears the value threshold. For “Crawled – currently not indexed,” this is the only real fix. More words do not help; a distinct reason for the page to exist does. If the page can’t be made meaningfully different from what’s already indexed, the honest call is to exclude it, not to keep petitioning.

Second, strengthen internal linking and crawl efficiency so priority pages get fetched. For “Discovered – currently not indexed,” this is the lever: link the page from relevant, frequently crawled pages so its importance is unmistakable, and reduce the crawl waste (redirect chains, dead parameter URLs, soft 404s) that competes for the same budget. The orphan-page case, where a page has no internal links at all, is its own audit; here the point is that linking is a priority signal Google reads, and weak linking reads as “not important.”

Note what “Request indexing” in the URL Inspection tool actually does. It triggers a crawl. It does not override an index decision. Google has been explicit that submitting a URL does not force indexing of a page that fails the quality bar, and re-submitting an unchanged thin page just reconfirms the no. Use it after you have genuinely changed a page, not as a way to argue with the algorithm.

Strategy over volume

The mental shift that fixes this is to stop counting submitted pages and start deciding which pages are supposed to be indexed. A site with a thousand unique-value pages, nearly all indexed, beats a site that submitted fifteen thousand and got four thousand indexed with the rest dragging on the domain’s reputation. The second site does not have an indexing problem to solve; it has a publishing strategy to correct.

Decide which pages carry your value, concentrate uniqueness and internal links there, and prune or noindex the tail that was never going to win. Then read the indexed set as feedback. If only your pages with reviews get indexed, you have learned the threshold: either add that differentiator everywhere it can be earned, or accept that the rest of the tail does not belong in the index. Either answer is better than mass-requesting indexation, which Google has plainly said will not fix a quality decision.

Partial indexing on a large site is rarely the failure it feels like. It is Google telling you, page by page, where your value actually is. The work is to agree with that verdict where it’s right, fix the pages where you can genuinely add value, and stop spending effort forcing slots for pages that were never going to earn them.

Sources