Skip to main content

What Shopify checks for agentic readiness.

We ran a Shopify research storefront through shopify.com/agentic-readiness, Shopify's public agentic-readiness scanner. The scanner makes 45 requests across 41 distinct URLs in a 7-second sweep. Below: every URL it touched, grouped by category. This is the surface Shopify is signalling matters for agentic shopping on a Shopify store.

Key takeaways
  1. Shopify's scanner runs a 45-request sweep across 41 URLs. AgenticCommerceBot, the user-agent Shopify's scanner sends, hit 41 distinct URLs in 7.41 seconds: discovery (/.well-known/ucp), every /products/{handle}.json, hreflang sitemap variants, /customer_authentication/login, and a HEAD-404 sniff for FAQ, shipping, delivery, and about pages.
  2. The "agentic shopping" surface area on Shopify is bigger than llms.txt. The scanner also hits /.well-known/ucp, /api/ucp/mcp, every /products/{handle}.json, and a battery of policy/contact/about pages. Pass on the first try means having all of them populated.

What Shopify is telling us is important for agentic readiness.

We ran a research storefront through shopify.com/agentic-readiness, Shopify's public agentic-readiness scanner. The scanner makes 45 requests across 41 distinct URLs in a 7-second sweep. Below: every URL it touched, grouped by category. This is the surface Shopify is signalling matters for agentic shopping on a Shopify store.

What the scanner probes, by category

Pulled from a single 45-request readiness sweep against the research storefront. Same path tested with multiple methods consolidated.
PathMethodStatus
Discovery 5 URLs
/HEAD, GET200
/robots.txtGET200
/llms.txtGET301
/a/llmsGET200
/.well-known/ucpGET200
Sitemaps 6 URLs
/sitemap.xmlGET200
/sitemap_blogs_1.xmlGET200
/sitemap_pages_1.xmlGET200
/sitemap_collections_1.xmlGET200
/sitemap_products_1.xmlGET200
/en-gb/sitemap_products_1.xmlGET200
Catalog 2 URLs
/products.jsonGET200
/collections/[collection]GET200
Products 10 URLs · 5 handles × 2 forms
/products/[product-a]GET200
/products/[product-a].jsonGET429
/products/[product-b]GET200
/products/[product-b].jsonGET429
/products/[product-c]GET200
/products/[product-c].jsonGET429
/products/[product-d]GET200
/products/[product-d].jsonGET429
/products/[product-e]GET200
/products/[product-e].jsonGET429
Policies 3 URLs
/policies/privacy-policyGET200
/policies/shipping-policyHEAD, GET404
/policies/terms-of-serviceGET200
Informational pages 14 URLs
/pages/aboutHEAD, GET404429
/aboutHEAD404
/about-usHEAD404
/pages/about-usHEAD404
/pages/our-storyHEAD404
/pages/companyHEAD404
/pages/contactGET200
/pages/faqHEAD, GET404
/faqHEAD404
/pages/helpHEAD404
/help-centreHEAD404
/pages/shippingHEAD404
/pages/deliveryHEAD404
/deliveryHEAD404
Customer flow 1 URL
/customer_authentication/loginGET302

If you run a Shopify store, this might be the test you have to pass.

Shopify's commerce-readiness scanner runs 31 checks. The 45-request sweep we logged hits the URL-layer subset of them. Here's the short list to verify on your store now, before Shopify or any other agent runs the scanner against it for you.

  • Serve /llms.txt, /agents.md, and /.well-known/ucp with a 200 status code.
  • Populate at least one of /pages/faq, /pages/shipping, /pages/about, /pages/contact.
  • Confirm /products/{handle}.json resolves for every product. The verifier checks every catalog item.
  • Verify the canonical sitemaps (/sitemap.xml, /sitemap_products_1.xml) and any locale-prefixed variants such as /en-gb/sitemap_products_1.xml are reachable.