Agentic Storefronts checklist

Shopify activated Agentic Storefronts by default for every eligible US merchant on March 24, 2026. AI shopping agents — ChatGPT Shopping, Perplexity Shopping, Google AI Mode, Shopify's Global Catalog — now decide which products to surface based on 18 machine-readable signals on your storefront. Here's the full checklist, grouped by impact, with how to test each.

Last updated 2026-04-22 · 18 signals · 5 floor + 13 deeper

TL;DR: Five signals are the floor — a store missing any of them is invisible to AI shoppers on that dimension. The other 13 are the ranking spread — what decides which of the visible stores the agent actually surfaces. Most Shopify stores get the floor for free; the spread is where you win or lose.

In this checklist

  1. The 5 floor signals — can't skip these
  2. Product identity — GTIN, MPN, brand, category
  3. Content richness — descriptions, images, alt text, reviews
  4. Crawl & rendering hygiene — canonicals, hreflang, mobile parity
  5. How to prioritize fixes
  6. FAQ

The 5 floor signals non-negotiable

Every AI shopping agent — without exception — needs these five. A store missing any of them is not in the competitive set for that agent. Good news: a default Shopify storefront gives you all five out of the box. Bad news: 40% of top DTC brands have moved to custom front-ends that break at least one.

1.Public /products.json feedFloor

Shopify's open catalog endpoint. The primary surface AI agents ingest for price, title, images, variants, and inventory. Returns up to 250 products per call with standard pagination.

How to test: curl -s https://yourstore.com/products.json?limit=1 — if it returns a JSON body with a products array, you have it. If you get 404, a login page, or HTML, you're invisible to any agent scraping at scale. Headless front-ends that proxy Shopify through a custom framework frequently drop this endpoint unintentionally.

2.Product JSON-LD on every PDPFloor

The single biggest discovery signal. AI agents all parse <script type="application/ld+json">{"@type":"Product"…}</script> blocks on product detail pages to extract price, availability, brand, GTIN, SKU, review score, and description.

How to test: view source on any product page, search for application/ld+json, confirm there's a block where @type is Product. Validate it via Google's Rich Results Test — all required fields green. Shopify's default theme emits this; many custom themes do not.

3.Valid sitemap.xmlFloor

Tells crawlers what pages exist. Without it, AI bots only know about pages they stumble onto via links — which on a large store means they'll miss most of your long tail.

How to test: curl -s https://yourstore.com/sitemap.xml — should return XML with <urlset> and one <url> per canonical page. Shopify auto-generates this; if you went headless, verify your new front still serves it.

4.Open Graph on the homepageFloor

og:title, og:description, og:image. This is what AI assistants render when they surface your store as a card in a response. Missing OG tags means your link shows up as a bare URL — much lower click-through than a rich card.

How to test: view source on your home page, confirm all three tags exist in <head>. The og:image should be at least 1200×630 and actually representative of the brand.

5.Open robots.txtFloor

No blanket Disallow: / or Disallow: /products for User-agent: *. One wrong line here renders every other signal moot.

How to test: curl -s https://yourstore.com/robots.txt — confirm the User-agent: * block doesn't disallow root, /products, /products.json, or /collections. Beware the common Shopify Disallow: /*?sort_by pattern — that one is fine (it blocks sort-permutation URLs only).

Product identity 4 signals · ranking spread

AI agents need to uniquely identify a product to compare it across stores, dedupe it in results, and confirm price/availability. These four signals are the identity layer.

6.GTIN / barcode coverage across variantsDeep

Global Trade Item Number (UPC, EAN, ISBN — Shopify stores them all under variants[].barcode). AI agents use GTINs to match your product to the same product on other retailers and on manufacturer sites. Missing GTINs means your product is less-trusted and rarely surfaces for commodity queries like "where to buy [product name]".

How to test: curl -s https://yourstore.com/products.json | jq '.products[].variants[].barcode' — count how many are non-null. If you're missing >20%, GS1 lookup or manufacturer enrichment is the fix. Our Pro tier does this automatically.

7.MPN (Manufacturer Part Number)Deep

When a GTIN isn't available (private label, custom products), MPN is the fallback identifier. Belongs in the Product JSON-LD as mpn.

How to test: inspect JSON-LD on a PDP — is mpn present? If your products have SKUs that are effectively MPNs, surface them here.

8.Brand JSON-LD on PDPDeep

The brand property in Product JSON-LD — either a string or a nested {"@type":"Brand","name":"…"}. Agents use this for brand-intent queries ("buy Allbirds") to rank the official store over resellers.

How to test: inspect Product JSON-LD — is brand populated? If Shopify's default theme is emitting this, good. Many custom themes omit it.

9.Google Product Category metafield depthDeep

Shopify's product.metafields.google.google_product_category (or the newer native field) tells agents which Google taxonomy node the product belongs to. Shallow or missing categories mean your products don't compete in category-intent queries.

How to test: in Shopify admin, sample-check 10 products. If the category is missing or set to a top-level node (e.g. "Apparel & Accessories") rather than a leaf ("Apparel & Accessories > Shoes > Athletic Shoes"), you're bleeding rank on category queries.

Content richness 5 signals · ranking spread

Once an agent can identify your product, content richness decides whether the response it composes features your listing prominently or buries it.

10.Image alt-text coverageDeep

Text-first agents (ChatGPT in particular) generate product descriptions partly from image alt text when Product JSON-LD descriptions are thin. Alt text is also accessibility table-stakes.

How to test: view source on a PDP, count <img> tags with non-empty alt attributes. If fewer than 80% of product images have meaningful alt, this is the highest-leverage fix you can do in one afternoon.

11.Description length & boilerplate detectionDeep

Agents down-rank products with identical, templated, or <50-word descriptions. A store where every product description is "Perfect for everyday wear" surfaces less than a store with genuinely unique 100+ word descriptions.

How to test: pull 20 descriptions from /products.json, check median length and eyeball for boilerplate. If the median is under 80 words or you spot identical opening sentences, that's the fix. (Our Pro tier auto-rewrites with Claude.)

12.Review schema (AggregateRating)Deep

The single strongest trust signal after GTIN. aggregateRating JSON-LD (rating value + review count) directly drives agent confidence that your listing is legitimate. Apps like Yotpo, Judge.me, and Shopify Product Reviews all emit this — but many custom themes strip it.

How to test: validate a PDP in Google's Rich Results Test. If reviews show under "not detected", your theme isn't surfacing them even if they exist in your admin.

13.Availability & shipping schemaDeep

offers.availability ("InStock" / "OutOfStock") and offers.shippingDetails (or shippingDetails as a top-level). Agents prefer in-stock items with clear shipping info when composing a shopping response.

How to test: inspect JSON-LD offers block on an in-stock PDP. availability should be a full URL (https://schema.org/InStock), not just "InStock" — a surprising number of themes emit the short form and fail validation.

14.Product type taxonomy (native, not freeform)Deep

Shopify's native product taxonomy (rolled out 2024) gives agents a consistent cross-store category vocabulary. Stores still using freeform "product type" strings (legacy field) don't benefit from cross-store category queries.

How to test: in Shopify admin → Products → pick one → check if "Category" is set to a native taxonomy node (e.g. "Shoes > Athletic Shoes") vs a freeform string.

Crawl & rendering hygiene 4 signals · ranking spread

These are the "boring plumbing" signals — unglamorous but high-impact. Broken hygiene here silently zeroes out work you did elsewhere.

15.Canonical URL hygieneDeep

Every PDP should have a single canonical URL. Shopify stores typically have 2-3 URL variants for every product (/products/X, /collections/Y/products/X, etc.). Without correct <link rel="canonical"> tags, agents split trust across variants.

How to test: view source on a PDP reached via a collection URL; the <link rel="canonical"> should point to the clean /products/X form, not the current URL.

16.Hreflang for multi-region storesDeep

If you serve multiple regions (US, UK, EU) with separate URL paths, hreflang tags tell agents which version to surface for which locale. Missing hreflang on a multi-region store causes cannibalization — your US store ranks for UK queries instead of your GBP-priced UK store.

How to test: if you have /en-us/, /en-gb/ etc., confirm each page has a matched set of <link rel="alternate" hreflang="…"> tags in <head>.

17.Structured data validation (zero errors)Deep

JSON-LD blocks that throw validation errors or warnings get discounted. A block with a required field missing (e.g. Product without name) is effectively invisible.

How to test: batch-validate 10 random PDPs through Google's Rich Results Test. Any errors or warnings are the fix list.

18.Mobile JSON-LD parityDeep

Some stores emit full JSON-LD on desktop but strip it on mobile to reduce payload. Google and AI agents crawl mobile-first — a mobile user-agent hitting your PDP is what matters.

How to test: curl -sA 'Mozilla/5.0 (iPhone;…)' https://yourstore.com/products/X | grep -c 'application/ld+json' vs the same with a desktop UA. Mismatch = problem.

How to prioritize these fixes

Eighteen items is daunting. Here's the order we'd tackle them in:

  1. Audit the 5 floor signals first. A store missing any floor signal should fix that before touching the spread signals. Most common miss: Product JSON-LD on PDP.
  2. Next, GTIN coverage and review schema. These two signals drive the largest share of cross-store matching and agent trust — you get outsized ROI per hour spent.
  3. Then, the Google Product Category and native product type. These unlock category-intent queries ("where to buy running shoes" vs "where to buy Allbirds"), which are much higher volume.
  4. Finally, hygiene signals. Canonicals, hreflang, mobile parity — boring but cumulative. A store that scores 100/100 on the 5 floor signals but fails half the hygiene is still getting out-ranked.

FAQ

What are Agentic Storefronts?

Shopify's internal name for the set of capabilities that let AI shopping agents (ChatGPT Shopping, Perplexity Shopping, Google AI Mode, Shopify's own Global Catalog) discover, understand, and transact against a Shopify store without a human browser session. Activated by default for every eligible US merchant on March 24, 2026.

Do I have to enable Agentic Storefronts manually?

No. Every eligible US merchant had it turned on by default on March 24, 2026. The more important question is whether your catalog data is structured in a way that AI agents can actually ingest — which is what this checklist covers.

Which signals matter most?

The 5 floor signals are non-negotiable — a store missing any of them is invisible on that dimension. Among the 13 deeper signals, GTIN coverage, review schema (aggregateRating), and Google Product Category carry the most weight in our testing.

My store is headless. Does this checklist still apply?

Yes, and the stakes are higher. A headless Shopify storefront (Hydrogen on Vercel, Next.js + Storefront API, custom stack) has a Shopify back-end but a custom front-end — the AI-readable surface (/products.json, sitemap, JSON-LD) must be re-implemented on the custom front or these signals vanish. In our scan of 100 top DTC brands, 40 had gone headless and lost their public feed entirely.

Is this different from SEO?

Overlapping, not identical. Traditional SEO optimizes for Google's 10 blue links plus featured snippets; AI shopper readiness optimizes for the data feeds and structured signals AI agents read to compose shopping answers. A store can rank well in Google but fail in ChatGPT Shopping if it lacks JSON-LD; conversely a store with perfect JSON-LD and shallow content can appear in AI answers but not in blue-link search.

How often does this checklist need to be re-run?

Quarterly at minimum. Shopify themes update, apps change their JSON-LD output, a single deploy can silently break a signal. Our Pro tier re-scans weekly with a Slack digest when anything drops.

Is your store invisible to ChatGPT?

Free 2-minute scan. All 18 signals. 0–100 score plus the 5 fixes that move it most.

Scan my store → See the 100-store leaderboard