aeo

Five things that keep a good page out of AI answers

Pages that rank fine and still never get cited usually share the same five faults. Each one is fixable in an afternoon.

A page can rank on page one and still never get cited by an assistant, quoted in an answer box, or referenced by a chatbot. That’s not a contradiction — ranking and extraction are scored on different things — but it does mean a page can look successful in Search Console while being effectively invisible to whatever is reading it for an answer.

In practice, the pages that get skipped tend to share one of a small number of faults. None of them require a rewrite. Here are the five most common, each with a way to check for it without reading every page by hand.

The answer is buried below the setup

The fault. The heading asks a question, and the paragraph underneath spends two or three sentences on setup before it answers — put the answer in the first sentence instead. What an answer engine reads covers why that first sentence is the one that gets lifted.

Detect it at scale. Pull the first sentence under every ## and ### on a page and read them as a list, headings removed. If a sentence doesn’t work as a standalone answer to the heading above it, that section fails.

Every passage depends on the one before it

The fault. A paragraph reads fine in sequence and falls apart the moment it is read alone — “it” with no antecedent in the same chunk, “as mentioned above,” a table with no restated context — restate the referent in the same paragraph. What an answer engine reads covers why chunking does this.

Detect it at scale. Search the page for “it,” “this,” “that,” and “above” at the start of a sentence, then check whether the referent sits in the same paragraph. Anything reaching further back is a chunk-boundary risk.

The entity is never named plainly

The fault. A support page refers to “this solution” and “our tool” nine times and the product name exactly once, in the page title — name it in the body, not just the title.

Detect it at scale. Count how many times your product or company name appears in a page’s body against how many times a generic substitute — “the platform,” “our tool,” “it” — takes its place. If the substitute wins by a wide margin, the page reads as anonymous.

The markup and the page disagree

The fault. JSON-LD schema states a price, a rating, or a fact that no longer matches what’s on the visible page, usually because one got updated and the other didn’t — update both in the same edit.

Detect it at scale. Start by hand: diff the JSON-LD against the visible text on your ten highest-traffic pages. If the drift turns out to be more than a one-off, script the same comparison — key schema fields against the equivalent visible text — and rerun it whenever pricing or catalog content changes.

Nothing on the page is quotable

The fault. The page is accurate and well organized, but every sentence hedges — “response times can vary,” “pricing depends on your setup” — state the number or the yes/no plainly somewhere in the section.

Detect it at scale. Skim a page for sentences that contain a concrete number, a named requirement, or a plain yes/no claim. A page with none of those has nothing for an extractor to lift, no matter how accurate the surrounding prose is.

Those five faults sit behind most of the gap between “ranks fine” and “gets cited.” If you want to run them as a pass rather than read them as a list, five checks for a page that ranks but never gets cited gives each one a by-hand check and a command you can run across a whole site. Three of them GEOBee catches on its own: the missing answer block, the thin or unquotable page, and the brand that is never tied to an organization profile. The other two — self-contained passages, and schema that agrees with the page — are still a read-through job today. Findings & fixes shows the severity order and what a real finding-plus-fix pair looks like; GEOBee runs the checks across every URL on a site rather than one page at a time.

On this page