AEO for Shopify.
Be the quote.
Whether the catalogue can be lifted as a direct answer to a shopper's question. Answer engines lift a sentence, a list or a table and put it in front of the shopper. The product description decides whether there is anything to lift.
- Target
- TGT-02 · AEO · Answer engine optimisation
- Checks
- 5 in pillar layer v1.0
- Weight sum
- 86 — relative within this pillar; not rescaled to 100
- Heaviest
- Description depth · FAQPage / HowTo schema (20 each)
- Fix classes
- 0 automatic · 5 assisted · 0 guided — the design
- Crawler rule
- No crawler penalty applies to this pillar.
- Composite
- A separate layer (rubric v1.0). Pillars do not sum to it.
- Fixes
- Planned automatic · Planned assisted
- Verify · rollback
- Planned · Planned
Summarised, not quoted.
An engine that cannot find a quotable answer summarises the page in its own words instead. The shopper still gets the answer; the store loses the attribution, the citation and the click that follows it.
One field
carries the answer.
Why answer-readiness on Shopify is mostly a question about body_html.
An answer engine answers the question where it is asked — in a results page or an assistant — and cites where the answer came from when it can. For a Shopify product, the answer has to exist on the product page as text: a sentence that states the fact, a list that carries the specification, a heading that matches the question a shopper asks.
Shopify keeps all of that in one field. The description is body_html: rich text, usually written for a person scanning a page, often pasted from a supplier, and often opening with a slogan rather than a statement. The theme’s product template adds its own sections and headings around it. That is the surface this pillar reads.
The acronym has no single canonical origin; it is used across the industry with conflicting histories. Rank Sniper publishes its own definition, above, and scores only what it can observe against it.
Quoted,
or summarised.
What makes a sentence liftable, and what Rank Sniper can and cannot see of it.
A quotable unit is a sentence that survives being lifted out of the page: it names the product, states a fact and carries its own unit. “It’s lovely and soft” answers nothing. “The Linen Throw is 280 gsm stonewashed flax and measures 130 × 180 cm” answers three questions and can be attributed to the store that wrote it.
Rank Sniper does not know how any engine chooses what to quote, and does not claim to. What it can observe is whether a quotable unit exists at all: whether the description is long enough to hold one, whether it opens with a statement, whether its facts are structured, and whether its headings are phrased as the questions they answer. Those are the 5 AEO checks.
An answer-ready
product description.
The same product written twice, and what each AEO check sees in it.
<p>Elevate your evenings. Our bestselling throw brings effortless style to any room — you'll never want to leave the sofa.</p>
<p>The Linen Throw is a 130 × 180 cm blanket woven from 100% European flax, 280 gsm, stonewashed for softness.</p> <ul> <li>Size: 130 × 180 cm</li> <li>Weight: 280 gsm</li> <li>Care: machine wash at 40 °C</li> </ul> <h3>Is it warm enough for winter?</h3> <p>At 280 gsm it is a mid-weight throw: warm as a layer, light enough to use year-round.</p>
- Description depth
- Before is well under roughly 180 characters of text once the HTML is stripped — too little to hold an answer. After passes.
- Answer-first structure
- Before opens with an imperative slogan. After opens by saying what the product is — the shape the check looks for.
- List and table density
- After carries list markup and numbers with units. The test looks for lists, units, or the words dimension, material or composition; in pillar layer v1.0 a table on its own does not satisfy it.
- Question-shaped headings
- After has a heading that ends in a question mark. Use a real heading element: a bold line is not a heading to a parser.
- FAQPage / HowTo schema
- Neither version carries it. Markup is a separate layer — next section.
5 checks.
All about the text.
The AEO pillar as the scorer runs it today, read from the live derivation.
| Weight | Shareif all scored | Fix classdesign | What the scan reads | |
|---|---|---|---|---|
| Description depth | 20 | 23% | Assisted | Description length once HTML is stripped (roughly 180 characters or more) |
| FAQPage / HowTo schema | 20 | 23% | Assisted | FAQPage, HowTo or QAPage in JSON-LD on any sampled page |
| List and table density | 16 | 19% | Assisted | List markup, numbers with units, or attribute words in the description |
| Answer-first structure | 16 | 19% | Assisted | The opening sentence — a substantive declarative statement |
| Question-shaped headings | 14 | 16% | Assisted | A heading phrased as a question on the sampled pages |
| Sum of weights | 86 | — | — | Relative within this pillar; not rescaled to 100. |
Description depth, list density and the answer-first opening score the share of products that pass. Question headings score the share of sampled pages. The FAQ check is one per store and binary: the markup is on a sampled page or it is not.
Share assumes every check was scored. A check whose input could not be read is unscored and leaves the denominator instead of counting against the store. The same rows, and how the pillar layer sits beside the composite, are on the rubric. The fix class column is the design — who will have to act — not a shipped fix.
What the FAQ check
does not promise.
FAQPage, HowTo or QAPage markup is scored as a machine-readability signal. It is not a rich-result promise.
FAQPage / HowTo schema (weight 20) passes when any sampled product page carries FAQPage, HowTo or QAPage in its JSON-LD. It is tied for the heaviest check in the pillar, and it is binary.
What it does not mean is a rich result on Google. Google limited FAQ rich results to well-known government and health sites in 2023, and its Search Central updates log records that the FAQ rich result stopped appearing in Google Search from 7 May 2026. The HowTo rich result was removed in 2023. Google also states that no special schema.org markup is needed to appear in its AI features.
So the check is scored for a narrower reason: a question paired explicitly with its answer is the least ambiguous form support content can take for any parser that reads it. Whether a particular answer engine uses FAQPage markup is not established by the sources on this page, and Rank Sniper does not assume it. Two rules hold either way — the markup should state what the page visibly says, and a widget that renders only with JavaScript is invisible to a scan that reads raw HTML.
What a parser
can lift from the page.
Read from the served HTML and the public product listing. Nothing a script adds later is seen.
- Description text
- body_html from the public product listing: HTML stripped to measure its length, kept to read its structure.
- Opening sentence
- The first sentence of the description, tested for a substantive declarative statement — is, has, includes, measures, weighs — rather than a slogan.
- Structure
- List markup, numbers with units, and attribute words (dimension, material, composition) in the description HTML.
- Headings
- Every heading on the sampled product pages, tested for a question mark or a question opener: how, what, why, which, can, does, is.
- Markup
- The @type of each JSON-LD block on the sampled pages — FAQPage, HowTo or QAPage.
- Not observed
- Anything rendered by JavaScript after load: review widgets, Q&A apps, tabs filled by script. The scan never runs scripts.
Who reads
for answers.
Answer engines
Systems that answer a question in place — search answer features, assistants with search — and cite a source where they can.
Retrieval crawlers
OpenAI documents OAI-SearchBot for ChatGPT search, Perplexity documents PerplexityBot for its results, Anthropic documents Claude-SearchBot for Claude. The scan checks the first two; their access is scored under GEO.
The page parser
Turns served HTML into passages, headings and lists, and JSON-LD into typed statements. What is not in the served page cannot be quoted from it.
Shopify’s description field
body_html — edited in the admin or imported by CSV, rendered by the theme’s product template beside the theme’s own sections.
Four descriptions,
four fixes.
Illustrative cases, not customers.
Supplier copy, pasted
Descriptions open with “Elevate your space.” Answer-first structure fails on every one, and the result names examples. The fix is to move the sentence that says what the product is to the front.
The size chart is an image
Dimensions live in a JPG. The description has no units and no list, so List and table density fails here and Quotable claim density fails under GEO — one missing piece of text, two pillars.
An FAQ app that renders client-side
Shoppers see ten answered questions; the served HTML holds a script tag and an empty container. The FAQ and question-heading checks read raw HTML, so both fail.
Shipping and returns, as statements
The theme’s collapsible rows are titled “Shipping” and “Returns”. Renaming one “How long does delivery take?” gives the page a question-shaped heading; the answer is already underneath it.
How AEO fails
without anyone noticing.
Paraphrased
No quotable sentence. The shopper still gets an answer; the store loses the attribution.
Too thin to answer
Under roughly 180 characters of description once the markup is stripped.
Slogan first
The sentence that says what the product is sits in the third paragraph.
Specs locked away
Facts in prose, in an image or in a script-loaded tab — no list, no units.
Unmatched questions
The answer exists, but no heading is phrased as the question it answers.
Invisible markup
Question-and-answer markup that exists only after JavaScript runs.
What happens today.
What is still planned.
Rank Sniper finds and scores. Today the merchant rewrites and re-runs the scan.
- NOW-01Available
The scan reads and scores
Reads the public product listing and up to three product pages as raw HTML, and scores the 5 AEO checks above.
- NOW-02Beta
The full report lists what fails
Every failing AEO check, heaviest-weighted first, in the full report sent by emailed sign-in link.
- NOW-03
You make the change, then re-scan
A description past ~180 characters that opens with a declarative sentence and carries a list or table gives an answer engine something it can quote. FAQPage or HowTo markup turns existing support copy into a citable answer rather than prose an engine has to summarise.
- FIX-BPlanned
Assisted · 5 of 5 checks
Changes a native Shopify field — a title, description, tag, image or variant field. Drafted and staged; written only when you approve and apply it.
- VER-01Planned
Verification after a fix
Designed to re-fetch what agents actually receive once a change ships, and confirm it landed.
- VER-02Planned
Rollback
Designed to store the prior value of every write, with per-product restore.
The text layer.
Between the index and the agent.
SEO
AEO assumes the page is reachable and that the right URL is the one indexed — both SEO questions. AEO is where the page’s text is judged for what it can answer.
Engage →GEO
AEO makes a passage quotable; GEO decides whether a generative engine may read the store and whether a claim can be attributed to it. Units are scored in GEO, the opening sentence here — one description, two questions.
Engage →AIO
AEO serves reading, AIO acting — and they share a test. List and table density here (weight 16) and Structured attributes in AIO (weight 16) are scored from the same catalogue check.
Engage →AEO in
five lines.
What it is
Structuring product content so a sentence, list or answer can be lifted straight into a reply to a shopper’s question.
Why it matters
An engine that finds nothing quotable summarises instead — and the citation goes elsewhere.
What Rank Sniper observes
5 checks: description depth, the opening sentence, list and unit structure, question headings, and FAQPage, HowTo or QAPage markup on up to three product pages.
What Rank Sniper does today
Available Scores the pillar on every public scan. It does not query an answer engine or check whether any page was cited.
What remains planned
Planned Drafted descriptions, openings, lists and question headings, staged for approval. FAQ answers drafted from existing support copy — never published unseen.
Scan a store.
Find what it cannot answer.
The public scan scores all four pillars. The AEO pillar shows which description checks fail, heaviest first.
- OfficialSearch Central documentation updates (FAQ and HowTo rich results)Google Search Central
- OfficialAI features and your websiteGoogle Search Central
- OfficialOptimizing your website for generative AI features on Google SearchGoogle Search Central
- OfficialOverview of OpenAI crawlersOpenAI
- OfficialPerplexity crawlersPerplexity
- OfficialDoes Anthropic crawl data from the web, and how can site owners block the crawler?Anthropic
