AgentReadyAI visibility appCaffeine & CommerceShopify agency
Caffeine and Commerce
Caffeine and Commerce
By Dylan HuntJune 13th, 2026shopifymarketsstructured-data

Shopify Markets and AI Agents: Does Your Structured Data Follow the Currency?

Shopify Markets and AI Agents: Does Your Structured Data Follow the Currency?

If you sell internationally on Shopify, you almost certainly use Markets. It is the right tool: one store, localized prices, currencies, and often languages, served per region without running separate stores. The shopper in Toronto sees Canadian dollars, the shopper in Paris sees euros, and Shopify handles the conversion and the routing.

Here is the part almost nobody checks. The price a shopper sees is localized. The structured data an AI agent reads usually is not. That gap is invisible until an assistant quotes the wrong number back to a buyer, and by then the trust is already spent.

I want to walk through exactly what happens on each market URL, why the mismatch occurs, and what you can actually do about it right now. Facts checked June 2026 against Shopify's Markets and internationalization docs.

What Markets actually changes per region

When you publish a market, Shopify can vary three things for that region: the currency and price (through your markets pricing and rounding rules), the language (through translated resources), and the URL the shopper lands on. Most stores end up with country or language path prefixes like /en-ca or /fr, and Shopify advertises every published variant of a page to search engines with hreflang alternate links in the HTML head:

<link rel="alternate" hreflang="en-ca" href="https://example.com/en-ca/products/scrunch-bodysuit">
<link rel="alternate" hreflang="fr"    href="https://example.com/fr/products/scrunch-bodysuit">
<link rel="alternate" hreflang="en"    href="https://example.com/products/scrunch-bodysuit">

Those alternates are the map. They tell Google, and any crawler that bothers to read them, that the same product exists at several addresses, each meant for a different audience. An AI agent that discovers your store can follow them to a market URL and read the page there.

Where the structured data stops following

Now look at what that agent reads when it lands on the French URL. The visible price on the page is in euros, because Shopify localized it at render time. But the Product JSON-LD that most themes emit is built from your base market, so the offers block frequently still says something like this:

{
  "@type": "Offer",
  "price": "70.00",
  "priceCurrency": "USD",
  "availability": "https://schema.org/InStock"
}

The shopper sees the localized price. The machine reads the base one. An assistant comparing options across stores will take the number it can parse, which is the structured one, and it will be wrong for that buyer. The page looks fine to a human and lies to a robot.

This is not a theme bug, exactly. Per-market structured data is genuinely hard: the JSON-LD is generated once, the price is localized later, and reconciling the two means either rendering different markup per market URL or carrying every market's price in a form the page can select at view time. Most themes simply do not attempt it, so the base market wins by default.

Why this matters more every month

For years the only thing reading your structured data was Google, and Google is forgiving: it cross-checks markup against the visible page and against your Merchant Center settings, and a currency mismatch usually just costs you a rich result quietly. An AI shopping assistant is less forgiving in a way that shows. It does not rank you, it answers for you. When a shopper asks an assistant "how much is this in euros," the assistant reads whatever the page made machine-readable and says it out loud. A wrong number there is not a missed impression, it is a wrong answer attributed to your brand.

The stores winning early in agentic commerce are the ones whose machine-readable layer matches what the shopper sees, in every market they sell to. That is a small club right now, which is exactly why it is worth joining.

What to do today

You cannot flip a switch in Shopify that localizes your structured data per market. But you can close most of the risk:

  • Audit what agents read on each market URL. Open your published markets, view source on a product page in each, and compare the offers price and currency in the JSON-LD against the visible price. If they disagree, you have the gap. The free AI-readiness checker reads the hreflang alternates and the markup for you so you do not have to do it by hand.
  • State currency and region explicitly in market-variable content. Anywhere you write prices into descriptions, FAQs, or shipping copy, name the currency and the region. "$70 USD" travels better than "$70," and an answer like "ships free within Canada" is safer than "ships free."
  • Keep your base-market structured data correct first. A clean, valid base Offer is the foundation. Per-market correctness is a layer on top of it, and there is no point localizing markup that is wrong to begin with. My product schema guide covers getting the base right.
  • Treat per-market structured data as the next step, not a missing setting. It is on the roadmap for the tooling that maintains your markup, including ours. The honest position today is detection and clarity, not a claim that the gap is already solved.

How we handle it

AgentReady, the free app we build, already reads your storefront the way a crawler does and flags when a store is selling into multiple markets while its structured data stays single-market, so you can see the gap instead of guessing at it. That detection is free, on every plan, and it is the first half of the fix: you cannot correct what you cannot see. Per-market structured data, where the markup carries each market's real price and the page selects the right one at render time, is the half we are building next. I would rather tell you exactly where the line is than oversell it.

If you sell in more than one currency, this is worth ten minutes of your week. Run the checker against one product on each of your market URLs and see whether the machine and the shopper are reading the same price. If they are, you are ahead of most of the catalog. If they are not, now you know, and knowing is most of the work.

For the bigger picture on how agents discover and read Shopify stores, the agentic commerce guide is the place to start, and what an llms.txt file does covers the store-level index that sits above all of this.

Make your store agent-ready

Get found and recommended by AI shopping assistants.

AgentReady adds Schema.org structured data, an llms.txt directory, and an AI-readability audit to your Shopify store, so ChatGPT, Perplexity, and Google can understand and recommend your products. Free for stores under 500 products.

Comments

Every comment here comes from a verified email. Write yours, confirm from your inbox, and it's live.

Loading comments…

Leave a comment

ShareXLinkedInFacebook

Written by Dylan Hunt, Founder, Caffeine and Commerce. We build Shopify stores that rank and that AI agents can read. Have a project? Get in touch.