I've audited a lot of sites where someone is convinced they've been penalized because a big chunk of their content isn't ranking. Almost every time, the actual answer is far less dramatic and far more fixable. Google never properly found those pages in the first place. Not blocked, not penalized. Just never handed a clear, reliable map to them. I call this the sitemap gap, and once you know to look for it, you start seeing it everywhere.

The Four Stages, and Where Pages Fall Off
Every page on a site theoretically goes through four stages before it can ever rank: it exists on the site, it's listed in the sitemap, it gets crawled, and it gets indexed. In a healthy site, that funnel stays close to one-to-one all the way through. In practice, on almost every site I've audited past a certain size, it doesn't, and the drop-offs happen at every single stage.
Exists, but never made the sitemap. This is the most common gap I find, and it's almost always a technical oversight rather than a deliberate choice. A sitemap generated once, manually, and never updated since. A CMS plugin that only auto-includes certain page templates and silently skips others. New sections of the site launched after the sitemap was last configured. I've found sites where an entire blog category, hundreds of posts, simply never made it into the sitemap because of a plugin setting nobody had touched in years.
In the sitemap, but never crawled. Google has a finite crawl budget for every site, and it prioritizes based on signals like internal linking, historical crawl patterns, and perceived value. A page sitting in the sitemap with no internal links pointing to it and no history of traffic is a low priority, and on a large site, low-priority pages can sit uncrawled for a genuinely long time.
Crawled, but not indexed. Google Search Console's Index Coverage report calls this "crawled, currently not indexed," and it usually means Google looked at the page and decided it wasn't worth keeping around, often because it looked thin, duplicated something else on the site, or didn't clearly signal what it was actually about.
Indexed, but effectively invisible anyway. Technically indexed, but so rarely served that it functions the same as not being indexed at all, usually because nothing on the page gives Google a strong, specific reason to surface it for anything.
Why This Happens More Than People Expect
Sitemaps are treated as a one-time setup task on a shocking number of sites I've worked on. Someone generates one when the site launches, submits it in Search Console, and never looks at it again. Meanwhile the site keeps growing, new categories, new templates, new content types, and the sitemap quietly stops representing what the site actually contains.
Paginated and faceted pages make this worse. A site with filterable listings, by destination, by price, by category, can generate thousands of URL combinations, and a lot of sitemap generators either include all of them, flooding the sitemap with low-value near-duplicates, or exclude entire template types wholesale, accidentally dropping genuinely valuable pages that happened to share that template.
And orphaned pages compound the problem from a different angle. A page can be sitting in a perfectly correct sitemap and still barely get crawled, because nothing else on the site links to it. Sitemaps tell Google a page exists. Internal links tell Google it matters enough to prioritize.
The Root Causes I See Most Often
Grouping these into categories has made the pattern easier for me to explain to the businesses I work with:
- Neglect. The sitemap was built once and never revisited as the site grew.
- Template blind spots. A CMS or plugin auto-generates the sitemap based on rules that quietly exclude an entire content type.
- Faceted URL sprawl. Filter combinations generate far more URLs than intended, drowning out the pages that actually matter.
- Orphaning. A page exists and is correctly listed, but nothing internally links to it, so crawl priority stays near zero.
- Migration debris. An old sitemap survives a site redesign or platform migration and still references pages that moved, merged, or disappeared, while never picking up the new structure.
The Audit I Actually Run
I start by exporting every real, canonical, indexable URL directly from the site itself, not from the existing sitemap, since the whole point is checking whether the sitemap matches reality. Then I compare that list against what's actually declared in the sitemap file, looking specifically for entire sections or templates missing wholesale rather than just a handful of stray pages.
Then I check Search Console's Index Coverage report for anything sitting in "crawled, currently not indexed" or "discovered, currently not indexed," and I look for patterns, is it one specific template consistently underperforming, one section of the site, one content type, rather than treating each affected page as an isolated case.
Then I check internal linking specifically for anything that made it into the sitemap but has few or no internal links pointing to it, since that's usually the actual reason it never got crawled even though it was technically declared.
To make this concrete, here's roughly the checklist I work through, in order:
1. Export a full, current list of real indexable URLs from the CMS or database directly. 2. Diff that list against the live sitemap file, flagging entire missing sections first. 3. Pull the Index Coverage report and group excluded pages by template or section. 4. Spot-check internal links pointing to a sample of sitemap-listed but uncrawled pages. 5. Review faceted or paginated URL patterns for sprawl versus genuine value. 6. Document the gap by stage, so the fix gets prioritized by where the biggest drop-off actually is.
What Actually Fixes It
Automate sitemap generation so it updates whenever new content publishes, rather than depending on someone remembering to regenerate it manually. Split large sitemaps by content type or section, which makes gaps far easier to spot at a glance instead of scrolling through one enormous combined file. Fix internal linking to every genuinely valuable page, since a sitemap entry with zero internal links pointing to it is a weak signal on its own. And for the paginated and faceted pages specifically, decide deliberately which combinations actually deserve indexing and which should be excluded, rather than defaulting to either extreme.
Why I Care About This So Much
The frustrating part of this problem is how invisible it is until someone specifically goes looking. Nobody feels a sitemap gap the way they'd feel a site-wide traffic drop. It just quietly caps how much of the site's actual content ever gets a shot at ranking at all, sometimes for years, without a single alarm going off anywhere in the reporting. I've found sitemap gaps hiding thousands of genuinely good pages on sites that were otherwise doing everything else right, and fixing it was, more than once, the single highest-leverage thing I did on that account all year.
A Detail That's Easy to Miss: Sitemap Errors vs. Sitemap Gaps
It's worth distinguishing this problem from a related but different one. A sitemap with actual errors, broken URLs, incorrect status codes, malformed XML, will usually surface pretty visibly in Search Console as processing errors. A sitemap gap is quieter and easier to miss entirely, because the sitemap itself is technically valid and error-free, it's just incomplete. Search Console won't flag "this sitemap is missing a whole section of your site" the way it flags a broken URL, since it has no way of knowing what should be in there that isn't. That's exactly why this problem tends to persist for years on sites that otherwise look technically healthy on every dashboard someone's actually checking.
Why I Check This Even on Sites That Seem to Be Performing Fine
I've started running a lightweight version of this audit even on sites with no obvious traffic problem, because the whole nature of a sitemap gap is that it doesn't announce itself. A site can be performing perfectly well on the content that is being crawled and indexed, while a meaningful chunk of genuinely good content sits invisible the entire time, quietly capping growth without ever showing up as a red flag on a normal performance report.
Questions about sitemap coverage gap
How do I know if my site has a sitemap gap?
Compare a full export of your site's real indexable URLs against what's actually declared in your sitemap file. If entire sections or templates are missing from that comparison, or if Search Console's Index Coverage report shows a lot of pages sitting in "crawled, currently not indexed" or "discovered, currently not indexed," you likely have one.
Does being left out of the sitemap mean a page is penalized?
No, and that distinction matters. A sitemap gap is a discovery problem, Google simply doesn't reliably know the page exists or hasn't prioritized crawling it. A penalty is a very different, much less common situation.
How often should a sitemap actually update?
Automatically, whenever new content publishes or existing content is removed. A sitemap that only updates when someone remembers to regenerate it manually will drift out of sync with the actual site, usually faster than people expect.
Can too many pages in a sitemap also be a problem?
Yes. Flooding a sitemap with low-value, near-duplicate pages, common with faceted or paginated URLs, can dilute crawl priority for the pages that actually matter. The goal is an accurate sitemap, not simply the largest possible one.
Should every page on a site be included in the sitemap?
No. Thin, duplicate, or intentionally noindexed pages shouldn't be there, since including them just adds noise Google has to sort through. The goal is a sitemap that accurately represents the pages you actually want crawled and indexed, not every URL that technically exists on the domain.
How long does it typically take to see results after fixing a sitemap gap?
It varies with site size and how large the gap was, but in my experience newly discoverable pages usually get crawled within days to a few weeks once the sitemap and internal linking are fixed together. Indexing and any resulting ranking movement tends to follow a bit after that, so I always set expectations for a few weeks, not a few days.
