You rank first for "best crm for nonprofits" and your page is nowhere in the AI answer for the same phrase. The instinct is to assume a penalty, a quality judgment, or some opaque "AI visibility" factor. The more likely explanation is simpler and more structural: the system never ran your query. It ran eight other ones.
Google has described AI Mode as using a query fan-out technique — issuing multiple related searches across subtopics and data sources, then synthesizing the results. Other AI answer systems behave similarly: the user's prompt is rewritten and decomposed before retrieval happens. That single design choice invalidates the unit of measurement most SEO reporting is built on, which is the keyword.
What query fan-out actually does to a prompt
The documented part is the shape: one user input produces several machine-generated searches, and the answer is assembled from the union of their results. The undocumented part is everything you'd want to know — how many sub-queries, how they're generated, how results are deduplicated, and how a document gets chosen as a citation versus merely informing the text.
A reasonable mental model, consistent with how retrieval-augmented systems are built generally:
- Rewrite. The prompt is normalized and resolved against context (prior turns, location, obvious entity references).
- Decompose. The model generates sub-queries covering distinct facets — definitions, comparisons, constraints, prices, counterexamples, recency.
- Retrieve. Each sub-query hits a retrieval stack, which for Google means the same index infrastructure that serves classic search, plus other sources.
- Select and chunk. Candidate documents are reduced to passages, not whole pages (which is why your page can be "used" for a single paragraph buried mid-article).
- Synthesize and attribute. The answer is written, and links are attached to the claims the system can ground.
The practical consequence: your page competes in several small, narrow retrieval races, most of which you never see, and it only needs to win one to appear.
Why your rank tracker can't see any of this
A rank tracker submits the exact string you gave it. Fan-out means the strings that actually drove retrieval were generated at runtime, are not exposed, and probably vary between runs and between users. Three measurement failures follow:
- Unit mismatch. You track a head term; the system issues long-tail, constraint-laden sub-queries that may never appear in any keyword tool because no human types them.
- Non-determinism. Rerunning the same prompt can produce a different decomposition, so a single check is a sample of one from a distribution you haven't characterized.
- Aggregation in reporting. Google's Search Console documentation states that AI Mode and AI Overview data is included in the Web search type rather than broken out as its own surface, so you can't isolate those impressions in the performance report the way you can isolate images or video.
| What you measure | What the system uses | Gap it creates |
|---|---|---|
| One tracked keyword | N generated sub-queries | You see 1/N of the retrieval surface |
| Page-level ranking | Passage-level selection | A strong page can lose on chunk structure |
| Single check per day | Stochastic decomposition | High variance read as change |
| Position 1–100 | Cited / not cited | No gradient to optimize against |
How to reconstruct the fan-out yourself
You can't read the system's sub-queries, but you can approximate them well enough to be useful, because the decomposition is driven by the facets of the topic rather than by anything secret.
For each priority prompt, write out the sub-questions a competent researcher would need answered before writing the answer. Do it manually for a handful first, then use an LLM to expand the set — the goal is coverage, not fidelity to Google's exact strings. A typical decomposition of "best crm for nonprofits" looks like:
- what is a nonprofit crm
- nonprofit crm pricing / discount programs
- crm donor management features
- salesforce nonprofit cloud vs bloomerang
- free crm for small nonprofits
- nonprofit crm integration with quickbooks
- nonprofit crm migration difficulty
- crm data privacy requirements for donor data
Now treat that list as your keyword set. Score each sub-query against your site with three questions: does a page of ours address it explicitly, is the answer contained in a single self-contained passage, and does that passage make sense quoted out of context? The resulting matrix is the real asset. It tells you where you are retrievable, not just where you rank.
What makes a passage winnable across many sub-queries
Since selection happens at passage level and the queries are narrow, the properties that help are mostly structural:
- Answer-adjacent headings. A heading phrased as the sub-question makes the chunk boundary align with the retrieval target. This is a chunking argument, not a keyword-stuffing one.
- Self-contained paragraphs. A passage that begins "It also supports..." has lost its antecedent the moment it's extracted. Name the subject in the sentence.
- Explicit attributes and numbers. Comparative sub-queries need values to compare. Tables of specs, prices, limits, and eligibility are disproportionately quotable.
- Stated constraints and exceptions. Fan-out generates qualifier queries ("for small teams", "without a developer"). Pages that only cover the unqualified case never match them.
- Visible dates and version numbers for anything time-sensitive, since recency filters operate on what the system can parse.
What is contested: whether any of this constitutes a separate discipline from regular on-page work. My read is that it mostly doesn't — candidates still come from a conventional index, so crawlability, canonical hygiene, and classic relevance remain prerequisites. The genuinely new part is the breadth requirement. Winning one head term used to be enough; now partial topical coverage means you're absent from most of the sub-races.
A measurement setup that survives the non-determinism
Build the panel, not the spot check:
- Pick 20–40 prompts that reflect how your buyers actually phrase things, including follow-ups, not just head keywords.
- Run each prompt three to five times per collection cycle and record citation presence as a rate, not a binary. A domain cited in 2 of 5 runs is a different state from 0 of 5.
- Log the answer text, not just the links. Unlinked but clearly sourced claims are a real outcome and the only early signal you get.
- Maintain the sub-query coverage matrix and treat uncovered high-value sub-questions as a content backlog with a defined owner.
- Watch Search Console at the page level for impression growth on pages with flat or falling clicks. You can't segment the surface, but a widening impression-to-click gap on informational pages is consistent with assistive-answer exposure — treat it as a hypothesis to corroborate, not proof.
Report citation rate and sub-query coverage as separate metrics from rankings. Combining them hides exactly the movement you're trying to detect, and it invites the mistake that started this: assuming a missing citation is a judgment on your page, when it's usually an answer to a question you never knew was asked.