Shopify + ChatGPT Shopping: how to actually show up
ChatGPT Shopping is surfacing products in user conversations right now. Shopify activated Agentic Storefronts — the integration layer that lets ChatGPT read Shopify catalogs — by default for every eligible US merchant on March 24, 2026. But being eligible isn't the same as actually showing up. Here's what Shopify handles for you, what you still have to get right, and why most stores are invisible on the basics.
What changed on March 24, 2026
On March 24, 2026 Shopify activated Agentic Storefronts — a set of capabilities that let AI shopping agents discover, understand, and transact against a Shopify store programmatically — by default for every eligible US merchant. Eligible means: standard Shopify storefront (not checkout-only or POS-only), US-based, not blocked by store-level settings.
In practice, this turned on three things at once:
- Shopify Global Catalog participation. Your products (title, price, image, availability, variants) are now published into Shopify's aggregated catalog feed, which OpenAI, Perplexity, and Google pull from.
- Structured product endpoints. Your
/products.json,/sitemap.xml, and per-PDP JSON-LD continue to be served — and are the surface agents scrape directly for anything Global Catalog doesn't cover. - Agent-facing transaction hooks. For stores that enabled it, agents can complete purchases directly via Shopify's checkout API. This is opt-in per store; discovery is not.
Being in the Global Catalog is necessary but not sufficient. ChatGPT doesn't just ask Shopify "what stores sell running shoes?" and list the first 10. It ranks, and it ranks on the quality of your catalog data — not on how much Shopify likes you.
How ChatGPT Shopping actually picks products
Based on observable behavior across a few hundred test queries (run during our 100-store scan week), the ranking signals cluster into four groups:
| Group | Signals | What it decides |
|---|---|---|
| Presence | Global Catalog inclusion, public /products.json, working sitemap |
Whether you're in the competitive set at all |
| Identity | GTIN / MPN, brand JSON-LD, Google Product Category | Whether agents can uniquely identify and categorize your product |
| Trust | AggregateRating, review count, description quality, brand authority | Which of the visible results the agent surfaces first |
| Presentation | Open Graph tags, image alt text, price formatting | How your listing renders in the card inside the ChatGPT response |
Miss presence and nothing else matters. Miss identity and you compete on long-tail queries only. Miss trust and you're always ranked below a competitor who has it. Miss presentation and your CTR on the card drops even when you do rank.
The 8 things you still have to get right your job
Shopify's default storefront gets you most of the floor for free. The rest is on you.
Confirm /products.json returns JSON
curl -s https://yourstore.com/products.json?limit=1. If you get HTML, 404, or a login page, your store is invisible to agents scraping at scale. Most common cause: went headless and the new front didn't re-implement the endpoint.
Product JSON-LD on every PDP, validated
View source on a product page, look for <script type="application/ld+json"> with "@type": "Product". Paste the PDP URL into Google's Rich Results Test — zero errors, zero warnings. Shopify's default Dawn theme emits this; many custom or legacy themes do not.
GTIN coverage across variants
Every variant that has a UPC/EAN/ISBN should have it in variants[].barcode. Pull /products.json, count null barcodes. Fix: GS1 lookup for commercial products, or MPN fallback in JSON-LD for private label.
Google Product Category at the leaf level
"Apparel & Accessories" is not enough. "Apparel & Accessories > Shoes > Athletic Shoes" is. Shopify's native category picker walks the Google taxonomy; use leaf nodes on every product.
AggregateRating JSON-LD
If you have reviews (Yotpo, Judge.me, Shopify Product Reviews), they should surface as aggregateRating inside the Product JSON-LD. Validate one PDP in Rich Results Test — review data should show as detected, not missing. Many custom themes strip the review widget's JSON-LD output.
Real descriptions, not templates
Median description should be >80 words. Check for identical opening sentences across 10 random products. Agents downrank templated text hard — "Perfect for everyday wear" across 300 SKUs is a strong negative signal.
Availability in absolute URL form
Product JSON-LD offers.availability should be https://schema.org/InStock, not the bare string "InStock". The bare string technically validates in some tools but is inconsistent with Rich Results and drops when agents strict-parse.
Mobile JSON-LD parity
Some themes strip structured data on mobile to shave page weight. Google and AI agents crawl mobile-first. Test: curl a PDP with an iPhone user-agent vs desktop — application/ld+json block count should match.
What Shopify covers for you (don't worry about these)
- Catalog transmission to OpenAI / Perplexity / Google. Shopify's Global Catalog handles the pipe — you don't need to submit feeds to three different providers.
- Store-level entity registration. Your Shopify store's canonical identity (domain, legal name, support contact) is surfaced centrally.
- Inventory real-time updates. Agents see your current stock, not a stale snapshot.
- Price currency and tax defaults. Resolved per region automatically.
What Shopify does NOT cover: the quality of your catalog metadata (GTINs, categories, reviews), the completeness of your JSON-LD, or your canonical URL hygiene. Those are all theme + catalog-admin work.
Most common failure modes from our scan of 100 stores
We scanned 100 well-known DTC Shopify brands against the 5 floor signals. The most common failure modes, ranked by frequency:
- 40%: "went headless, lost the feed." Moved from Shopify's default storefront to Hydrogen / Next.js / custom, never re-implemented
/products.json. Invisible to anyone scraping catalogs at scale. Examples: Bombas, Kendra Scott, Goop, Glossier. - 10%: Shopify store, missing Product JSON-LD on PDPs. Theme doesn't emit it, or a template override deleted the emit. Store is discoverable via feed but ranks poorly because agents can't parse price/availability from the PDP directly.
- 5%: Shopify store, partial Open Graph. Home has
og:titlebut noog:image, so their link renders as a naked card in AI responses. - 3%: Shopify store, robots.txt blocks
/productsor/collections. Usually a leftover from a pre-launch staging setting.
See the full breakdown
- The full report — 100 DTC stores, ranked and named
- The 100-store leaderboard (sortable)
- Representative scorecards: allbirds.com (100/100) · birddogs.com (55) · gymshark.com (60) · bombas.com (headless)
- The 18-signal checklist — all signals in one place
FAQ
Is ChatGPT Shopping live for Shopify stores?
Yes. OpenAI rolled out ChatGPT Shopping to free and Plus tiers in late 2024 and expanded integrations through 2025. Shopify activated Agentic Storefronts by default for every eligible US merchant on March 24, 2026. If you're on Shopify's standard storefront, you are eligible.
Do I need to opt in?
No opt-in needed to be discoverable — Shopify handles the integration layer automatically. But to actually rank, your catalog data must be structured correctly: Product JSON-LD on every PDP, GTIN coverage, review schema, Google Product Category metafields, and the rest of the signals on our checklist.
What data does ChatGPT use to pick products?
A mix: Shopify's Global Catalog feed (Shopify-direct), publicly available /products.json (for scraped coverage), Product JSON-LD structured data on product pages, aggregate rating schema, GTIN/MPN identifiers for cross-matching, and the metafield-level taxonomy (Google Product Category, native product type).
Why aren't my products showing up in ChatGPT?
Most common reasons, in order: (1) missing Product JSON-LD on PDPs — the biggest single discovery signal; (2) missing GTIN coverage across variants; (3) shallow or missing Google Product Category metafields; (4) headless front-end that broke /products.json or sitemap; (5) boilerplate product descriptions. Our free scan surfaces exactly which of these applies to your store.
Does Shopify tell me if I'm AI-ready?
Not at the catalog-signal level. Shopify confirms your store is Agentic Storefronts-enabled, but does not audit whether your Product JSON-LD validates, whether your GTINs are populated, whether your reviews surface as schema, or whether your theme strips JSON-LD on mobile. That's what CatalogScan does.
How is this different from regular SEO?
Overlapping but not identical. Traditional SEO optimizes for 10-blue-link and featured-snippet rankings; AI shopper readiness optimizes for the data feeds AI agents ingest to compose shopping answers. Shopify store can rank well in Google but fail in ChatGPT Shopping (missing JSON-LD) — or appear in AI answers but not in blue-link search (thin content). Top stores do both.
What about Perplexity and Google AI Mode?
Same underlying catalog — Shopify's Global Catalog surfaces the same data to all three. The PDP-level signals (JSON-LD, OG, reviews) also apply across all three. See our Perplexity setup guide for the Perplexity-specific ranking quirks.
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