A recommendation system cannot compare a product using facts that exist only in a merchant’s head. It also cannot reliably resolve five conflicting versions of the same fact.
The central technical job for Shopify AEO and GEO is to create a product fact layer that is explicit, consistent, and attached to a stable product identity.
The fact model
Divide product information into six groups:
| Group | Examples | Recommended owner |
|---|---|---|
| Identity | name, brand, SKU, GTIN, canonical URL | Shopify product or variant |
| Classification | product type, taxonomy category, audience | taxonomy and metafields |
| Physical | material, size, weight, dimensions, ingredients | typed metafields |
| Eligibility | age, skin type, skill level, fit, use case | typed metafields plus visible copy |
| Commercial | price, currency, availability, subscription | variant and market data |
| Policy | shipping, returns, warranty, safety exclusions | policy pages or metaobjects |
Use typed metafields for facts that must be reused. A free-form description can explain why a material matters, but a material metafield should hold the normalized value.
Build a source-of-truth map
Before editing the storefront, complete this table for the selected product:
| Fact | Shopify source | Visible location | Structured source | Update trigger |
|---|---|---|---|---|
| Price | variant price | buy box | Offer.price |
price change |
| Availability | inventory policy | buy box | Offer.availability |
inventory change |
| Material | product metafield | specifications | Product.material |
merchandising edit |
| Warranty | warranty metaobject | policy panel | referenced text/URL | policy edit |
| Fit | product metafield | size panel | description or property | product edit |
If a fact has two owners, choose one. If a value is time-sensitive, avoid a manually copied value.
Write facts at the level buyers compare
“High quality” is not a comparable fact. The following are:
- 1440 × 1440 video resolution
- compatible with 2.4 GHz Wi-Fi
- 4.2 oz and 1.7 oz size options
- designed for beginners age 12 and over
- 100% cotton, regular fit
- 30-day return window
For each product, list five questions a customer asks immediately before purchase. Make every answer visible in plain text on the canonical page.
Keep identity stable across variants
Variants create ambiguity when names, SKUs, URLs, and offers are disconnected.
Use:
- one stable parent product identity
- a stable SKU for each commercially distinct variant
- variant URLs that resolve to the correct selected option
- explicit labels such as
Size: 4.2 oz, notBig - market-specific currency and availability
For a product group, a simplified pattern is:
{
"@context": "https://schema.org",
"@type": "ProductGroup",
"@id": "https://example.com/products/glazing-milk#product",
"name": "Glazing Milk",
"brand": {"@type": "Brand", "name": "Example Brand"},
"variesBy": ["https://schema.org/size"],
"hasVariant": [
{
"@type": "Product",
"sku": "GM-42",
"size": "4.2 oz",
"offers": {
"@type": "Offer",
"price": "32.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
]
}
Treat this as a model, not copy-paste production code. Shopify’s native structured_data output, theme version, apps, and market setup determine the correct implementation.
Handle claims as evidence
Claims need qualifiers:
- “water resistant” needs a rating or test condition
- “works with Alexa” needs the supported feature and region
- “for sensitive skin” needs product guidance and appropriate limitations
- “lifetime warranty” needs a link to the terms and exclusions
Store the claim, its source URL, owner, applicable products, and last review date. Avoid converting marketing superlatives into numeric facts.
Audit consistency
For ten priority products, compare:
- visible title, price, availability, and selected variant
- canonical URL
- all
Product,ProductGroup, andOfferobjects - Shopify product feed or Merchant Center data
- collection cards and internal search
- policy pages referenced by the product
Classify each difference:
- critical: wrong price, currency, stock, SKU, or canonical
- material: wrong size, compatibility, ingredients, or warranty
- descriptive: wording differs but meaning agrees
- intentional: market or variant context explains the difference
Acceptance checklist
A product is fact-ready when:
- the canonical URL identifies one product
- variant identity is recoverable
- visible and structured commercial facts agree
- decisive specifications are text, not image-only
- policies and limitations are linked
- claims have an owner and review date
- unsupported facts are omitted rather than guessed
This does not force an answer engine to recommend the product. It gives the engine fewer reasons to ignore it, misclassify it, or describe it incorrectly.
Community discussion
Add to the article
Ask a technical question, share a storefront result, or challenge a conclusion with evidence.