The gate
Find the pages not indexed by Google.
QueryScope puts the index gate ahead of every other move on a search you declared, names the block in Google's own words, and says whether it is yours to fix today or Google still taking its time.
From $49/mo, everything included · works in Claude Code, Cursor, Cline and Windsurf
Built from the Search Console audit we run on our own SaaS, AppScreenshotStudio.
By hand
How to find pages not indexed by Google in Search Console.
Search Console holds the list. It makes you walk it one reason and one URL at a time.
- Open Indexing › Pages. The chart splits every URL Google knows on your site into indexed and not indexed.
- Scroll to Why pages aren’t indexed. Each row is one reason with a count of pages under it.
- Click a reason to see its URLs. Switch the filter above the chart from All known pages to All submitted pages, or to one sitemap, so you only see pages you asked Google to index.
- Paste a single URL into URL Inspection to read Google’s verdict on that page and when it last crawled it. The interface has no bulk option: one URL per check.
QueryScope does that last step in bulk. Every day it inspects the URLs in your sitemap through the URL Inspection API, up to 300 a run, and sorts each verdict into a block you can fix today or Google still taking its time. When the page is one your plan is aimed at, it jumps the queue, behind only a change already waiting to be judged.
Why the label misleads
Google files three different situations under "not indexed".
One page is genuinely blocked and you can fix it this morning: a robots rule, a noindex tag, a 404, a 5xx. Another was found and simply has not been crawled yet, where the honest answer is patience. A third was crawled and passed over, or folded into a canonical Google picked itself, which is a judgement about the page rather than a block on it. Read as one count they look like one large problem, which is why the number gets ignored right up until a page that was earning clicks quietly falls out. Which coverage states are actually yours to fix.
In Search Console
A count you still have to sort by hand.
On a search you declared
One page, one cause. The gate jumps the queue.
Three reads turn Google's flat "not indexed" into a page you can fix this morning, or a wait with an end date on it.
Four causes you can fix today. Three that Google resolves on its own.
QueryScope reads Google's own verdict for the page through the URL Inspection API and sorts the reason into one of two piles. A robots rule, a noindex tag or header, a server error, a 404 or a soft 404 are the site's doing and fixable now. Found and not crawled yet, no record of it at all, and crawled then passed over are Google taking its time, which is not work. An answer Google phrases in a way we do not recognise is read as a wait, never as a block, because a wait misread as a block puts a move nobody can make at the top of your queue and keeps it there.
robots · noindex · 5xx · 404 → yours today
Why Google crawls a page and declines to keep itA page published last week is Google taking its time.
A young page waiting on its first crawl reads identically to a noindex tag if you only look at the verdict, and telling a new site its whole sitemap is blocked says nothing true. So a wait state gets 28 days of grace from when we first saw the URL, roughly Google's own 'up to a few weeks' for a new page, and during it there is no move 0 to make: keep it in the sitemap, link to it from pages already indexed, request indexing. Past 28 days the same row stops being a wait and comes back as the gate, on its own, with nothing to remember to reopen.
28 days of grace, then the same row is a finding
What to do about a page that never landedThe gate goes ahead of every other move on the page.
You get one target at a time, and the ordering is the product's job rather than yours: a change already shipped and ready to judge comes first, then a page Google has stopped keeping, then whichever target is furthest from ranking. Indexing is plumbing a reader never sees, so unlike a title or a content change it runs without waiting on your commit of queryscope.md. A single not-indexed reading is not enough to call a drop either: it has to still be there on the next day's inspection, because the Inspection API flickers on young domains.
ready to judge · then the index gate · then furthest from ranking
Reading a real account this way for 30 daysOn a live site
The plan board, on a SaaS we run ourselves.
AppScreenshotStudio's declared searches, read from production: where each one stands and whether it moved.
How the plan is doing
21 May to 25 Sep · arrows are places moved, up is better
On page 1
where clicks happen · was 0 on 21 May
Below page 1
ranking, earning almost nothing · was 2 on 21 May
Not ranking
no reading on 10+ impressions · was 55 on 21 May
Coverage
<1%The whole site earned 528 clicks in 28 days, most of it on searches this plan never claimed.
On page 1
figma app store screenshot template
#9.9
▲3
320/mo
Demand
38
Impressions
2
Clicks
One line in your IDE. Then authorize and pick a site.
claude mcp add --transport http queryscope https://mcp.queryscope.dev/mcp
Works the same in Cursor, Cline and Windsurf. Your IDE opens a browser once to authorize.
Then ask: “what should I work on?”
FAQ
Reading what Google will not keep.
Why does Search Console say my pages aren't indexed?
Because that one label covers unrelated situations: a page you blocked with a noindex tag, a URL that 404s, a server error, a page Google found but has not crawled yet, a page it crawled and passed over, and a duplicate where Google picked a different canonical. Only the first group is work you can do today. QueryScope sorts Google's verdict into the causes that are yours and the ones that are Google's, and says which you are looking at.
Which unindexed page does QueryScope hand me first?
It hands back one target at a time, from the searches you declared, and the index gate jumps almost everything: only a change already shipped and waiting to be judged comes ahead of it. The reasoning is that a page Google will not keep has no ranking to move and nothing a change on it could be measured against, so every other move on it is thrown away until it is back.
Can QueryScope request indexing for me?
No, and no tool honestly can for ordinary pages. QueryScope holds a read-only grant you approve and can revoke, and the URL Inspection API is read-only by design. Google's separate Indexing API covers only job postings and broadcast events. So QueryScope finds the block and names the cause; the request-indexing click stays yours in Search Console.
Does it check every page on my site?
It checks the URLs it knows about, once a day, and those come from your sitemap, falling back to the pages Google already shows you for when no sitemap is reachable. Each run inspects up to 300 URLs, never-inspected first and then the stalest, so a sitemap larger than that is covered across a few days rather than the same first batch every morning. Worth knowing why it works this way: the full page-indexing report exists only inside the Search Console interface and is exposed by no API, so every tool in this space reconstructs coverage from URL Inspection over the URLs it can see. A page missing from your sitemap is a page nothing here can inspect.
Is "found but not indexed yet" a problem?
Usually not, at a small site. It often means Google has the URL queued and has not judged it worth crawling yet, and the honest response is patience plus a few internal links from pages that already earn traffic. QueryScope treats it as a wait for 28 days rather than a fault, then reopens it as the gate if Google still has not kept the page. How to tell a page that never landed from one that fell out.
Get the page into the index. Then everything else can work.
Connect your site, declare the searches worth winning, and let your agent clear the gate before it spends an afternoon on a page Google will not keep.
7-day free trial · nothing due today · cancel in one click
Other things it finds in your Search Console