By Steve Merrill, Founder of WRKNG Digital — 2026-07-09
What is structured data for AI shopping recommendations?
Structured data is code you add to a product page that tells a machine exactly what it's looking at. Price. Brand. SKU. Availability. Star rating. AI shopping assistants like ChatGPT and Perplexity read that code to decide which products to recommend when someone asks them what to buy.
No structured data, no clean answer for the AI to pull. Your product becomes a guess.
I've run this test in more than 40 store audits. The stores that get named in AI answers almost always have complete Product markup. The ones that get skipped usually have broken markup or none at all.
Why can't AI assistants just read my product page like a human?
Because a human sees a price and knows it's a price. A machine sees a string of numbers next to other numbers and has to guess which one you charge. Structured data removes the guess by labeling each fact in a format the AI already trusts.
That format is JSON-LD, and Schema.org defines the vocabulary. It's the same standard Google has used for rich results for years. AI assistants lean on it now because it's cheap to parse and hard to fake.
Here's the part most store owners miss. AI models don't crawl your whole catalog every day. They pull structured facts, cache them, and cite them. If your facts aren't structured, you're not in the cache.
Which structured data fields matter most for Shopify products?
Start with the Product type and fill every field you can. The ones that move the needle: name, description, brand, sku, gtin, image, and a nested Offer with price, priceCurrency, and availability. Add AggregateRating and Review when you have them.
Google's own product structured data documentation lists these as the fields that qualify a page for merchant listings. Same fields AI assistants read. Fill them out and you cover both.
A few notes from the field:
- gtin and sku. These are how an AI matches your product to a known item. Skip them and you look like a no-name listing.
- availability. Set it to InStock or OutOfStock with the real value. An AI won't recommend a product it thinks is sold out.
- price and priceCurrency. These must match the live page to the cent. Mismatches get your markup flagged and ignored.
- AggregateRating. A 4.7 with 300 reviews gives the AI something to quote. That's social proof it can hand to the shopper.
Default Shopify themes ship partial markup. Some output a bare Product type with no Offer node. Not enough.
How do I add structured data to my Shopify products?
You add a Product JSON-LD block to your product template and fill it with Liquid variables so every product renders its own facts. Here's the order I use on client stores.
- Audit what you have. Run three product URLs through Google's Rich Results Test. Note every warning and missing field.
- Build the full Product block. Include name, description, brand, sku, gtin, image, and a nested Offer with price, priceCurrency, and availability.
- Add ratings. Pull star ratings and review counts from your review app (Judge.me, Yotpo, Loox) into AggregateRating and Review nodes.
- Inject it into the theme. Put the JSON-LD in the product template using Liquid so the values come from live product data, not hardcoded text.
- Validate everything. Re-test in the Rich Results Test and the Schema.org validator. Confirm price and availability match the live page.
- Publish an llms.txt and watch. List your top product and collection URLs in an llms.txt file at your root, then track whether ChatGPT and Perplexity start naming your store.
Two hours of work for a store with a handful of product types. The Liquid template does the heavy lifting once it's built.
One warning before you ship it. Don't let two apps write competing Product blocks on the same page. I've seen stores with three separate schema apps all firing at once, each with a slightly different price. The AI sees the conflict and throws out every version. Pick one source of truth and delete the rest.
Does structured data actually get products cited by ChatGPT and Perplexity?
Yes, but only when the markup is complete and matches the page. AI assistants cross-check your structured data against your visible content. When they line up, the AI trusts the facts and cites them. When they don't, it drops you.
We ran this on a client's outdoor gear store last quarter. Before: bare Product markup, no Offer node, no ratings. The store showed up in zero AI shopping answers we tested. After we added full markup and validated it, Perplexity started citing three of their product pages inside two weeks.
OpenAI has been clear about where this is heading. Their shopping and checkout work in ChatGPT relies on structured product data to surface and compare items. Clean markup is the price of entry.
The information layer of shopping is moving inside the AI. The transaction layer is following it. Structured data is how you stay visible in both.
Perplexity works the same way. It pulls structured facts, compares them across stores, and hands the shopper a short list with citations. If your Offer node is missing a price or your availability is stale, you don't make the list. The store with clean markup does, even if your product is better.
That's the uncomfortable part. Being the better product stopped being enough. Being the readable product is what gets you in front of the buyer now.
What's the biggest mistake stores make with product schema?
They set it and forget it. Prices change. Stock runs out. A sale ends. The markup keeps reporting the old numbers, and the AI catches the mismatch.
I made a version of this mistake myself years ago on my own clothing brand. We had markup that looked fine on launch day and rotted quietly for months. Data does not lie, and stale data tells the AI you're careless.
Wire your schema to live product fields. Validate after every theme change. Boring work. It's also the work that gets you cited.
Frequently asked questions
What structured data format should I use for Shopify products?
JSON-LD. It's the format Schema.org and Google both recommend, and it sits in a script tag separate from your visible HTML, so it's easy to add and easy to validate. Use the Product type with a nested Offer.
Do I need an app to add structured data to Shopify?
No. You can add JSON-LD directly in your product template with Liquid. Apps like Schema Plus or JSON-LD for SEO speed it up, but a developer can build a cleaner, fuller block by hand in an afternoon.
Will structured data help me rank in Google too?
Yes. The same Product fields that AI assistants read qualify your pages for Google merchant listings and rich results. You build it once and get both AI citations and richer Google snippets.
How do I know if my product schema is working?
Validate it in Google's Rich Results Test and the Schema.org validator first. Then test real shopping questions in ChatGPT and Perplexity over a few weeks and watch whether your product pages get named and linked.
How often should I check my product structured data?
After every theme update and every pricing or inventory system change. At minimum, re-audit your top products monthly. Mismatched price or availability is the fastest way to lose an AI citation.
Make your Shopify products machine-readable
AI assistants are already recommending products to your customers. The only question is whether they can read yours.
If you want help auditing your product markup and getting your store cited by ChatGPT and Perplexity, see how WRKNG Digital builds agentic commerce for Shopify stores.

