- AI assistants answer shopper questions like “a linen dress that doesn't wrinkle for a summer wedding” or “a vitamin C serum for sensitive skin”. They recommend products whose pages answer that question with facts.
- Most fashion and beauty product pages describe a mood, not the product. Assistants cannot quote a mood.
- Fix the facts first, then make sure crawlers can reach and read them, then add structured data.
When a shopper asks ChatGPT, Gemini, Claude or Perplexity for a recommendation, the assistant does not browse your site the way a person does. It retrieves a handful of pages, extracts the facts that match the question and names the products it can justify. A product page that says “effortless, elevated, made for every moment” gives it nothing to justify a recommendation with. A page that says “100% European linen, 180 g/m², relaxed fit, model is 177 cm wearing size S, machine wash at 30°C” does.
This guide covers what an AI-ready product page needs, in the order that matters: the content, the access, and the markup. It applies to any platform — Shopify, Salesforce Commerce Cloud, Magento, WooCommerce or a custom stack.
Why product pages decide AI recommendations
Shopper questions to AI assistants are specific. They combine a product type with constraints: occasion, body type, skin type, budget, material, climate, ethics. The assistant needs evidence for each constraint before it names a product. Where does that evidence come from? From three places: your own product pages, third-party sources such as reviews, editorial roundups and marketplaces, and the assistant's prior knowledge of your brand.
You control only the first. That makes the product page the one lever you can pull today, without waiting for press coverage or reviews to accumulate. It is also the page assistants quote when they link a shopper to buy.
Part 1. The facts a fashion product page must state
Write for the question, not the mood board. For apparel, footwear and accessories, these are the facts shoppers ask assistants about most often:
- Material and construction. Exact composition with percentages, fabric weight where it matters (linen, denim, knitwear), lining, finish. “Soft cotton” is not a fact; “100% organic cotton jersey, 220 g/m²” is.
- Fit and sizing. Fit type (slim, relaxed, oversized), the model's height and the size they wear, garment measurements in centimetres and inches, and whether the item runs small or large. Sizing questions are among the most common shopping prompts.
- Dimensions. For bags and accessories: height, width, depth, strap drop, and what fits inside (“fits a 13-inch laptop”, “fits a phone and a cardholder”).
- Use and occasion. Who it is for and when to wear it: office, wedding guest, travel, hiking, layering in winter. Assistants match these words to the question.
- Care. Washing temperature, dry clean only, how to store. Shoppers ask about care before buying knitwear, silk and leather.
- Origin and ethics. Where it is made, certifications (GOTS, OEKO-TEX, RWS, LWG), recycled content. Only claims you can back up.
- Comparisons. How it differs from your other styles, and honest comparisons with what shoppers already know (“a lighter alternative to our classic trench”).
Part 2. The facts a beauty product page must state
Beauty questions are about outcomes and safety. An assistant will not recommend a serum for sensitive skin unless the page gives it grounds to.
- Full ingredient list (INCI) as text, not only inside an image of the packaging.
- Key actives with concentrations where you can state them: “10% niacinamide”, “15% L-ascorbic acid”, “0.3% retinol”.
- Skin type and concerns the product is formulated for, and who should avoid it.
- Claims with evidence. “Non-comedogenic”, “dermatologist-tested”, “fragrance-free”, “vegan”, “cruelty-free” — plus the certification body or the study behind it.
- How to use. Order in a routine, morning or evening, frequency, what not to combine it with.
- Size, price per ml and shade range. For makeup, describe undertones in words; shade names alone mean nothing to a model.
- Texture and finish in plain language: lightweight gel, matte, dewy, buildable coverage.
Part 3. Answer the questions shoppers actually ask
A short Q&A block on the product page is the most direct way to match shopper prompts. Use real questions from customer service, reviews and search data, and answer each in one or two sentences with a fact. For example:
- “Does it run true to size?” — “It runs slightly large; if you are between sizes, take the smaller one.”
- “Can I wear it to the office?” — “Yes. The fabric is opaque and does not crease easily; pair it with a blazer.”
- “Is it safe for sensitive skin?” — “It is fragrance-free and was tested on 50 people with self-declared sensitive skin; patch test first.”
Keep the answers on the page in plain HTML. Hiding them inside a tab that only loads after a click is fine for people, but the text must still be in the page source.
Part 4. Make sure AI crawlers can reach the page
Facts only help if the assistant can fetch them. Three common blockers:
robots.txt rules that shut out AI crawlers
Each AI company runs more than one crawler, and they do different jobs. OpenAI separates GPTBot (model training) from OAI-SearchBot (ChatGPT search) and ChatGPT-User (pages fetched while answering a user). Anthropic and Perplexity follow a similar split. Blocking a training crawler is a business decision; blocking the search and user crawlers removes you from live answers. Read your robots.txt for rules that name these bots, and for a wildcard User-agent: * rule with broad Disallow lines that catches all of them.
Firewalls and bot protection
Many stores block AI crawlers without knowing it: a CDN or bot-management rule returns an error or a challenge page to anything that is not a browser. robots.txt can say “allowed” while the firewall says “no” — in our test of 319 stores, 13% refused at least one real AI crawler. Do not test by faking an AI crawler's user agent from your own computer: bot protection verifies where a crawler really comes from, so an impostor gets refused even when the real crawler is allowed. Test with the AI services themselves, or with a tool that does.
Content that only appears after JavaScript runs
Most AI crawlers read the HTML your server returns and do not run JavaScript the way a browser does. If your description, price, sizes or ingredients are injected client-side, the crawler sees an empty template. View the page source (not the inspector) and search for your product description. If it is not there, ask your developer to render it on the server.
Part 5. Structured data that carries the facts
Schema.org markup in JSON-LD repeats the key facts in a format machines read without interpretation. In our check of 322 fashion and beauty brand sites, 24% of product pages had no Product markup at all, and 32% of home pages had no Organization markup. Google uses it for rich results, and AI systems that build on search indexes benefit from the same clarity. At minimum, each product page should carry a Product with an Offer:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Linen Midi Dress",
"brand": { "@type": "Brand", "name": "Your Brand" },
"sku": "LMD-001-SAND",
"color": "Sand",
"material": "100% European linen",
"size": "XS–XL",
"description": "Relaxed-fit midi dress in 180 g/m² linen. Model is 177 cm and wears size S.",
"image": ["https://yourstore.com/images/lmd-001-sand.jpg"],
"offers": {
"@type": "Offer",
"price": "189.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://yourstore.com/products/linen-midi-dress"
}
}
</script>
Variants (sizes, colours, shades) are best described with ProductGroup and hasVariant, or with one Offer per variant. Add aggregateRating and review only if the reviews are visible on the page. For beauty, put the ingredient list and key actives in the description and in visible text; schema.org has no dedicated ingredient property for cosmetics.
Your home page should also carry an Organization block with your legal name, logo, social profiles and contact details. It tells assistants which entity owns the products and helps them avoid confusing you with similarly named brands.
Part 6. Sitemap and llms.txt
A complete XML sitemap that lists every product URL, referenced from robots.txt, helps every crawler find new and updated products. llms.txt is a newer convention: a short Markdown file at the site root that tells language models what the site is and links to its key pages. It is cheap to add, but no major assistant has confirmed using it as a signal, so do it after the essentials above.
The checklist
| Area | Check |
|---|---|
| Facts | Exact material or full INCI list, measurements, fit or skin type, care or usage, origin and certifications |
| Questions | A short Q&A block with the questions shoppers really ask, answered with facts |
| Access | AI search and user crawlers allowed in robots.txt; firewall lets them through |
| Readable | Description, price and sizes present in the server HTML without JavaScript |
| Markup | Product + Offer on every product page; Organization on the home page |
| Discovery | XML sitemap with all product URLs, listed in robots.txt; optional llms.txt |
Sayrank runs these access, readability and markup checks automatically: it requests your pages as AI crawlers do, reports what they actually receive, and drafts the fixes — including product page rewrites built around the facts above.
Get your products named when shoppers ask AI
Sayrank tracks how ChatGPT, Claude, Gemini and Perplexity answer your shoppers' questions, fixes what stops AI crawlers on your site, and rewrites your product pages so assistants can quote them. Built for fashion and beauty brands.
Frequently asked questions
What makes a product page AI-ready?
Three things: the page states concrete, checkable facts a shopper asks about (material, fit, size measurements, ingredients, care, price, availability); those facts are in the HTML the server returns, not loaded later by JavaScript; and they are repeated in structured data (schema.org Product and Offer) so a machine can read them without guessing.
Do I need llms.txt for AI search?
It helps but it is not decisive. llms.txt is a short map of your site for language models. No major assistant has confirmed it as a ranking signal, so treat it as cheap insurance after the essentials: crawler access, server-rendered text and Product markup.
Does blocking GPTBot remove my products from ChatGPT?
Not by itself. GPTBot collects training data; ChatGPT search results rely on OAI-SearchBot and on search indexes. But many stores block AI crawlers wholesale through a firewall or a wildcard robots.txt rule, which also stops the search crawlers. Check each bot separately.
Is schema markup enough to get recommended?
No. Markup makes your facts machine-readable, but assistants still choose which brands to name based on how well your products answer the question and on what other sources (reviews, editorial coverage, marketplaces) say about you. Markup is the floor, not the ceiling.