How AI shopping agents discover, compare and select products
AI shopping agents are the systems that sit between a shopper's question and an ecommerce store's catalogue: ChatGPT shopping, Perplexity, Gemini, and browser agents that operate a session on the user's behalf. This is the mechanics of what they do — the request pipeline, the data they consume at each stage, and the merchant-side signals that decide which store gets recommended.
An AI shopping agent is a system that interprets a shopper's intent in natural language, then autonomously discovers, filters and compares products across merchants using machine-readable data, and returns or acts on a recommendation.
The pipeline
Implementations differ, but the shape is stable across ChatGPT shopping, Perplexity's product answers, Gemini and browser agents. Each stage narrows the candidate set, and each stage can drop a merchant for a reason the merchant never observes.
| Stage | What the agent does | Merchant signal that decides it |
|---|---|---|
| Intent parsing | Turns "waterproof hiking boots under $180, men's 11" into constraints | None — this is entirely agent-side |
| Discovery | Retrieves candidate merchants and products from an index or live crawl | robots.txt access, sitemap coverage, indexation |
| Extraction | Parses each candidate page into a structured record | Server-rendered Product JSON-LD; microdata and Open Graph as fallbacks |
| Filtering | Drops candidates that fail a hard constraint | price, priceCurrency, availability, size or variant data |
| Comparison | Weighs remaining candidates against the stated priorities | Completeness: brand, identifier, rating, images, description |
| Risk resolution | Checks what happens if the purchase goes wrong | Return window, return fees, delivery estimate, warranty |
| Recommendation | Produces an answer it can justify in one paragraph | Whether your record supports a defensible sentence |
Discovery: access before everything
Agent traffic splits into two categories that merchants routinely conflate. Retrieval crawlers fetch a page because a user asked something right now — OAI-SearchBot, ChatGPT-User, PerplexityBot, Perplexity-User, Claude-User, Amazonbot. Training crawlers collect corpora — GPTBot, Google-Extended, ClaudeBot, meta-externalagent.
Blocking training crawlers is a legitimate business decision. Blocking retrieval crawlers removes the store from live shopping answers. The most common accidental self-exclusion we find is a single blanket rule that does both.
User-agent: OAI-SearchBot Allow: / User-agent: ChatGPT-User Allow: / User-agent: PerplexityBot Allow: / User-agent: Perplexity-User Allow: / User-agent: Claude-User Allow: / Sitemap: https://example.com/sitemap.xml
Extraction: the page is not the product
An agent's view of a product page is the structured record it can extract from it. Everything else — the photography, the size guide, the reviews carousel, the trust badges — is either absent from that record or reduced to a field.
This is why client-rendered schema is fatal. Most agent fetches do not execute JavaScript, so a JSON-LD block injected by a theme script is not a partially-visible product; it is no product at all. In our 120-store sample only 36% exposed machine-readable Product data at fetch time, and the split by platform was stark: 59% of Shopify stores versus 11% of custom builds.
Comparison: completeness beats price more often than merchants expect
When an agent compares two products, missing fields are not neutral. An unknown return policy is weighed as a risk; an unknown brand is weighed as a verification failure; a missing identifier means the agent cannot confirm the listing is the product it thinks it is.
The result is counterintuitive: a well-described product at a higher price frequently wins, because the agent can write a defensible sentence about it. "Free 30-day returns, in stock, ships in two days" is an argument. "Price unknown, availability unknown" is not.
- Hard filters
- price, priceCurrency, availability. Absent means excluded from the constrained set, not ranked lower.
- Trust weights
- brand, gtin or mpn, aggregateRating, review count. These decide close calls between comparable products.
- Risk weights
- hasMerchantReturnPolicy, shippingDetails, warranty. These decide whether the agent is willing to commit.
What this means for a merchant
Nothing on this page requires a replatform. The whole surface an agent consumes is four things: your robots rules, your sitemap, the JSON-LD in your product HTML, and your policy data. All four are editable this week.
The useful first move is to find out which stage you fail at, because the fixes are strictly ordered — completeness work on a catalogue an agent cannot enumerate changes nothing.
Frequently asked questions
- What is an AI shopping agent?
- An AI shopping agent is a system that interprets a shopper's intent in natural language, then autonomously discovers, filters and compares products across merchants using machine-readable data, and returns or acts on a recommendation. Examples include ChatGPT shopping, Perplexity product answers, Gemini and browser agents.
- How do AI shopping agents choose one store over another?
- After hard constraints such as price and availability, they weigh completeness and risk: brand and product identifiers, ratings, and machine-readable return and shipping terms. Products with complete data frequently beat cheaper products with sparse data, because the agent can justify the recommendation.
- Do AI shopping agents execute JavaScript?
- Usually not on the retrieval path. Assume your structured data must be present in the initial HTML response. Product schema injected client-side by a theme or tag manager should be treated as invisible.
- Is an AI shopping agent the same as an AI shopping assistant?
- They overlap. "Assistant" typically describes a conversational surface that recommends and hands off to the shopper; "agent" implies autonomy — the system can take steps, including navigating and in some implementations initiating checkout. The merchant-side requirements are identical.
- How can I test what an AI shopping agent sees on my store?
- Fetch a product page without JavaScript and look for a Product JSON-LD block, then check robots.txt against the retrieval user-agents, then confirm your sitemap lists product URLs. Prefero's free scan performs all three and simulates the comparison stage against a competitor.
See what an AI shopping agent sees
Prefero runs the same pipeline against your store and reports the stage where it drops you.