DeviLabs Book a call
GEO
Services
Pricing Work Case studies About Blog Book a call
info@devilab.eu · Wassenaar, NL
GEO

AI Search Holiday Shopping Preparation, Week by Week

A dated plan from 19 October to 1 December 2026, the fields that carry a sale into Google, ChatGPT and Shopify Catalog, and one product worked through.

In this article
  1. Why start six weeks out?
  2. Which fields carry a sale, and when do they take effect?
  3. One kettle through a four-day sale
  4. The plan, week by week
  5. What the ranking guides leave out
  6. What to do on Monday
  7. Frequently asked questions
  8. Sources

Black Friday is 27 November 2026, and the same sale reaches Google, ChatGPT and Shopify's agent catalog through different fields that switch on and off at different times. Below is the plan: which field does what, one product worked through a four-day sale, and what to do each week from 19 October so the price an assistant quotes is the price you charge.

Why start six weeks out?

Because pages are slow and feeds are not. A feed price is re-read with every upload or sync, so a wrong price can still be fixed late. A wrong fact on your own pages has to be crawled again before answers change, and a wrong fact on other sites takes longer still. Those are the fixes that need October.

For the site itself, my published timeline is: "Access fixes land in days. Content starts getting retrieved in weeks." The layer after that, what other sites say about you, shows consistent movement at three to six months, so nothing there will move before 27 November.

Adobe's forecast, as reported by Digital Commerce 360, expects AI traffic to US retail sites to rise 130% year over year this holiday season. It is a forecast of growth for US retail sites, not a share of traffic. If it holds, more of your holiday visitors arrive with a price an assistant already quoted them.

A wrong quote costs more than a missing one. On LuckyPaws, one of our own brands, ChatGPT returned service prices that did not match the published rates, and our field note puts it plainly: "A missing price is a gap; a confident wrong price is a figure a customer arrives with." A sale that ended on Monday but is still in an AI answer on Wednesday is that figure.

Which fields carry a sale, and when do they take effect?

Each surface reads a sale from its own field with its own start rule. Google can schedule a sale from an effective date, unless your feed comes from Shopify's app. OpenAI's file feed reads sale_price as the price right now. Shopify Catalog passes compare-at prices to agents only under three conditions. Promotions are a separate system on Google and OpenAI.

Surface Field that carries the sale When it takes effect What catches stores out
Google Merchant Center, feed you control sale_price, with sale_price_effective_date On the dates you set; without dates, at once A sale price sent without dates goes live as soon as it is processed
Google Merchant Center, via Shopify's Google & YouTube app Shopify compare-at price and price Within 24 hours of saving in Shopify No effective dates; Google follows your store changes, with a lag
Google Merchant promotions A promotion linked to products After policy review and a check at start time Approval can land up to 72 hours after the start
OpenAI file upload (ChatGPT) sale_price, the current sale When the next snapshot is processed Sale dates are stored but schedule nothing
OpenAI products and promotions API price and list_price; promotions with a start and end time When you send the update No documented display rules for promotions
Shopify Catalog (ChatGPT, Copilot and other agents) Compare-at price, passed to agents as list_price Continuously, as you edit products Off for some stores; absent wherever you hide compare-at, such as for EEA buyers

Google's sale price page says to send the effective date to mark when a sale applies, "otherwise the sale price will be used for your product immediately." The same page asks you to show the regular and the sale price on the landing page, and only the sale price at checkout.

Most Shopify stores do not send Google a feed they edit by hand. With the Google & YouTube app, Google's own guide says you set a compare-at price and a lower price in Shopify, and "prices will update on Google within 24 hours." There is no effective date in that route. Your Shopify price change is the schedule, and the lag after it is up to a day.

OpenAI's products spec accepts a sale date range in its file format, then says what it does with it: "Accepted as date metadata; does not schedule sale activation." Elsewhere the spec asks you to update the feed when a sale starts or ends. The documentation gives no time for how fast a snapshot reaches ChatGPT, so treat that gap as unknown.

The API route works differently. In OpenAI's products API, price is the "Active sale price for this variant" and list_price is the reference price before any discount, in minor units. The promotions endpoint takes a start and end time and three kinds of benefit: an amount off, a percent off and free shipping. It describes the data, not where ChatGPT shows a promotion. Our ChatGPT product feed guide covers who can use which route.

On Shopify, the agent side changed on 9 October 2026. Shopify's changelog says Catalog now gives agents your compare-at price as list_price, so they can tell a product is marked down. A variant carries it only when compare-at sharing is on in Catalog Mapping, the compare-at price is higher than the price, and you show compare-at prices in the buyer's region. As the changelog puts it, "Shopify turns this on by default for most stores and turns it off for stores that use compare-at for MSRP or another reference price." Our Shopify Agentic Storefronts guide explains where Catalog sends your products.

One kettle through a four-day sale

Take a pour-over coffee kettle sold at €80 in the EU and $96 in the US, discounted 25% from Friday 27 November to Monday 30 November. That is €60 and $72 for a four-day sale. Each surface needs the markdown written its own way, and in the EU the reference price depends on the previous 30 days.

Shopify. Set the price to €60 and the compare-at price to €80 at the start, and restore them at the end. This one change feeds three surfaces: your store, Google through the app, and agents through Catalog. For EEA buyers, Catalog passes the €80 to agents only if you show compare-at prices to them.

Google Merchant Center. Through the Shopify app, Google can show the old price for up to a day after the start and the sale price for up to a day after the end. The first lag is harmless, because a shopper pays less than Google showed. The second is the risky one, so check a few products in Merchant Center on 1 December and fix any that still show €60. If you control your own Google feed, keep price at 80.00 EUR, add sale_price 60.00 EUR and sale_price_effective_date 2026-11-27T00:00+0100/2026-11-30T23:59+0100, upload it in the week of 16 November, and change the store price at the same minutes so feed and page agree.

OpenAI file feed. Write price 96.00 USD and sale_price 72.00 USD in a snapshot you upload early on 27 November. If ChatGPT still shows $96 for the first hours, a shopper pays less than they were told, which does no harm. The end is where it goes wrong: upload a sale-off snapshot without sale_price in the last hours of 30 November, US time. If nobody can do that, honor $72 for orders that arrive quoting it until ChatGPT shows $96 again.

OpenAI products API. If you push the sale through the API instead, send price 7200 and list_price 9600, currency USD, at the start, and price 9600 without the sale at the end.

Google promotions, if you add a code. Say you also offer free shipping on orders over €100 with a code. That belongs in a Merchant promotion, and Google's FAQ says review "is typically completed within 24 hours of the promotion effective start time, but can take up to 72 hours." It also recommends submitting at least 24 hours before the start. Even on time, approval can land up to three days into a four-day sale. Keep the discount itself in the price fields, which do not wait for promotion review, and let the promotion carry only the extra.

The plan, week by week

Six weeks is enough if fixes come in the right order: find wrong facts first, fix the pages they came from while there is time for a new crawl, then set prices once and freeze them. The dates assume a sale from 27 to 30 November 2026.

  1. Week of 19 October: record what AI says today. Write ten questions a holiday buyer would ask, such as "best pour-over kettle under $100 as a gift", run them in ChatGPT, Google AI Mode, Perplexity and Gemini, and log every wrong price, product, policy or shipping claim. Our measurement protocol keeps an error register for exactly this, and that register, "not the score, is usually what a client acts on first."
  2. Week of 26 October: fix the pages the errors came from. Prices and specs in the server-rendered HTML, a holiday returns page and shipping cutoffs on a page crawlers can reach, and product copy that matches your feed. In the EU, keep the regular price of anything you will discount steady from 28 October, or plan for the lower reference.
  3. Week of 2 November: clean the data you control. In Shopify, open Catalog Mapping and decide on compare-at sharing; remove any compare-at value that was never a real price. In Merchant Center, fix disapproved products now.
  4. Week of 9 November: build the sale, do not switch it on. Prepare the Shopify price and compare-at changes as one bulk edit, or in the scheduling app you already use, or prepare your own Google rows with effective dates. If you run a direct OpenAI feed, prepare two snapshots, sale on and sale off, and name who uploads each and when.
  5. Week of 16 November: submit and upload. Send any Merchant promotion by Friday 20 November so the review has working days to run. Upload your own scheduled Google sale prices if you use them.
  6. Week of 23 November: freeze and check. No price or copy changes after Tuesday 24 November. Re-run your ten questions and compare them with week one. Check that stock changes reach Google and Catalog within the day, and for a direct OpenAI feed, plan an extra snapshot during the sale for items likely to sell out, with availability updated.
  7. 27 to 30 November: run it. Upload the sale-on OpenAI snapshot early on the 27th and check one product on every surface. On the evening of the 30th, upload the sale-off snapshot, and restore the Shopify prices at 23:59.
  8. 1 December: check everything. Look for sale prices that stuck in Merchant Center and ChatGPT, and run your questions again within the week.

What the ranking guides leave out

The pages ranking for this query agree on the basics: be crawlable, collect reviews, add schema, start early. Of the eight we read on 17 October 2026, none gave a dated plan for getting a sale price right in Google, ChatGPT and Shopify Catalog. The one dated playbook, Alhena's, is for an on-site chatbot.

Six weeks will not build AI visibility. It can correct what engines get wrong about you, which is the lesson our own field notes reached: "Presence was never the issue. Accuracy was."

What to do on Monday

Run the week-one step first: ten buyer questions, four engines, every error written down with the engine and the date. That list decides the next five weeks: which pages to fix in late October, which prices and policies to check in November, and what to look for again on 1 December.

One run per engine is a snapshot, and answers vary from run to run. If you want repeated runs and a logged error register, that is where our AI visibility audit starts.

Frequently asked questions

It can show the sale price your data sends it, through a direct feed's sale_price field or, for Shopify stores, the compare-at price Catalog now passes to agents. The price ChatGPT holds is only as current as your last upload or sync, so the end of a sale needs the same care as the start.

Use sale_price, or a compare-at price if you sync from Shopify, for a straight markdown on the product page. Use promotions for offers that need a code, a cart threshold or a gift. Promotions go through a separate review that can take up to 72 hours after the start time, so submit them early.

Prices and stock can still be corrected in the final week, because feeds are re-read with each upload or sync. Wrong facts on your own pages, a missing returns policy or a product page that hides its price from crawlers have to be crawled again before answers change, so those belong in late October or early November.

Only if they can read it. Put your holiday return window and shipping cutoffs on a plain HTML page that crawlers can reach, use the same wording in your feed fields where they exist, and ask an AI engine about your returns in the week of 23 November to see what it says.

Most of it. Google's sale fields and promotions work in European markets, and the EU prior-price rule makes your compare-at prices matter more. The direct ChatGPT feed is the exception: OpenAI's standard upload targets US shoppers today, as our ChatGPT product feed guide explains, so for most EU-only stores that part waits.

Sources

  1. Products – Agentic Commerce — OpenAI Developers.
  2. Products – Agentic Commerce (API) — OpenAI Developers.
  3. Promotions – Agentic Commerce — OpenAI Developers.
  4. Sale price [sale_price] - Google Merchant Center Help — Google.
  5. How to sync sale price and promotions from Shopify to Google - Google Merchant Center Help — Google.
  6. Promotion status FAQs - Google Merchant Center Help — Google.
  7. Catalog API now returns compare-at prices as list_price — Shopify, Oct 9, 2026.
  8. Ensure Your Discount Communications are Compliant Before You Hop on the Sales Season Omnibus! — K&L Gates, Nov 23, 2022. Law firm summary of Article 6a of the EU Price Indication Directive, in force since 28 May 2022; member states can add detail.
  9. Adobe projection: 2026 online holiday sales to reach $275.1 billion — Digital Commerce 360, Sep 29, 2026. Reporting Adobe’s forecast; a projection for US retail sites, not a measurement.

How this article was made: researched and drafted with AI assistance, built on DeviLabs’ published methods and Dominykas Jankauskas’s own positions, then fact-checked against the primary sources listed above and reviewed before publication. Read the full editorial policy. Spotted an error? Email info@devilab.eu.

Next step

Find out what AI says about you

Free 30-minute consultation call. We go through how AI engines pick the brands they name in your category, where the opening is for you, and what it would take to get into those answers.

Dominykas Jankauskas, founder of DeviLabs
About the author

Founder of DeviLabs, a Generative Engine Optimization (GEO) agency in Wassenaar, the Netherlands. He leads the agency’s GEO practice and its AI-native creative production, working with DTC, ecommerce, SaaS and SMB brands across the European Union and the United States.

← All articles