Skip to content
Learn · AEO fundamentals

Proving absence needs three instruments

An instrument that fails to find something has told you about the instrument, so any claim that a page is not indexed, an answer does not appear, or a mention does not exist needs at least three independent checks before it is a finding.

Vignette: a name being marked inside a generated answer. Illustration, not measurement: no figure appears in the loop.
In short

Key takeaways

  • Absence is a hypothesis. One tool returning nothing is consistent with the thing existing and the tool missing it.
  • A site: count is a sample and a floor, never an inventory, and many tools return only the first page of results unless explicitly told otherwise.
  • The decisive test for a single page is an exact-phrase search of a sentence taken from that page. An indexed page ranks first for its own sentence.
  • Some instruments fail in one direction only. They can prove presence and cannot prove absence, and a blocked run has to be recorded as blocked rather than as empty.

Why absence is a hypothesis, not a finding

Presence and absence are not symmetrical claims. When a tool finds a page, an answer or a mention, the thing exists; the observation is sufficient on its own. When a tool finds nothing, at least four explanations remain live: the thing is genuinely absent, the tool did not look everywhere, the query was wrong, or the request failed in a way that returned an empty result rather than an error.

Three of those four are statements about your setup. So the default reading of an empty result is that you have measured your own instrument, and the work is to rule out the three boring explanations before reporting the interesting one. This is not caution for its own sake. Absence claims are the ones that end up in a headline, a stat band and an email subject line, which means they are the ones that cost the most when they are wrong.

Why a site: count is a floor

Two properties make the site: operator unusable as a census. Its output is a sample rather than an inventory, so it establishes a lower bound and nothing else. And in most programmatic interfaces it returns a single page of results unless you explicitly ask for more; the parameter that looks like it controls depth frequently controls something else.

We got this wrong in public. A report we shipped in August 2026 said Google showed ten pages for a domain. Paginating the query properly returned fourteen, two of them on subdomains nobody had checked. The wrong number was in the headline, in the statistics band and in the outreach subject line, because a single number had been computed once and then reused everywhere without anyone re-deriving it.

The lesson we took is not to run site: better. It is that a count from any single query is a candidate, and a candidate does not go in a headline until a second instrument agrees with it.

The decisive test: search the page's own sentence

For a specific page there is a test that settles it. Take a literal sentence from that page, one distinctive enough not to be boilerplate, and search it in quotation marks. If the page is in the index it ranks first for its own sentence; that is close to a tautology, which is what makes the test strong.

Run it on at least two pages from different sections of the site, because one page missing is a page and two pages missing across two templates is a pattern. Then note what the search does return, since the domains that surface for your own sentence are usually a useful finding of their own.

The reason to prefer this test over any count is that it survives the objection a client will raise. Anyone who has read about search knows that site: is unreliable, and they are right. Nobody argues that an indexed page fails to rank for a verbatim sentence off itself, so this evidence holds in the meeting where the count does not.

When missing is a fact about your parser

Some of the worst absence findings never touch a search engine at all. In one session we produced two of them. A pattern that required a root-relative link returned zero internal links on every page we checked, which read as a site-wide broken navigation; the navigation was fine and emitting absolute URLs. And a text search over raw HTML reported a structured data type as missing when it was present, nested inside a graph the search pattern could not see.

Both times the data was correct and the measurement was not. Two rules came out of it. Parse structured formats with a parser rather than searching them as text, because a nested valid document does not match the shape you assumed. And check the rendered page as well as the raw response, because a template that assembles content in the browser is present for a reader and absent from a fetch, and neither view is the whole truth on its own.

Instruments that only fail one way

Some instruments are structurally incapable of proving absence, and it is worth knowing which ones. A vendor's AI Overview detection proves an overview was present; when it reports nothing, the causes include a genuine absence, an unexpanded asynchronous block and a rate limit, and they are indistinguishable in the output. A browser automation run that meets a bot challenge returns an empty result that looks exactly like a clean negative, which is why every run of ours carries an explicit blocked field that the automation has to set. And a scoped query that a data vendor answers with a no-results code should be read as no data rather than as zero.

Written as a rule: before any absence claim, three instruments, an exact-phrase check on at least two pages from different sections, and a human check on an ordinary connection that clicks through to the last page of results rather than eyeballing the first. State the age of the thing being measured next to the metric. And treat a uniform zero across a whole cohort as the signature of a broken instrument or a wrong window until proven otherwise, because that is what it usually is.

Questions

Questions, answered plainly.

Why not just trust the site: operator?

Because it returns a sample rather than an inventory, and most programmatic interfaces return only the first page of it by default. It is a fine way to establish that at least this many pages are indexed. It cannot establish an upper bound, and every absence claim is an upper-bound claim.

How do you prove a specific page is not indexed?

By searching a literal sentence from that page in quotation marks. An indexed page ranks first for its own sentence, so a search that returns other domains and not that page is strong evidence of absence, and it survives the objection that site: is unreliable.

What if all three instruments agree?

Then check whether they share an assumption. Three instruments pointed at the same wrong window agree with each other perfectly, which is why the age of the subject is stated next to the metric and why a young cohort gets a re-measure date instead of a verdict.

Does this slow every audit down?

Slightly, and only for the absence claims. Presence findings need one instrument, because finding the thing is sufficient. The three-instrument rule applies to the narrow class of claims that assert something is not there, which is the class that has produced every reporting error we have had to correct.

Method

What is measured, and what this page is not.

This is an explainer. It carries no figures, and it is not a reading of your category. The disclosure below states the instrument that produces the numbers the essay refers to, so the distinction is on the page rather than assumed.

instrument
Caul
what was measured
Nothing on this page. Where the essay refers to citation share, that figure is produced separately, per account.
how
A prompt set written once for a category and then frozen, run against every engine in clean sessions, with each answer stored unmodified.
over what window
Reviewed on 2026-08-15. The engines change, so read the essay against the date on the byline.
what this cannot tell you
An explainer is not evidence about your category. Being named is not being recommended, and it is not traffic or revenue. Any figure about your own visibility has to come from a capture of your own category, carrying its sample size and its window.
Keep reading

The rest of the cluster.

All Learn guides · Glossary

See where you stand.

The audit is a real sweep of your category, benchmarked against competitors you name, delivered on a call so the findings get explained rather than emailed. You keep the report and the underlying data whatever you decide afterwards.

Get your free auditWhat is in the report