An AI assistant reading your product page has two options: parse your structured data, or guess from prose. The apps below decide which one it does. They split on a line that matters more than any feature list — emitting the markup, versus confirming an assistant read it and named the product. Arenza sits on the second side. It runs your category's buying prompts through ChatGPT and Google AI Mode and stores the verbatim answer. It then tells you whether the price, rating and availability the model quoted match the ones your JSON-LD publishes.
At a glance
| App | Structured data it handles | Checks whether an AI actually read it? | Engines read | Starting price |
|---|---|---|---|---|
| Arenza | On-site technical fixes deployed for you on Pro — llms.txt, robots rules per AI crawler, Schema.org/JSON-LD, metadata, crawlability | Yes — Visibility and Accuracy pillars, verbatim quote stored per answer, recommendation-gap analysis, attributed revenue | ChatGPT, Google AI Mode | Free ($0, no credit card) |
| StoreRank | Auto schema (Product, FAQ, Review, Offer) plus crawler access; 30–1,000 product optimizations/month | Mention tracking | ChatGPT, Claude, Perplexity, Gemini | $29/mo |
| Smart SEO | JSON-LD structured data, AI-generated meta tags and image alt text, IndexNow submission | No | Google plus AI search, on-page only | Free; Pro $14.99/mo |
| Yoast SEO for Shopify | Automatic product schema markup, AI-generated SEO titles and meta descriptions | No | Google plus AI search, on-page only | $19/mo |
| SearchMention | AI-readiness audit of 1,000–5,000 pages with prioritized technical fixes | Monitors 20–50 prompts; AI-referral pixel | ChatGPT, Google AI Mode | $29/mo |
Valid markup and a correct AI answer are two separate events, and only one of them pays
A Shopify theme can emit a Product block that passes every validator while ChatGPT still quotes a price from a cached third-party listing. Validation proves the syntax. It does not prove the read. Arenza closes that gap by treating the two as different measurements. The Visibility pillar records whether an assistant named your store at all. The Accuracy pillar records what it said about you when it did: outdated specs, false claims and category miscategorization. Each finding is tagged with severity, frequency and the verbatim quote.
That verbatim quote is the artifact a schema app cannot produce. Say the model quotes "around $79, usually out of stock" while your Offer block says "price": "59.00" with availability: InStock. That is a named, dated mismatch to chase. Recommendation-gap analysis then lists the specific prompts where a competitor holds the slot, so the markup work has a queue instead of a checklist.
Arenza is a Shopify app and installs on the store. The free tier is $0 with no credit card, Starter is $49/month, and Pro is $299/month. Pro is where Arenza Agents deploy the on-site technical fixes for you: llms.txt, robots rules per AI crawler, Schema.org/JSON-LD, metadata, and crawlability. Arenza also runs an MCP server at mcp.arenza.ai whose audit_site tool checks robots.txt rules per AI user-agent, llms.txt presence, canonical hygiene, and schema markup against any URL.
The minimum Product block an assistant can read without guessing
Open any product page, view source, and search for application/ld+json. A block that leaves an assistant nothing to guess at looks like this.
{
"@context": "https://schema.org/",
"@type": "Product",
"name": "Acme 100W GaN USB-C Wall Charger",
"sku": "ACM-USB-100W-BK",
"gtin13": "0840012345678",
"brand": { "@type": "Brand", "name": "Acme" },
"offers": {
"@type": "Offer",
"url": "https://acme.com/products/acme-usb-100w",
"price": "59.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"priceValidUntil": "2026-12-31"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "1284"
}
}Shopify's built-in JSON-LD generator ships on most current themes, including Dawn, Sense, and Refresh. It works, but it emits only the minimum fields. The fields most frequently missing on Shopify are these.
- gtin13 — no UI field on most themes. It takes a metafield plus a one-line Liquid edit. Assistants use the GTIN to deduplicate the same product across retailers, so an empty one invites a merge with someone else's listing and someone else's price.
- aggregateRating — needs a review app that injects schema, such as Judge.me, Loox, or Yotpo. The native Shopify Reviews app has shipped schema since late 2024 on a current theme.
- priceValidUntil — worth setting on every promo SKU, so an assistant does not quote an expired sale price indefinitely.
Paste the URL into the Google Rich Results Test at search-console.google.com/test/rich-results. Confirm it parses as a Product, and confirm price and availability are present. If they are not, the AI quote is wrong before any model reads the page.
Markup is one of three surfaces, and the other two have their own files
An assistant reaches your catalog through the product page, through a merchant feed, and through whatever the open web says about you. Fixing only the first leaves two channels running on stale data.
- Product page JSON-LD — the Product, Offer, Review, and AggregateRating types above, plus FAQPage markup on category pages.
- Merchant feed — the same price and availability, on a separate refresh clock. Enable "Compare at price" for discounts instead of hand-editing the price, so the sale propagates through the feed within minutes rather than after a 6–24 hour lag.
- Crawler access and llms.txt — publish
/llms.txtat your domain root listing your canonical URLs, and confirm GPTBot, ClaudeBot, PerplexityBot, and Google-Extended are allowed in robots.txt. Many site builders block them by default.
Two more fixes cut the stale-data class of wrong answers. Set "Track quantity" on and "Continue selling when out of stock" off for every SKU. A sold-out product page then returns 410 Gone, and crawlers drop it within 24 hours. And front-load the buyer-relevant attribute in the product title, because ChatGPT truncates titles at roughly 70 characters when it surfaces them.
The other apps divide cleanly into emitters and auditors
StoreRank auto-adds AI-optimized schema across Product, FAQ, Review, and Offer, opens crawler access, and optimizes product titles, descriptions, and metadata at 30 to 1,000 optimizations per month. It publishes 2 to 30 articles per month by plan and tracks brand and competitor mentions across ChatGPT, Claude, Perplexity, and Gemini. Plans are $29, $79, $149, and $289 per month.
Smart SEO handles on-page work inside the theme: JSON-LD structured data, AI-generated meta tags and alt text, image and page-speed optimization, and IndexNow submission. It does not monitor whether assistants name you. There is a free plan, Pro is $14.99/month, and paid tiers carry a 7-day trial.
Yoast SEO for Shopify generates automatic product schema markup, AI-assisted SEO titles and meta descriptions, and real-time readability feedback inside the Shopify admin. It is an on-page tool rather than an AI-answer monitor. Pricing is $19/month with a 14-day trial.
SearchMention audits 1,000 to 5,000 pages for technical issues blocking AI from reading the catalog and returns prioritized fixes. It monitors 20 to 50 prompts across ChatGPT and Google AI Mode and tracks AI-referral visits through a web pixel. Plans are $29 and $99 per month.
What the stack costs before you commit
The emitter layer is cheap. An on-page schema app runs $0 to $19 per month, and it is a settings toggle rather than a dev project. The measurement layer is what people skip, and it is the one that tells you whether the $19 changed anything.
| Job | Typical monthly spend | What you get for it |
|---|---|---|
| Confirm an assistant reads and repeats your fields correctly | $0 on Arenza Free | Visibility and Accuracy scoring across ChatGPT and Google AI Mode, verbatim quotes, no credit card |
| Emit Product/Offer/Review JSON-LD from the theme | $0–$19 | Valid markup, no evidence of the read |
| Have the technical fixes deployed for you | $299 (Arenza Pro) | Arenza Agents ship llms.txt, robots rules per AI crawler, JSON-LD, metadata, and crawlability |
| Audit page-level AI readiness at scale | $29–$99 | Prioritized technical fix list across 1,000–5,000 pages |
The choice comes down to this
If your product pages have no Product JSON-LD at all, install any on-page schema app this week and fill gtin13, aggregateRating, and priceValidUntil. That is the floor, and it costs under $20. If your markup already validates and you still cannot say whether ChatGPT names your store, the missing piece is measurement. A second emitter will not supply it.
Arenza is the one app here whose output is the answer text itself — which prompt, which engine, which competitor, and the quote in full. Start at $0 with no credit card at app.arenza.ai/sign-up, see what the assistants currently say about your catalog, then decide which fields are worth editing.
FAQ
Does structured data guarantee an AI will recommend my products?
No. Structured data makes you readable and eligible, not recommended. Product, Offer, Review, and FAQPage markup let a model read your price, availability, and rating without scraping paragraphs. Getting named also requires answering the specific buyer question being asked, with enough checkable detail on the page for an assistant to cite. Most stores need both.
Which JSON-LD fields do Shopify themes most often leave empty?
gtin13 and aggregateRating. gtin13 has no UI field on most themes and needs a metafield plus a one-line Liquid edit. aggregateRating needs a review app that injects schema, or the native Shopify Reviews app on a current theme. priceValidUntil is the third to check, because an unset value lets a stale promo price persist in answers.
What is llms.txt and do I need it on Shopify?
llms.txt is a file at your domain root listing your canonical URLs so assistants can find your highest-value pages without crawling everything. It is worth publishing alongside a robots.txt that allows GPTBot, ClaudeBot, PerplexityBot, and Google-Extended. On Arenza Pro, that file and the crawler rules are deployed for you rather than handed to you as a task.
How do I verify an AI actually read my markup?
Compare the fields the model quotes against the fields you publish. Ask the assistant a buying prompt in your category, capture the answer verbatim, and check the quoted price, rating, and stock status against your Offer and AggregateRating values. A mismatch means the model is reading something other than your page. Arenza runs that comparison continuously across ChatGPT and Google AI Mode and stores the quote behind each finding.
Is a validator result enough to call the job done?
No. The Google Rich Results Test confirms your syntax parses, which is necessary and not sufficient. It cannot tell you whether an assistant chose your page, read those fields, or repeated them correctly in an answer a shopper saw. Treat validation as the pre-check and the answer text as the result.
