ChatGPT gets most prices right. The misses are the ones that cost sales.
Your Black Friday customers are deciding who to buy from now. Nearly 60% of shoppers start their holiday shopping by early November (Infobip), and about 40% of gift spending lands in the five days from Thanksgiving to Cyber Monday (PwC). More of that shortlist is built by asking an AI assistant: 29% of shoppers plan to use AI somewhere in their shopping this season, up from 22% last year (PwC).
So we ran the AI Retail Readiness Study. Between 22 and 25 September 2026 we asked ChatGPT one question about a real product at 51 of Australia's most-loved retailers: what does it cost on your Australian site, and is it in stock near Richmond, Victoria? Then we checked every answer against the live product page within minutes. ChatGPT got the price right 43 times out of 51. It never once confirmed store stock from a retailer's own data, and logged out, most of its answers came with a paid ad for someone else.
The wrong answers follow a pattern. None came from the product page. They came from a sale page, a range or collection page, or a price comparison site, and two quoted the price from before a sale. That is the error most likely to multiply over Black Friday, when prices change on thousands of products within hours.

How we ran the study
We used an independent sample so the results couldn't be tilted towards any retailer: Power Retail's Most Loved Retailers Report 2025, spread across the whole ranking. For each retailer we picked a real product, named it exactly as it appears on the site, and asked ChatGPT:
"What is the current price of this product on your Australian website, and is it in stock near Richmond VIC 3121?"
| Sample | 51 retailers from Power Retail's Top Ranked Retailer Index of 70: 16 from the top 17, 26 from ranks 18 to 60, 9 from the bottom 10 |
| Assistant | ChatGPT with web search on, a new chat for every retailer. 41 runs signed in with reasoning set to High, 10 runs logged out |
| Extra runs | 8 logged-out re-runs of 7 earlier questions (Big W twice), to see the shopping cards and ads a shopper who isn't signed in gets. One, Microsoft, wasn't captured |
| Extra sites | 18 more retailers, checked logged out. We read each product page from a screenshot and asked ChatGPT the same question. These are reported separately |
| Product | One real product per retailer, named exactly as it appears on the site |
| What counted as true | The live product page, read within minutes of each answer and re-read when the answer disagreed |
| Also checked | The page as a crawler receives it before JavaScript runs, the product schema in it, and robots.txt for 68 of the 70 retailers |
Together with the 18 extra sites, that's 69 of the 70 retailers in the index. The 70th, MyDeal, no longer trades.
Two runs couldn't be scored on price: Dan Murphy's price moved during the day, and City Chic only listed the product on its US storefront. So the price score is 43 of 51, or 43 of 49 (88%) if you leave those two out. Three online-only retailers (Booktopia, Princess Polly and Pet Circle) were asked without the postcode, and their stock answers are left out of the stock count.
The headline numbers
| Measure | Result |
|---|---|
| Price correct | 43 of 51 (84%), or 43 of 49 (88%) once the two unscorable runs are set aside |
| Price wrong | 6 |
| Wrong answers where the retailer's own schema had the right price | 6 of 6 |
| Stock answers that confirmed a product in a specific store | 0 of 48 |
| Stock questions ChatGPT declined to answer | 41 of 48 |
| In-stock products reported as unavailable | 3 |
| Answers where a comparison site replaced the product page | 3 we could score, all wrong |
| Answers where a sister site or another country's store supplied the price | 4, none with a correct Australian price |
| Logged-out answers carrying a paid ad | 10 of 17 in the main test, 14 of 16 on the extra sites |
| Ads for the same sneaker model from another seller | 5 |
| Signed-in answers with a card naming a different retailer | 5 of the first 36 |
| Extra sites, checked from screenshots | 18 attempted, 16 scorable: 10 right, 4 wrong, 2 withheld |
| Retailers whose sites wouldn't load for our browser | 6 |
Price: what ChatGPT gets right, and where it slips

The misses came from somewhere other than the product page
Six answers got the price wrong. In all six, the product page and the retailer's own schema had the right price.
| Retailer | Product page | Price in the retailer's schema | ChatGPT said | Where the wrong number came from |
|---|---|---|---|---|
| Adore Beauty | $27.20 | 27.20 | A$25.50 | The retailer's Mid-Season Sale page |
| Appliances Online | $682 | 682 | A$742 | The retailer's Birthday Sale listing |
| Pet Circle | $10.99 | 10.99, InStock | A$8.79, "out of stock" | The retailer's brand range page |
| Petstock | $49.99 | 49.99 | A$49.00 | "A recent Australian price comparison", not linked |
| Pillow Talk | $20.95, 40% off, sale live | 20.95 | AU$34.95 | A collection page and an unidentified listing, most likely from before the sale |
| Platypus | $109.99, was $169.99, sale live | 109.99, InStock, only after JavaScript runs | A$169.99 | BuyWisely, a price comparison site |
The errors go both ways. Three answers were higher than the real price, so the shopper is told you cost more at the moment they're building a shortlist, and may not come at all. Three were lower, so the shopper arrives expecting a price the till won't charge. That turns into a price-match request, a complaint or an abandoned cart.
Two quoted the price from before a sale. Pillow Talk's answer gave full price for a pillowcase that was 40% off, and Platypus' gave full price for sneakers that were $60 off. With Black Friday pricing about to change on thousands of products at once, this is the error most likely to repeat.

The wrong price outlived the sale. On 22 September, Appliances Online's product page showed $682 and ChatGPT said A$742, the price on the retailer's Birthday Sale listing, a sale ChatGPT itself said ran until 23 September. On 26 September we checked again. The product page and its schema had moved to $845. Asked the same question logged out, ChatGPT still said A$742, "down from an RRP of A$999", citing Appliances Online. The first answer was $60 too high. Four days later the same number was $103 too low.


ChatGPT can choose between two prices, but it can't know which page you forgot to update. On Cotton On it noticed its copy of the product page was older than the listing and picked the newer price. On Adore Beauty it made the same comparison and picked the wrong one.
"The individual product page still shows A$19.99 in a slightly older crawl, so the A$15 price appears to reflect the newer promotion."
ChatGPT on Cotton On, correct
"I found an Adore category snapshot showing $27.20, while the more recent sale page and product/category page show $25.50."
ChatGPT on Adore Beauty, wrong
Every wrong answer had the right price in the retailer's own schema
Structured product data is usually sold as the fix for AI accuracy. In this study it wasn't. In all six wrong answers, the schema on the product page carried the correct price, and ChatGPT used a different source anyway. It worked the other way too: Mecca's schema marks a discontinued product as InStock and Repco's declares a price of 230 for a charger the page sells at $143.20, and both times the answer followed the visible page correctly.
| Product schema on the page | Retailers | Price correct |
|---|---|---|
| None, before or after JavaScript | 7 | 7 |
| Only after JavaScript runs | 12 | 10 |
| Partial (price or availability missing) | 8 | 8 |
| Complete in the page as delivered | 17 | 12, with 3 wrong and 2 not scorable |
| Other (fetch refused, contradicting the page, microdata only, or not measured) | 7 | 6 |
All seven retailers with no product schema got a correct answer: Harris Scarfe, Witchery, Macpac, Country Road, Cotton On, Priceline and Adairs. With samples this small, read the table as "schema didn't predict accuracy", not as "schema hurts".
Where schema did help: detail. Princess Polly publishes each size as its own variant with its own price and stock, and it was the only answer in the study whose size-by-size stock matched the schema variant for variant: seven sizes, seven variants.
"AU sizes 4, 6, 8, 10, 12, 14 and 16 all currently listed as in stock."
ChatGPT on Princess Polly
ChatGPT usually reads pages that depend on JavaScript
Twelve retailers only show product schema after JavaScript runs, and ChatGPT got the price right for ten of them, including Target, whose page carries 34 characters of visible text before JavaScript runs. The two misses, Appliances Online and Platypus, came from a sale page and a comparison site. Separately, at Pet Circle, where the price and cart button only load with JavaScript, it appears to have read the page before they appeared and said the product was out of stock.
Stacked offers get dropped or mixed up
When an offer's conditions sat on the product page, the answer usually carried them through, including member prices, checkout discounts and end dates hidden behind an info icon.
| Retailer | What the page showed | What ChatGPT carried through |
|---|---|---|
| Adairs | RRP, sale and member price for each size | All three, exact and labelled |
| Macpac | A$199.99, or A$129.99 for members | Both, with the member condition |
| T2 | $39.00, 30% off matcha at checkout until 30 September | $39.00, the effective $27.30 and the end date, which sits behind an info icon |
| Rebel, BCF, Supercheap Auto | Sale price, end date, price after the sale | All of it, from schemas with no price field |
| Baby Bunting | $594.15, was $699, ends 4 October | All three |
| Big W | $99, rising to $109 after the promotion | Both prices |
| Anaconda | Sale $219, full price $449.99 | Both |
| Shaver Shop | $129, was $289.99 | Both, with the 55% saving |
The trouble starts when a page stacks several offers. Across the study, answers left out Kathmandu's $89 member price, the multi-buys at Woolworths, Liquorland and Bonds, and the percentage-off banners at Lorna Jane (25%), David Jones (30%) and Dyson (a 20% code). dusk's answer turned the public $29.99 sale price into a members-only price and told non-members $49.99. Black Friday is when offers stack most, so expect the answer to lose at least one of them.
Stock: the question no retailer lets it answer
Store-level stock is invisible to machines
None of the 48 stock answers we could score confirmed a specific product in a specific store from the retailer's own data. Almost every refusal came down to a step ChatGPT can't take: choosing a postcode, a store or a size before the retailer's page reveals stock.
| Outcome | Count |
|---|---|
| Declined, saying store stock isn't exposed | 41 |
| Wrong | 2 |
| Partial, answered from a third party | 1 |
| Claimed in stock at a named store, unverified | 1 |
| Passed | 3 |
The three passes weren't store-level answers: one online-only product, one discontinued product ChatGPT correctly flagged, and Microsoft, which has no Australian stores.
The clearest example is IKEA. The store in the answer is at 630 Victoria Street, Richmond, the suburb we asked about, and ChatGPT still couldn't say whether a $15.99 pouffe was on its shelves.

Where the retailer is silent, someone else answers
Petbarn's stock question was answered from its Uber Eats listing, on two separate runs. JB Hi-Fi's store phone number came from a shopping centre's website, Woolworths' price came first from ReefAPI, a third-party product data service, and Kathmandu's answer cited shop.app, Shopify's shopping app.
"Nearby Petbarn South Yarra is currently listing the 2kg Kangaroo & Pumpkin roll as 'Many in stock' through its live delivery catalogue."
ChatGPT on Petbarn
For click and collect, and for any shopper asking whether they can get something today, the retailer holds the answer and the assistant can't see it. We cover the most common reasons products go missing in Why can't ChatGPT find my products?
A wrong "out of stock" loses the sale outright
THE ICONIC, Pet Circle and Kathmandu were all in stock online, and all three were reported as unavailable. Kathmandu's page showed Add to bag, with all seven black sizes available.
"The Kathmandu product page currently shows 'Out of stock – notify me' for the black colourway."
ChatGPT on Kathmandu, wrong
A shopper told the price is wrong might still check. A shopper told the product is unavailable goes somewhere else. David Jones went the other way: the answer called sizes 8 to 16 available when 8 to 14 were sold out. When the page showed stock plainly, the answer could be precise. Culture Kings' "SIZE: 7 : 4 LEFT" came back as "US 7 with 4 pairs left", and Culture Kings' schema carries no stock data at all.
Where ChatGPT gets its data
When ChatGPT takes the price from someone else's site
Some answers didn't come from the retailer's product page at all. We went back through every run, including the 18 extra sites, to see where each price came from. When another site replaced the product page, the price was wrong every time we could check it. When a comparison site was only used to double-check the product page, it was right.
| Where the price came from | Runs | Price right |
|---|---|---|
| The retailer's own product page | Most runs | Almost always. Where it missed, the answer dropped or mixed up an offer |
| The retailer's own sale, range or collection page | 4: Adore Beauty, Appliances Online, Pet Circle, Pillow Talk | 0 of 4 |
| A price comparison or other third-party site | 5: Petstock, Platypus, The Athlete's Foot and Autobarn (comparison sites), and a first Lorna Jane run (another third-party site) | 0 of 3 we could score. Autobarn and Lorna Jane couldn't be scored |
| A sister brand or another country's store | 4: Kogan (Dick Smith), Nike (Europe), Glassons (New Zealand), City Chic (US) | 0 of 4 gave a correct Australian price |
| A comparison site used only to double-check the product page | 2: JB Hi-Fi, Officeworks | 2 of 2 |
The comparison-site misses
BuyWisely was the source three times, and both of its prices we could check were the full price from before a sale went live. The sneaker retailers were hit hardest.
| Retailer | The page showed | ChatGPT said | Source |
|---|---|---|---|
| Platypus | $109.99, was $169.99 | A$169.99 | BuyWisely |
| The Athlete's Foot | $199.99, was $279.99 | A$279.99 | BuyWisely |
| Petstock | $49.99 | A$49.00 | "A recent Australian price comparison", not linked |
| Autobarn | Not visible to us | $268.99, out of stock | BuyWisely |
ChatGPT usually said where the number came from. It named BuyWisely, called Petstock's source "a recent Australian price comparison", and warned about Kogan's price. A careful reader could tell. Most shoppers asking for a price will take the number and move on.
Brands with stores in several countries
When the Australian page was blocked or thin, the answer used a storefront ChatGPT could read, in another currency. Nike came back with a US and a European price, and Glassons with a New Zealand price in New Zealand dollars. For Kogan it used Dick Smith, a sister site in the Kogan Group, and quoted the member price as the price. Nike's and Glassons' figures were labelled as overseas prices, but they were still the only prices the shopper got. City Chic was the only case where ChatGPT declined to give a price.
"That is the US storefront, so I would not treat $89.99 as the Australian price."
ChatGPT on City Chic, ranked 69th of 70
For any brand with several country stores or sister sites, each storefront has to be clearly marked for its market, and the right one has to be readable. That's a multi-site problem.

Why it happens
We can't see inside ChatGPT, but four explanations fit what we observed.
- It couldn't get into the retailer's page. ChatGPT said so for Kogan, and for The Athlete's Foot on an earlier question about a different shoe. Autobarn's security blocked our browser and a normal one. None of these retailers block OpenAI's crawlers in robots.txt.
- The comparison page is easier to read. It puts one product on a page with the exact name, the SKU and a plain price in the HTML. Platypus' product page carries no product schema until JavaScript runs. That fits, though we can't prove it caused the choice.
- The comparison site was out of date. It shows the last price it recorded. On both BuyWisely answers we could check, that was the full price, so the sale hadn't reached it.
- The retailer didn't publish the answer. No retailer exposes store stock to machines. Uber Eats, Shopify's shopping app and shopping centre websites do, so they answer for the retailer.
"I couldn't independently retrieve a live Kogan product page showing the price/stock status, so I wouldn't treat the A$209 figure as a guaranteed Kogan.com checkout price."
ChatGPT on Kogan. Non-members pay $229
The 18 extra sites
We checked 18 more retailers the same way, logged out, reading each product page from a screenshot. We keep them apart from the 51 because the page price comes from a screenshot and schema wasn't measured. The exceptions are Kogan, which our browser read on a retry, and Dymocks and Autobarn, which didn't load for us in any browser, so only ChatGPT's answer could be seen.
- ChatGPT reached 14 of the 18. It couldn't read Nike, Glassons, Kogan or Autobarn directly. A site that was hard for us to open usually wasn't hard for ChatGPT: Dymocks refused our browser and a normal one, and ChatGPT still quoted its product page.
- Of the 16 we could score, 10 prices were right, 4 wrong and 2 withheld. The misses followed the same patterns as the main test: a comparison site's pre-sale price (The Athlete's Foot), a sister site (Kogan) and stacked offers (dusk and Dyson). Both withheld answers gave another country's price instead (Nike and Glassons).
Every answer, with a link to the ChatGPT conversation, is in the tables at the end of this article.
Security tools mattered more than robots.txt
Six retailers' sites wouldn't load for our automated browser: Kogan and David Jones with CAPTCHA pages, Dymocks with an HTTP 429 on the first request, Autobarn with an Imperva block page, JD Sports with a refused connection, and Bonds, whose page repeatedly crashed the browser. When we checked them another way, ChatGPT reached four of the six.
robots.txt made no observable difference. Only 11 of the 68 retailers we checked name any AI crawler in it, and no failure traced back to it. Kogan names OAI-SearchBot and allows it, and ChatGPT still couldn't read Kogan. We looked at whether llms.txt is worth adding in a separate post.
The space around the answer
Logged-out ChatGPT shows paid ads under retailer answers
Logged-out ChatGPT opens its answers with map-style store cards and, most of the time, closes them with a paid ad. In the main test, 10 of the 17 logged-out answers we read carried one. On the 18 extra sites, all checked logged out, 14 of the 16 scored answers did. The ad is bought against the retailer's own question: someone asks about your product at your store, and the space under the answer goes to someone else.
| The question was about | The ad underneath | Who the advertiser is |
|---|---|---|
| Target, Palmer Embroidered Cushion ($35) | Sponsored: "Wool Linen Textured Pillow Cover, $49.90", Quince | Another seller, similar product |
| Priceline, Cetaphil Gentle Skin Cleanser | Ad: SharkNinja, "Shark CryoGlow Developed With Dermatologists" | A brand selling direct, different product |
| Mecca, Tatcha The Dewy Skin Cream | Ad: SharkNinja, "Shark CryoGlow LED Mask with Under-Eye Cooling" | A brand selling direct, different product |
| Harvey Norman, Cricut Maker 5 Essential Bundle | Ad: Cricut, Inc., "Cricut Maker 5: Our most versatile cutting machine yet" | The manufacturer of the product asked about |
| Shaver Shop, Oral-B iO2 Dual Handle pack | Ad: Philips Sonicare, "Most used by dental professionals" | A rival brand |
| Culture Kings, Jordan Sixty Plus Low Phantom ($240) | Sponsored: "Jordan Sixty Plus Low Men's 7, $90.00", Poshmark | A resale marketplace, same product |
| Platypus, adidas Gazelle ($109.99) | Sponsored: "Adidas Gazelle Sneakers Blue/White Size 8.5, $70.00", Poshmark | A resale marketplace, same model |
| Bras N Things, Noelle Full Cup Bra ($69.99) | Sponsored: "Festivite Lace Plunge Bra, Bright Pink, $94.00", Neiman Marcus | Another retailer, similar product |
| Anaconda, OZtrail Genesis II 9 Person Tent ($219) | Ad: James Baroud, "Space Rooftop Tent" | A brand selling direct, related product |
| Liquorland, Pepperjack Barossa Shiraz ($25) | Sponsored: "Mouth Blown Red Wine Glass, Set of 4, $79.90", Quince | Another seller, related product |
Who bought the space
- The same sneaker model from another seller, five times. Poshmark, a resale marketplace, showed the Jordan Sixty Plus at $90 under Culture Kings' $240 answer and an adidas Gazelle at $70 under Platypus. Cettire, a Melbourne-founded online luxury retailer, ran the same shoe under Nike, JD Sports ($142.53 against JD's $260) and The Athlete's Foot. Poshmark's prices carry no currency and are probably US dollars.
- The manufacturer. Cricut advertised its own Maker 5 under a question about Harvey Norman's price for the Maker 5.
- A rival brand. A question about an Oral-B toothbrush at Shaver Shop was followed by a Philips Sonicare ad.
- Direct-to-consumer brands in the same category. Quince, SharkNinja, Wayfair, Fabletics and Free People all appeared.
These ads are probably aimed at US shoppers. Our browser reached ChatGPT from a US IP address, and most advertisers were US sellers. The Good Guys' ad was a Home Depot washer measured in inches and cubic feet. The exception is Cettire, which placed three of the five same-sneaker ads. An Australian shopper may see different ads, or none. What the study shows is that the space under retailer questions exists and is being sold. Who buys it in Australia needs its own test.
Signed in: rival retailers in the shopping card
In the first 36 signed-in runs, seven answers came with a product card underneath, and five of those named a different retailer. Three showed a lower Australian price than the retailer the shopper asked about. A fourth, Best Buy, showed $149.99 in what are probably US dollars.
| Asked about | ChatGPT's answer | The card showed |
|---|---|---|
| Big W | A$99 | $69.99 · Target |
| Harris Scarfe | A$279.99 | $312.50 · The Essential Utensil |
| Microsoft | AU$229.95 | $149.99 · Best Buy, a US retailer, no currency shown |
| Target | A$35 | $29.87 · GimmeNow |
| Priceline | A$30.99 | $26.27 · Health Chemist |
Only once, on Target, did the answer warn the shopper that the card wasn't Target's listing. This was the least stable finding in the study. The Big W card didn't return when the question was asked again signed in, and none appeared logged out, where ChatGPT may not show these cards at all.
When prices tie, the details decide
On 24 September, alongside the main test, we asked ChatGPT the question a shopper actually asks: who has the best price on Marvel's Wolverine for PS5? It listed eight sellers. Four came back at $99: Amazon Australia, Target, JB Hi-Fi and Big W. The rest ranged from $108 to $124.95, and two of them carried "+ postage". Of the four at $99, only Amazon's line said anything about delivery: "free postage." The answer was built from a gaming site's price roundup, Press Start, not the retailers' own pages.

On price, the four were identical. The only thing that set one apart was a delivery detail that made it into the answer. ChatGPT then offered to check which of the $99 options had the cheapest delivery to the shopper's postcode, which is the next comparison the shopper makes. When prices are level, delivery cost, delivery time, click and collect and returns are what the shopper decides on, and the answer can only use the ones it can find. This was a single question, not part of the main test.
What it means for retailers
Three patterns behind the numbers
Customer love doesn't transfer to AI. The retailers customers rank highest had the same exposure as those ranked lowest. The six wrong prices came from retailers ranked 1, 4, 18, 26, 36 and 42, and the bottom ten had none. With 51 runs, this shows a direction, not a statistical result.
| Part of the ranking | Runs | Correct | Wrong | Not scorable |
|---|---|---|---|---|
| Top 17 | 16 | 13 | 2 | 1 |
| Ranks 18 to 60 | 26 | 22 | 4 | 0 |
| Bottom 10 | 9 | 8 | 0 | 1 |
One platform decision repeats across every brand in a group. BCF, Rebel and Supercheap Auto, all Super Retail Group brands, publish the same product schema with an expiry date and no price. Witchery and Country Road, both Country Road Group, share a page structure and got the same clean result. For groups running several brands on one platform, a gap or a fix lands on every brand at once. See how that works on our multi-brand retail and multi-site orchestration pages.
Answers aren't stable. Signed in, four retailers were asked the same question twice, and two got a different answer. Logged out, Big W's price came back as A$99.99 on one run and A$99 on the next, and Chemist Warehouse's price was declined logged out after being given correctly signed in. A single check tells you what happened once.
Conclusions
- Price accuracy is about consistency across your pages. ChatGPT reads the product page well and goes wrong when a sale page, range page, feed or comparison site says something different.
- Correct schema is not protection. All six wrong answers came from retailers whose schema carried the right price. Its measurable value here was detail, such as size-by-size stock.
- Store stock is the gap nobody has closed. Until a retailer closes it, delivery apps and shopping centre sites answer for them.
- A wrong "out of stock" is worse than a wrong price, because the shopper doesn't come at all.
- The space under your answer is for sale, and rivals, manufacturers and resellers are already buying it.
- For multi-brand groups this is a platform decision. Fix it once and every brand improves.
- Stacked offers and country storefronts are the weak spots. Keep one clear price on the page, and make the Australian store the one machines land on.
- When ChatGPT can't use your page, a comparison site speaks for you, and on sale day that can mean an old price. Check what your answers cite, not only what they say.
- Price is only part of the comparison. When prices tie, the answer separates retailers on delivery, postage, click and collect and returns, using whatever it can find. In our Wolverine question, that was a gaming site's price roundup. Details you haven't published can't be compared.
Every one of these gets harder over Black Friday: prices change on thousands of products at once, sale pages multiply, offers stack and stock sells through. ChatGPT product feed items also expire after two weeks, so a feed that isn't refreshed during the sale drops out. If you sell B2B, the retail playbook doesn't automatically apply. Should B2B companies run Black Friday deals? covers when it works.
What to check before Black Friday
None of these needs new technology. Most are checks a digital team can run in a week on its top-selling products. Since OpenAI removed in-chat checkout from ChatGPT in March 2026 (CNBC), ChatGPT sends shoppers to the retailer's own site to buy, so your own pages are both what the answer is built from and where the shopper checks it.
- Ask ChatGPT about your own top products, signed in and logged out, and look at the citations. See whether the answer cites your product page or somebody else's. A correct price today can still come from a comparison site, and that price won't update when your sale starts. Our 15 copy-and-paste prompts cover the questions shoppers ask, and How do you measure AI visibility? covers what to track over time.
- Match the product page price everywhere it appears. Compare it with sale pages, category and collection pages, gift guides, feeds and comparison sites on the day the sale goes live, and take down expired sale pages that still show old prices. Price agreement across their own pages would have prevented four of the six wrong prices in this study.
- Check whether AI agents can get past your security tools. Review your bot-protection rules (Imperva and Cloudflare both appeared in this study) for verified agents such as OAI-SearchBot and ChatGPT-User, especially if you tighten settings for peak. Keep product and search pages open, and protect checkout separately. robots.txt alone made no difference here.
- Put the price in the HTML you serve. ChatGPT often reads pages that fill in after JavaScript, but not always, and a price in the served page leaves it less reason to look elsewhere. Publish each size and colour as its own variant with its own price and stock.
- Keep offers simple and explicit. If a price has conditions, state them next to the price in plain text: who qualifies, what it costs, when it ends. Member prices only help when they're labelled clearly. Macpac's and Adairs' came through, Kathmandu's was left out, and dusk's public sale price was presented as members-only.
- Update comparison and shopping feeds when a sale goes live. If you don't supply them, those sites are quoting you anyway, from whatever they last saw. Push sale prices at the same moment the product page changes, from the same source, through your integrations. You don't need a separate catalogue for each channel, as we explain in Do I need a separate product feed for ChatGPT?, and the data work is covered in Product feed optimization for AI shopping.
- Make the Australian store the one machines land on. Use country-specific URLs, hreflang tags and AUD in your schema, and check that one sister brand's price isn't being quoted for another. Running your storefronts on one multi-site platform makes that a single decision.
- Publish stock, delivery and returns, or expect someone else to. A delivery app already answers stock for one retailer in this study: Petbarn, via Uber Eats. Show online stock as text, and put delivery cost, delivery time, holiday cut-off dates and returns next to the price, on the product page and in your comparison listings. Look at whether store-level stock can be shown without the shopper choosing a store first. It's the same problem multi-location operators face with every local page.
Two decisions sit outside the product page. Decide whether to advertise against questions about your own brand and products, because the space under the answer is already being sold. ChatGPT ads and eCommerce covers how the format works. And build your direct channels before November: a shopper who opens your email, uses your app or logs in as a member isn't shown a competitor's card or a brand's ad.
The wider approach: treat the answer as a comparison
A shopper who asks ChatGPT where to buy gets a line-up. It puts you next to other sellers of the same product and compares the whole offer: price, member price, delivery cost and time, click and collect, returns. It builds that line-up from your product pages, your sale pages, your feeds and the comparison sites that quote you. In the Wolverine question, four retailers tied at $99, and the only line that mentioned delivery was Amazon's "free postage". So the job is to make your full offer readable and consistent in every place the answer draws from. Then check it the way a shopper would: ask ChatGPT for the best deal on your top products and see who comes out ahead, and why.
The part underneath all of this
Every one of these depends on price, stock and delivery being the same everywhere they appear. That's an operational question before it's a marketing one: one source that the site, the storefronts, the feeds, the store pages and the emails all read from. It's how Core dna's eCommerce platform is built, and for groups running several brands, it's why this is a platform decision. For the wider picture, see our AEO and GEO optimization guide.
About this study. The AI Retail Readiness Study was run by Core dna, an Australian composable digital experience platform with integrated CMS and commerce, used by retailers and multi-brand groups to run their product pages and storefronts.
Summarize with