Cyber Monday catalogue ads: switching sale creative without rebuilding your ads
How to move catalogue ads from Black Friday to Cyber Monday 2026 and back to full price by changing the feed, not the ads, so nothing resets learning at peak.
AI Shopping Feeds Updated
Black Friday falls on 27 November 2026 and Cyber Monday on 30 November. For most shops that’s not two sales but one long weekend with a few changes in the middle: different discounts on Monday, a “last chance” message, then everything back to full price on Tuesday.
With catalogue ads, the temptation is to rebuild creative for each stage. Don’t. Every edit to a live ad risks sending it back into the learning phase, which Meta describes as the period when delivery is still unstable while the system learns. That’s the last thing you want during the busiest four days of the year.
The better approach is to make the ads read everything that changes from the feed, then change the feed.
What actually changes over the weekend
Write it down before the sale starts. For a typical shop:
| When | What changes |
|---|---|
| Friday 27 Nov, 00:00 | Sale prices go live. Sale creative appears. |
| Monday 30 Nov | Some discounts change. Some products join or leave the sale. Optional “Cyber Monday” message. |
| Tuesday 1 Dec, 00:00 | Sale prices end. Creative goes back to full price. |
Every row in that table can be a feed change rather than an ad change.
1. Let sale_price carry the discount
Put the discounted price in sale_price and leave price as the normal price. Meta’s catalogue documentation says the sale price must be lower than the full price. When the Cyber Monday discount differs from Black Friday’s, change sale_price. The ad picks up the new price, and any discount shown on the creative is worked out again.
To make prices change on time without anyone staying up, use sale_price_effective_date. Meta describes it as the date, time and time zone when the sale starts and ends. Our Black Friday product feed checklist covers the format and the common mistakes.
If your catalogue images show prices or badges, check that your creative tool follows the effective date. Our DPA Creative Editor does: before the sale starts a product renders at full price, and its image is rendered again shortly after the sale starts and again after it ends. Check a few images after each switch.
2. Use a custom label for the message
Prices are data. “Cyber Monday” isn’t, unless you make it so. Meta’s catalogue supports five custom labels, custom_label_0 to custom_label_4, for text you want to use in your ads.
Set one label to the stage of the sale, for example bf over the weekend and cm on Monday. Then use that label in two places:
- Product sets, so you can include or exclude products by stage without editing the ad set.
- The creative, so a layer such as a “Cyber Monday” ribbon shows only when the label says
cm.
On Tuesday, clear the label and the ribbon goes with it.
3. Make the design conditional, not seasonal
The design that works across the whole weekend has three states built in:
- Full price: product, name, price. No sale elements.
- On sale: the sale price, the original price struck through, and the saving. These appear only when the product has a sale price.
- On sale, Cyber Monday: as above, plus the Cyber Monday ribbon, shown only when the custom label says so.
One template, three outcomes, all decided by the data for each product. You don’t swap creative at midnight. You change the feed, and the ads follow. Our post on showing sale prices in catalogue ads automatically shows how the sale state works in detail.
4. Refresh the feed more often over the weekend
None of this helps if Meta is looking at yesterday’s prices. Over the sale weekend:
- Schedule more frequent catalogue updates than usual, at least around midnight on Friday, Monday and Tuesday.
- Check a few products by hand after each switch. Look at the price in the catalogue, and at the ad preview.
- Watch for products going out of stock. A discounted product people can’t buy is wasted spend.
If you render your own catalogue images, the images need to update too. In our editor, a feed refresh that changes prices triggers a re-render of the affected products, and a product with stale price data is queued for re-rendering on its own.
5. Keep the structure still
Decide your campaign structure before the sale and leave it alone. Meta’s guidance on the learning phase is that significant edits, such as changes to creative, targeting or budget, can restart learning. Plan budget increases ahead of time rather than reacting hour by hour, and don’t add new ads to a winning ad set on Saturday morning.
Our Black Friday 2026 week-by-week plan has the full timeline, from fixing the catalogue four weeks out to launch two weeks before.
A checklist for the weekend
-
sale_priceset for every sale product, lower thanprice -
sale_price_effective_dateset for Black Friday and Cyber Monday prices - Custom label marks the sale stage (for example
bf,cm) - Product sets use the label where needed
- Creative shows sale details only on sale products
- Cyber Monday layer shows only when the label is
cm - Catalogue update schedule increased for 27 November to 1 December
- Spot checks planned after each switch
- Tuesday morning: sale prices gone, labels cleared, creative back to full price
The DPA Creative Editor builds the conditional design in the middle of this: sale elements shown only on sale products, extra layers shown only when a custom label matches, and images re-rendered when the feed changes.
Frequently asked questions
When is Cyber Monday 2026?
Monday 30 November 2026, the Monday after Black Friday on 27 November.
Should I create new ads for Cyber Monday?
Usually not for catalogue ads. Editing or replacing ads mid-sale can send them back into Meta's learning phase. If the creative reads prices and sale details from the feed, changing the feed changes the ads.
How do I make sale badges disappear when Cyber Monday ends?
Remove the sale price from the feed, or set sale_price_effective_date so the sale ends on its own. Badges that depend on the sale price then stop showing.