AI Shopping Agent Readiness Checker
Paste a product page, or your store home page, to see whether AI shopping agents may fetch it and can read its name, price, stock, shipping and returns.
Free · needs a free account · reads public data only
See your results in one click. Sign in with Google, then run any of the 150 free tools.
Continue with Google
AI shopping agent readiness is whether assistants such as ChatGPT search, Perplexity, Google AI Mode and Microsoft Copilot can fetch one of your product pages, read the facts that matter to a shopper and compare them with other stores. Paste a product page, or your store home page, and this free checker looks at it the way those systems do. It reads your robots.txt rules for OAI-SearchBot, ChatGPT-User, PerplexityBot, Perplexity-User, Claude-SearchBot, Googlebot and Bingbot on that exact path. It checks the Product and Offer structured data for name, image, description, brand, identifiers, price, currency, availability and URL, looks for shipping and return policy markup, and confirms that the product name and price are in the HTML before any JavaScript runs. Every finding comes with a plain-English fix, so your store is ready for agentic commerce this holiday season.
How to use the AI shopping agent checker
- 1 Paste a product pageEnter the full address of one product, ideally a best seller. If you paste your home page, the checker follows the first link that looks like a product page, such as /products/ or /product/, and checks that one.
- 2 Check crawler access firstThe access table shows whether each shopping and search agent may fetch the product path under your robots.txt. A blocked search crawler outweighs everything else on the page, because the page cannot be shown at all.
- 3 Read the product summaryThe summary shows the name, brand, price, currency, availability and identifiers found in your structured data. If any of them is missing or wrong, that is what an assistant would read too.
- 4 Fix failures, then warningsStart with failures such as a missing offer, a missing price or a noindex tag, then add identifiers, shipping details and a return policy. Each finding says which property to add.
- 5 Re-check after you publishResults are cached for about ten minutes. Once your theme or app change is live, run the check again and test the markup with Google's Rich Results Test before the holiday rush.
What agentic commerce means for a store
AI assistants increasingly research, compare and recommend products for shoppers. They can only do that with pages their crawlers may fetch and with product facts they can read reliably, which is why crawler rules, structured data and server-rendered prices matter.
What this checker looks at
robots.txt rules for OAI-SearchBot, ChatGPT-User, PerplexityBot, Perplexity-User, Claude-SearchBot, Googlebot and Bingbot on the product path, Product markup (name, image, description, brand, sku, GTIN or MPN), the Offer (price, priceCurrency, availability, url), shippingDetails and hasMerchantReturnPolicy, the name and price in the raw HTML, noindex, canonical, llms.txt and the sitemap.
What AI shopping agents need from a product page
People increasingly ask an assistant to find, compare or shortlist products instead of opening ten tabs themselves. Adobe forecasts that AI traffic to US retail sites, measured as shoppers clicking a link from an AI tool, will rise 130% year over year during the November 1 to December 31, 2026 holiday season. That is a forecast, not a measurement, but it shows why stores are asking whether their product pages are agent-ready.
An assistant answering a shopping request has two jobs. First it needs pages it is allowed to fetch. Then it needs facts it can read reliably: what the product is, who makes it, what it costs, in which currency, whether it is in stock, and what delivery and returns look like. When those facts sit in clean structured data and in the HTML your server sends, a system does not have to guess them from the layout.
Nothing here is a secret formula, and no checker can promise a recommendation. Assistants weigh relevance, price, reviews and trust. What this tool does is remove the technical reasons a good product would be skipped, misread or shown with the wrong price.
Crawler access for shopping and search agents
robots.txt rules apply per path, so a store can welcome crawlers on its home page and still block /products/ or /shop/ with an old Disallow line. The checker reads the rules for the exact product path you enter.
OpenAI says OAI-SearchBot is its crawler for search and that sites which opt out of it are not shown in ChatGPT search answers. Perplexity describes PerplexityBot as designed to surface and link websites in its search results. Anthropic says Claude-SearchBot crawls to improve the relevance and accuracy of search responses, and that blocking it may reduce your visibility. Googlebot and Bingbot matter as well, because Google AI Overviews and AI Mode build on the Google index and Microsoft Copilot builds on Bing. A block on any of these crawlers is reported as a failure.
ChatGPT-User and Perplexity-User are different. They fetch a page when a person asks about it, and both OpenAI and Perplexity say robots.txt rules may not apply to these user-requested visits. A Disallow for them is reported as a warning, because it still signals that you do not want assistants opening your pages on a shopper's behalf.
Training crawlers such as GPTBot and Google-Extended are shown for information only. Blocking them is a reasonable choice. Google states that Google-Extended does not affect a site's inclusion in Google Search and is not a ranking signal, and OpenAI says disallowing GPTBot signals that content should not be used to train its models.
Product and Offer structured data
Google documents merchant listing structured data for pages where shoppers can buy a product. It lists name, image and offers as required on the Product, and description, brand, sku, gtin and mpn among the recommended properties. On the Offer it requires price and priceCurrency, and recommends availability and url. The checker follows those property names.
Missing name, image, offers, price or priceCurrency is a failure, because without them a system cannot say what the product is or what it costs. Missing description, brand, availability or the offer URL is a warning. Missing identifiers is a warning too: sku is your own product code, and a GTIN (the barcode number, such as a UPC or EAN) or an mpn lets a system recognize the same product across different stores. Google notes that the GTIN should be the number, not a URL.
Ratings and reviews are reported for information. If you collect genuine reviews, aggregateRating and review markup describe them, but only mark up reviews that shoppers can see on the page.
- Use one Offer per product page for the price shown, with price as a plain number such as 49.99 and priceCurrency as a three-letter code such as USD.
- Set availability with a schema.org value such as https://schema.org/InStock, and update it when stock runs out.
- Keep the structured data identical to what the page shows. Google advises that structured data should match the visible text.
Shipping and return policies in schema
Delivery cost, delivery time and returns are some of the first questions shoppers ask, especially before the holidays. Google documents two places to mark them up. On the Offer, shippingDetails (OfferShippingDetails) carries shippingRate, shippingDestination and deliveryTime, and hasMerchantReturnPolicy (MerchantReturnPolicy) carries applicableCountry, returnPolicyCategory and merchantReturnDays.
For a policy that covers your whole store, Google also documents store-wide markup on your Organization: hasMerchantReturnPolicy for returns and hasShippingService for shipping. Product-level markup can then override the store policy for exceptions. The checker accepts either location and warns when neither is present. Missing policies are a warning, not a failure, because the product can still be read without them.
Name and price in the HTML before JavaScript
Many store themes and headless front ends build the product page in the browser with JavaScript. Google can render JavaScript, but Google also recommends putting Product structured data in the initial HTML for best results, and warns that dynamically generated markup can make Shopping crawls less frequent and less reliable. Many other crawlers read only the HTML the server sends.
The checker looks for the product name and the structured data price in the page text your server returns, ignoring scripts and styles. It accepts common price formats such as 1,299.00 and 1.299,00. If the name or price only appears after scripts run, render them on the server or pre-render the product template.
Indexing, canonical URLs, sitemaps and llms.txt
A noindex rule in a meta robots tag or an X-Robots-Tag header tells Google to drop the page from search results entirely, and the AI features built on the index lose it with it. The checker fails a product page with noindex. It also looks for a canonical tag: a missing canonical is a warning, and a canonical that points to another URL is reported for information, because that is normal for a variant or a filtered URL.
An XML sitemap that lists your product URLs helps crawlers find new and changed products quickly. The checker reports whether robots.txt names a sitemap or one answers at /sitemap.xml.
llms.txt is reported for information only. It is an emerging convention proposed in September 2024 at llmstxt.org, not an official standard, and Google says you do not need new machine-readable files, AI text files or special markup to appear in its AI features. A short file that points to your main categories, shipping and returns pages is optional.
Product feeds and what this checker cannot tell you
Structured data on the page is one way to describe products. Google Merchant Center also accepts a product data feed, with required attributes such as id, title, description, link, image_link, price and availability. A feed can keep prices and stock current for Google's shopping surfaces. This checker does not read feeds; it only reminds you the option exists.
The checker cannot see inside any assistant, so it cannot tell you whether your products are already recommended. Look for referral visits from chatgpt.com, perplexity.ai and copilot.microsoft.com in your analytics, check Google Search Console, and ask the assistants about your own product category. It also does not judge your prices, reviews or product photos, which often decide which store gets recommended.
Sources
- Google Search Central: Merchant listing (Product, Offer) structured data
- Google Search Central: Product snippet structured data
- Google Search Central: Merchant return policy (Organization) structured data
- Google Search Central: Merchant shipping policy (Organization) structured data
- Google Search Central: AI features and your website
- Google Search Central: Google common crawlers (Google-Extended)
- Google Search Central: Block indexing with noindex
- Google Merchant Center Help: Product data specification
- OpenAI: Overview of OpenAI crawlers (OAI-SearchBot, ChatGPT-User, GPTBot)
- Perplexity: Perplexity crawlers (PerplexityBot, Perplexity-User)
- Anthropic: How site owners can manage Anthropic's crawlers (Claude-SearchBot)
- llmstxt.org: The /llms.txt proposal (September 2024)
- Adobe: 2026 US holiday shopping forecast, including AI traffic (September 28, 2026)
Examples you can copy
Product and Offer markup with shipping and returns
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Trail Runner 2 Waterproof Shoe",
"image": ["https://www.example.com/img/trail-runner-2.jpg"],
"description": "Lightweight waterproof trail running shoe with a grippy outsole.",
"brand": { "@type": "Brand", "name": "Example Outdoors" },
"sku": "TR2-BLK-10",
"gtin13": "0123456789012",
"offers": {
"@type": "Offer",
"url": "https://www.example.com/products/trail-runner-2",
"price": 129.00,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"shippingDetails": {
"@type": "OfferShippingDetails",
"shippingRate": { "@type": "MonetaryAmount", "value": 0, "currency": "USD" },
"shippingDestination": { "@type": "DefinedRegion", "addressCountry": "US" },
"deliveryTime": {
"@type": "ShippingDeliveryTime",
"handlingTime": { "@type": "QuantitativeValue", "minValue": 0, "maxValue": 1, "unitCode": "DAY" },
"transitTime": { "@type": "QuantitativeValue", "minValue": 2, "maxValue": 5, "unitCode": "DAY" }
}
},
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"applicableCountry": "US",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"merchantReturnDays": 30,
"returnMethod": "https://schema.org/ReturnByMail",
"returnFees": "https://schema.org/FreeReturn"
}
}
}
</script>
robots.txt that lets shopping and search agents in and blocks a training crawler
User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
User-agent: GPTBot
Disallow: /
Sitemap: https://www.example.com/sitemap.xml
Server-rendered name and price that match the schema
<h1>Trail Runner 2 Waterproof Shoe</h1>
<p class="price">$129.00</p>
<p class="stock">In stock, ships in 1 business day</p>
Common mistakes to avoid
Blocking every AI bot with one rule
A Disallow under "User-agent: *" added to stop training crawlers also stops OAI-SearchBot, PerplexityBot and Claude-SearchBot unless they have their own groups. Name the training crawlers you want to block and leave the search crawlers allowed.
Showing a sale price the schema does not have
If the page says $99 but the Offer says 129.00, systems may show the wrong price or distrust the listing. Update both from the same source.
Loading the price with JavaScript only
Crawlers that read raw HTML see no price at all. Render the price on the server and keep Product markup in the initial HTML.
Leaving availability as InStock all year
An assistant that recommends an item you cannot ship costs you a customer. Keep availability in sync with your inventory.
Testing only the home page
Agents compare individual products. Check your best sellers and one product from each template your store uses.
Frequently asked questions
No tool can promise that. Assistants choose products on relevance, price, reviews and trust. Passing the checks removes the technical reasons a good product would be skipped or misread.
Yes. If the page has no Product markup, the checker follows the first link that looks like a product page, such as /products/ or /product/, and checks that. For a specific product, paste its address.
It is the idea of AI assistants and agents researching, comparing and, in some cases, buying products on a shopper's behalf. For a store, the practical side today is making sure those systems may fetch your product pages and can read accurate product, price, stock, shipping and return details.
Allow OAI-SearchBot in robots.txt, since OpenAI says sites that opt out are not shown in ChatGPT search answers. Then publish accurate Product and Offer structured data, keep the name and price in the server-rendered HTML, and mark up shipping and returns. This checker tests each of those.
Yes, if you do not want your content used for model training. OpenAI describes GPTBot as its training crawler, separate from OAI-SearchBot, and Google says Google-Extended does not affect inclusion or ranking in Google Search. The checker reports them for information only.
Google lists them as recommended, not required, for merchant listings, and some products, such as handmade items, have no GTIN. Add them where they exist: they help systems match the same product across stores.
No. It is an optional, emerging convention proposed in 2024, not a standard, and Google says no special AI text files are needed for its AI features. Crawler access, structured data and server-rendered content matter far more.
Google Search Central documentation for merchant listing, product snippet, return policy and shipping policy structured data; Google's crawler and AI features documentation; OpenAI's crawler documentation; Perplexity's crawler documentation; Anthropic's crawler help article; the llms.txt proposal; and Google Merchant Center's product data specification. They are linked in the Sources list on this page.
Free website audit
See how your site scores, free
Speed, SEO, DNS, email (SPF/DKIM/DMARC) and security in one scan, with a prioritised fix list.