Filed under Auto Markdown

Shopify Black Friday Strategy: A 12-Week BFCM Plan for 2026

A twelve-week Shopify Black Friday strategy for 2026: offers, margin-led pricing, inventory and cash, site readiness, channels, and an event-week runbook.

Shopify Black Friday Strategy: A 12-Week BFCM Plan for 2026

A Shopify Black Friday strategy is a twelve-week plan that settles, in this order: what the weekend is for, how much stock and cash it takes, what the offer is and how deep it goes, whether the store can carry the traffic, how you reach the people who already know you, and what happens on the Tuesday after. Black Friday 2026 is 27 November and Cyber Monday is 30 November. Twelve weeks before Black Friday is 4 September — this week. Most of the guides ranking for this query are written by email and app vendors and open with the send calendar. The send calendar is part six of eight.

We build and run Shopify pricing apps — we use the apps we sell — and we have watched enough BFCM cycles on our own test stores and on merchant installs to know where plans break. They break in the same three places every year: prices that never come back up, stock that lands on 3 December, and a “40% off everything” that was decided by looking at a competitor’s banner instead of a margin sheet. None of those failures happen in the email tool.

This is the hub. It covers the whole campaign at one altitude and links down to the depth pieces where we have written them. The pricing depth — how deep by category, the break-even multipliers, the staged unwind after Cyber Monday — lives in our Black Friday markdown strategy guide; this page tells you where that decision sits in the twelve weeks and covers everything around it: offer architecture, inventory and cash, site readiness, owned and paid channels, operations, the event-week runbook, and the week after.

Key takeaways

  • Build the plan backwards from 27 November: inventory and cash decisions in September, offer and pricing in October, theme freeze and full rehearsal in early November, and a written hour-by-hour runbook for the week itself.
  • Set discount depth from your own margin, not from what competitors advertise. Shoppers saw peak discounts of roughly 25–31% in the biggest US categories last season; a store at a 45% gross margin that matches a 31% headline needs more than three times the units just to stand still.
  • Lead the public sale with visible markdowns, use bundles to defend the products you refuse to cut, and keep discount codes for one job: early access for your list.
  • Your store is a mobile store on Black Friday — 56.4% of US online holiday transactions were placed on a smartphone in 2025 — so test the mobile checkout on real devices, freeze the theme three weeks out, and turn on every accelerated payment method you can.
  • Schedule the revert before you schedule the markdown. Prices that stay down into December are the most common and most expensive BFCM mistake we see, and the fix is a date entered in October.

The Shopify Black Friday strategy in one screen: eight parts

If you read nothing else, read this list. Every section below is one of these eight parts expanded, and the twelve-week table that follows puts them in date order. The parts are numbered by dependency, not importance: you cannot set an offer until you know the margin, you cannot buy stock until you know the offer, and you cannot write the email until you know what it is announcing.

  1. One goal, one number. Revenue, contribution margin, new customers, or sell-through of a specific inventory position — pick the primary metric before anything else, because the four pull the plan in different directions. A store clearing a warehouse and a store protecting a premium price should not run the same weekend.
  2. Inventory and cash before offers. Forecast units per hero and core SKU, place purchase orders in the second week of September, and write a cash calendar that puts supplier deposits, freight, packaging, and ad budgets against the date the money actually comes back in.
  3. Offer architecture. A small hero set at the deepest cut, category offers on what you want to move, bundles on what you want to protect, and a spend-tier if average order value is the problem. Codes gate timing for early access; they do not add depth.
  4. Depth by tier, scheduled, with floors and reverts. Doorbusters, core catalog, protected, clearance — each tier gets its own depth from the margin math, every price has a floor beneath it, and every markdown has an end date entered at the same time as its start date. The markdown guide linked above is the full treatment.
  5. Site readiness. Mobile speed baseline, an app audit with removals, a theme freeze from the first week of November, and a checkout test pass on real devices with every accelerated payment method switched on.
  6. Owned channels. Grow the email and SMS list through September and October with an early-access promise, segment it in the last week of October, and run a send calendar that opens with VIP access on the Tuesday and closes with a final-hours SMS on Cyber Monday evening.
  7. Paid media, held to a margin floor. Prospect in October and early November while auction prices are lower, reserve event-week budget for retargeting and brand search, and set the return threshold from the discounted margin rather than from October’s performance.
  8. Operations, the runbook, and the unwind. Returns policy and shipping cutoffs published before the first teaser, support macros and a staffing rota, an hour-by-hour plan for Black Friday morning, and a post-event week that reverts prices on 1 December, absorbs the returns wave, and starts the retention flows for every new customer.

The guides that currently rank for “Shopify Black Friday strategy” — Omnisend’s, Adsgun’s twelve-week countdown, GrowthSuite’s descending-discount model — are competent on send cadence and app stacks. None of them run the margin math, plan inventory against lead times, model cash, or say when prices go back up. Those are the parts that decide whether the weekend made money, so they get the most space here.

The 12-week BFCM timeline: 31 August to 1 December

Week numbers count down to Black Friday, Friday 27 November 2026. Weeks start on Monday. Each row has one workstream and one deliverable, and the deliverable is always a thing that exists — a document, a setting saved in the admin, a test result — never “in progress”. If a row’s deliverable does not exist by the Sunday of that week, the following week starts with a decision about what to cut, not with catching up.

WeekDates (2026)WorkstreamDeliverable
1231 Aug – 6 SepGoal and last year’s readOne-page brief: primary metric and target, last year’s units, revenue, margin, and the three things that broke
117 – 13 SepInventory and cashUnit forecast per hero and core SKU; purchase orders placed; cash calendar with every outflow dated against expected payouts
1014 – 20 SepOffer architectureTier map: hero SKUs, category offers, bundles, protected list, spend-tier thresholds; floor price recorded per SKU
921 – 27 SepList growthEarly-access signup live in popup, footer, and post-purchase page; SMS opt-in live; subscriber target for 31 October
828 Sep – 4 OctSite auditMobile speed baseline recorded; app inventory with keep/remove decision per app; theme duplicated as backup; checkout tested on three devices
75 – 11 OctCreative and pagesBFCM collection and landing pages built and unpublished; hero creative; first ad creative; email and SMS templates
612 – 18 OctBuild and rehearseEvery markdown rule and discount built with start date, end date, and floor; dry run on a small mid-October sale using the same tooling
519 – 25 OctOperations readinessReturns policy final and published; shipping cutoff dates drafted; support macros written; temporary staff booked; packaging and supplies ordered
426 Oct – 1 NovOwned-channel calendarEvery send dated, segmented, and drafted; suppression lists built; SMS consent and quiet-hours settings checked
32 – 8 NovTheme freeze and QATheme frozen; full test-order pass (card, Shop Pay, PayPal, code-on-markdown stack, free-shipping threshold); rollback plan written
29 – 15 NovWarm-upTeasers sent; retargeting audiences warming; final stock received and counted; ad budgets loaded and campaigns approved
116 – 22 NovFinal checksEarly-access invitation sent Wednesday 18 Nov; canary SKUs chosen; runbook printed; on-call rota; scheduled dates verified in the store’s timezone
023 – 30 NovEvent weekVIP access opens Tuesday 24 Nov; public prices live 00:01 Friday 27 Nov; runbook executed; daily readouts; Cyber Monday offer live Monday 30 Nov
Post1 Dec onwardUnwindReverts confirmed on canary SKUs by 08:00 on 1 Dec; returns wave staffed; new-customer flows live; post-mortem written by 11 Dec

If you are reading this after week 8, compress rather than skip. Three rows cannot be compressed: week 11, because supplier lead times are not negotiable in November; week 3, because a theme that is still changing in the week before the sale is the single most reliable way to break checkout; and week 1, because the early-access invitation is what turns the list you built into orders. Everything else can be squeezed into fewer days if it has to be.

Offer architecture: hero, tiered, category, and bundle

An offer is a shape before it is a number. Four shapes cover almost every BFCM campaign we have seen work, and most stores should run three of them at once with different jobs. The number — the depth — comes afterwards, from the margin, and is covered in the next section. Before the shapes, the environment they compete in: Adobe’s analysis of the 2025 US holiday season reports peak discounts of 30.9% for electronics, 29.6% for toys, and 25.1% for apparel (Adobe, January 2026). Those are the headlines shoppers are calibrated to. They are not your depth; they are the noise your offer has to be legible through.

The hero offer. Three to five SKUs at the deepest cut you run, chosen because they are recognizable and because people who buy them tend to buy something else. The hero’s job is the click and the first item in the cart; its margin is thin by design and is recovered by what gets added alongside it. The failure mode is selling out at 9 a.m. and losing the face of the campaign, so a hero needs either enough units to last the weekend or a named replacement ready to take its slot.

The tiered offer. “Spend $75, save 10%; spend $150, save 15%; spend $250, save 20%.” Its job is average order value, and it is the only shape whose cost is conditional on the customer spending more. The rule that makes it work: the first threshold sits above your current average order — our rule of thumb is 20–30% above — because a tier set below the current average just discounts behavior that already existed. On Shopify this is an automatic order discount, which means it shows in the cart and at checkout but usually not on product pages unless your theme or an app surfaces it, so it needs a banner.

The category offer. “25% off outerwear.” Its job is to move a category with a depth chosen for that category while leaving everything else alone. Run as a markdown with a compare-at price, it is visible in the collection grid, in Google Shopping, and in every screenshot shared to a group chat, which is exactly what an event shopper comparison-shopping across tabs responds to. It is the workhorse of the public sale.

The bundle. Gift sets, “any three for,” a full-price bestseller paired with a slower mover. Its job is defensive: it holds margin on the products you have decided not to mark down and gives full-price items a reason to move during a week when everything around them is discounted. Framed as added value rather than reduced worth, it is also the offer shape that does the least damage to a premium price position.

Discount codes are deliberately absent from that list. During the public sale they are friction at your highest-traffic moment: a code must be found, remembered, and typed, and an empty code field sends a slice of your checkout traffic to a search engine to look for a better one. The one job a code does best in a BFCM campaign is gating timing — your list shops the same prices a few days early — and that use carries no extra depth and therefore no stacking risk. The full mechanic decision, including the reporting differences and the stacking accidents, is in our markdown vs coupon vs bundle framework.

Offer shapeShopify mechanicJobMargin behaviorMain risk
Hero (doorbuster)Markdown with compare-at on 3–5 SKUsGet the click and the first cart itemThin or negative on the unit; recovered by attachSells out early and the campaign loses its face
Tiered (spend-based)Automatic order discount with thresholdsRaise average order valueCost is conditional on incremental spendThresholds below current AOV discount existing behavior
CategoryMarkdown with compare-at across a collectionMove a category at a chosen depthPredictable; every buyer of the category gets itBleeds into products that would have sold at full price
BundleFixed bundle product or Buy X Get YDefend margin on protected products; lift units per orderMargin percent falls, gross profit per order risesCannibalizes buyers who already bought multiples
Early-access codeDiscount code or password-gated collection, no extra depthReward the list with timingZero — same prices, earlierLeaks the sale to the public before launch

An illustrative margin example across the four shapes

Say a store sells a $50 product with an $18 landed cost — a 64% gross margin and $32 of gross profit per unit at full price. Here is what each shape does to that unit. The numbers are invented; the structure is what to copy into your own sheet.

ScenarioCustomer paysGross profitMarginUnits to match full-price profit
Full price$50 per unit$32 per unit64%1.0×
Hero at 40% off$30 per unit$12 per unit40%2.7×
Category at 25% off$37.50 per unit$19.50 per unit52%1.6×
Tiered: 3 units at the $150-for-15% tier$127.50 per order$73.50 per order ($24.50 per unit)58%1.3× per unit — but only on incremental units
Bundle: 3 for $120$120 per order$66 per order ($22 per unit)55%Profit per order more than doubles if it converts a one-unit buyer

Three readings. The hero at 40% off needs almost three times the unit volume to earn what full price earns, which is why it is limited to a handful of SKUs whose job is to bring people in. The category offer at 25% is the sustainable public depth for this margin structure — 1.6× volume is a realistic BFCM lift for a category that has been teased for two weeks. The tiered and bundle rows are the ones that raise gross profit per order rather than lowering it, and they only pay out when the customer does something they would not otherwise have done. A campaign that runs all three has a thin front door, a solid middle, and a back room that makes money.

Pricing depth and mechanics: the short version

Depth is a margin decision, and the arithmetic is unforgiving. A discount comes out of gross profit, not revenue: at a 50% gross margin, a 40% markdown leaves ten cents of profit per dollar where there were fifty, so you need five times the units to earn the same gross profit. At a 64% margin the same 40% needs about 2.7×. This is why copying a competitor’s headline is the mistake we list first at the end of this guide — their 40% may sit on a 70% margin, and yours may not. The markdown guide linked at the top of this page carries the full break-even table by margin and depth, and the four-tier depth map we use: doorbusters at 40–50%, core catalog at 20–30%, a protected tier at 0–15% or excluded entirely, and clearance at 40–70% with a floor under every unit.

The floor is the part most BFCM plans skip. A floor price is the number below which a sale destroys value instead of recovering it, and it is not the supplier invoice: it is landed cost plus the cost to serve the order — fulfillment, outbound shipping subsidy, payment fees, a returns allowance — with a buffer on top that depends on whether the stock is reorderable, discontinued, or last-call. Our clearance floor price guide has the formula, three worked archetypes, and a calculator; run every SKU in your tier map through it in week 10, before the depth is set, so that no offer in the plan can accidentally cross it.

Mechanics follow from the shape. Discount codes and automatic discounts schedule natively in Shopify with a start and end date. Compare-at price changes — the visible strikethrough markdowns that carry the public sale — do not: the price fields are catalog data, not campaign data, and there is no native “change these prices on Friday and put them back on Tuesday.” That gap is usually closed with the bulk editor and a calendar reminder, a CSV import at midnight, or an app. Our guide to scheduling a sale on Shopify walks through all five methods and which one fits which sale. Two settings to confirm regardless of method: scheduled discounts run on the store’s timezone, so check it before entering dates, and the Combinations settings on every discount decide whether a leaked welcome code can land on top of a marked-down price.

One honest note about our own tooling, because it is a candidate here. We built Auto Markdown to do three things a markdown-led BFCM needs: apply compare-at markdowns for a window, restore every original price when the window closes, and refuse to price any product below a floor you set per product as a fixed amount, a percentage, or a multiple of cost. It keeps a history of every change so the before-and-after velocity is a report rather than an archaeology project. What it does not do matters just as much: it does not create discount codes or automatic discounts, does not build bundles or spend tiers, does not manage free-shipping thresholds, and does not touch checkout or email. If your event is code-led or bundle-led you do not need it. If it is markdown-led on more than a few dozen SKUs, scheduled changes with a guaranteed revert are the job it exists for, and the free plan covers 50 tracked products, which is more than most hero and doorbuster sets. It has no App Store reviews as of this writing — we launched it recently — so judge it on a test store in week 6, not on social proof.

Inventory and cash planning: buy for the forecast, not the headline

Inventory is decided in week 11 because everything else in the plan depends on it and because suppliers, freight, and customs do not care about your marketing calendar. The forecast method we use is deliberately simple: last year’s BFCM units per SKU, multiplied by a growth assumption you can defend from this year’s run rate, multiplied by an uplift for any SKU whose offer is deeper than last year’s. Then the hero SKUs get extra coverage, because a sold-out hero at 9 a.m. is a campaign without a front door, and the protected tier gets none, because it is not being discounted. If you have no last year, use the best four weeks of the current year as the base and assume the event week is three to five of those weeks stacked together — a judgment, not a measurement, and one to revise once you have your own data.

Sell-through targets keep the forecast honest. Our rules of thumb: plan hero SKUs to 80–90% sell-through by the end of Cyber Monday, core catalog to 60–70% with December to finish the rest, and never buy for a “sold out” headline on anything except the heroes. Anything you plan to sell through above 90% you are planning to run out of, and anything below 50% you are planning to clear at a deeper discount in January. Write the target next to each SKU in the tier map so that the Sunday readouts during event week have something to be measured against.

Cash is the half of this section most guides leave out. The money goes out in September and October — supplier deposits, balance payments on delivery, inbound freight, packaging, temporary staff, ad budgets loaded before the campaigns run — and comes back in the last week of November, minus the discount, minus the returns that arrive in December. Shopify Payments pays out on a schedule that depends on your country and settings; check it under Settings and put the actual dates in the calendar. A cash calendar is a single sheet with every dated outflow and every expected inflow, and its only purpose is to show you the lowest point and the date it happens. If that point is uncomfortable, the fixes are all September fixes: a smaller hero buy, a supplier payment term, or a smaller ad budget. There are no November fixes.

An illustrative example: one hero SKU from purchase order to leftovers

Say a store sells a $60 hero at a $22 landed cost and plans 30% off for the weekend, so $42 per unit and $20 of gross profit against $38 at full price. Last year it sold 700 units over BFCM; the store is running 25% ahead of last year and the offer is a little deeper, so the forecast is 700 × 1.25 × 1.15, about 1,000 units, and the buy is 1,200 to give the hero an 83% sell-through target and a cushion for the Saturday. The purchase order is $26,400, paid half on order in September and half on delivery in the second week of November. If the weekend sells 1,000 units, the hero earned $20,000 of gross profit on $42,000 of revenue and left 200 units in stock.

Those 200 units are the part to plan now, not in December. The floor for this SKU — landed cost plus cost to serve, with a reorderable buffer — might sit around $31, which means there is room for a January ladder to 35% and then 45% without crossing it, but not for a 60% “everything must go.” Leftovers that are planned get a scheduled ladder and a floor; leftovers that are discovered get a panic markdown in the second week of January. The three-bucket diagnosis, the ten clearing methods ranked by recovery rate, and a thirty-day sprint you can copy are all in our guide to clearing excess inventory on Shopify, and the right time to read it is week 11, when the buy is being decided.

Site readiness: speed, mobile, theme freeze, apps, checkout

The traffic on Black Friday is not a scaled-up Tuesday. It is more mobile, more impatient, and more likely to arrive from an email tap or a paid ad on a slow connection. Shopify’s own infrastructure is not the risk — Shopify reported processing a record $5.1 million in sales per minute at 12:01 p.m. EST on Black Friday 2025 across its merchants (Shopify, December 2025). The risk is everything you added on top of it: the theme, the apps, the scripts, and the checkout settings.

Speed and mobile

Adobe’s data for the 2025 US holiday season puts 56.4% of online transactions on smartphones, up from 54.5% the year before (Adobe, January 2026), and on Cyber Monday specifically 57.5% of sales came from mobile devices (Adobe, December 2025). Record a mobile speed baseline in week 8 on the pages that will carry the traffic — the BFCM collection, the top three hero product pages, the cart — using a throttled connection, and treat that number as the one you must not get worse than. The changes that reliably help are boring: compress hero images and serve them at the size the theme actually renders, remove any section on the collection page that loads a script and is not selling anything, and defer every third-party pixel that does not need to fire before first paint.

Theme freeze

Duplicate the live theme in week 8 so that a known-good copy exists, then freeze the live theme from the first week of November. Freeze means no new sections, no new apps that inject code, no design tweaks, and no “quick fix” on the Thursday night. Shopify’s own advice to developers before BFCM is blunt: do not ship big new features, and tidy up the fragile parts of the codebase instead (Shopify Partners). Content changes — a hero banner, a collection description, an announcement bar — are not code changes and can be scheduled through the theme editor, but even those should be made by one named person from a written list. If something does break during the event, the rollback plan written in week 3 is “publish the backup theme,” and you should have timed how long that takes.

App audit

List every installed app in week 8 with three columns: what it does, whether it injects code into the storefront, and whether anyone has looked at it in the last ninety days. Remove the ones that fail the third test — Shopify’s BFCM checklist makes the same recommendation, to review and remove unused apps and scripts before traffic rises (Shopify). For the ones that stay, know what happens if each one goes down: a review widget that fails to load is cosmetic; a currency converter or a discount app that fails can show wrong prices or block add-to-cart. The apps that touch price, cart, or checkout get a named owner and a test in week 3, and nothing new gets installed after the freeze.

Checkout and accelerated payments

Baymard’s running average across 50 studies puts documented cart abandonment at 70.22%, and of the reasons shoppers give for leaving during checkout, the top ones are extra costs (40%), delivery too slow (20%), being asked to create an account (18%), a checkout that is too long or complicated (17%), and website errors or crashes (17%) (Baymard Institute). Shopify’s 2025 holiday survey of 18,000 shoppers found 48% had abandoned a purchase in the past year because of a complicated checkout (Shopify, October 2025). Every item on that list is a setting or a sentence you control: shipping costs and delivery estimates shown before checkout, guest checkout on, a returns policy linked from the cart, and a test order placed on a real phone.

Accelerated checkouts — Shop Pay, Apple Pay, Google Pay, PayPal, Amazon Pay — pre-fill a returning customer’s payment and shipping details and appear both as buttons on product pages and in the express section at the top of checkout, ordered dynamically to show the fastest method first (Shopify Help Center). Shopify’s own numbers for BFCM 2025 show 32% of orders placed with Shop Pay and a 39% year-over-year increase in Shop Pay sales (Shopify, December 2025); Shopify also claims Shop Pay converts “as much as 50% better” than guest checkout, citing a consulting-firm study it commissioned in 2023 (Shopify) — treat that as the vendor’s claim about its own product, but note that the help center warns that hiding accelerated options “might have a negative impact on your conversion rates.” The practical instruction is short: turn every one of them on that your payment setup supports, and include each in the week-3 test pass.

The week-3 test pass, as a list, because it is the one that catches the expensive mistakes:

  • Five canary SKUs — one hero, two core, one protected, one clearance — checked on the storefront in an incognito window on a phone after every price change, with the compare-at strikethrough visible.
  • A real order through each payment method you offer: card, Shop Pay, PayPal, and any wallet or buy-now-pay-later option, then refunded.
  • The worst-case stack: the deepest markdown plus every code that could legally apply plus free shipping, priced out against the floor.
  • The free-shipping threshold re-checked against discounted order values, because a threshold set for full-price carts can be crossed by fewer units at sale prices.
  • Abandoned-checkout and order-confirmation emails sent and read on a phone, with the sale pricing and shipping windows correct.
  • Shipping rates and delivery estimates shown at checkout for your top three destinations, including one international if you ship cross-border — 16% of all orders over BFCM 2025 were cross-border, per Shopify’s release.

Owned channels: the list you build in September pays in November

Email and SMS are the channels whose cost does not rise with the auction, which is why they carry the launch. But they only carry what is on the list, and the list is built before the event, not during it. Shopify’s 2025 holiday survey found 26% of shoppers start their holiday shopping by the end of September and 49% name discounts as the thing that keeps them loyal to a brand after the holidays, ahead of free shipping and returns at 41% (Shopify, October 2025). A subscriber who joins in September is a shopper you reach for free in November; one who joins on Black Friday is a shopper you already paid to acquire.

List growth, weeks 9 through 4. Replace the generic “10% off your first order” popup with an early-access promise: “Get our Black Friday prices two days before everyone else.” It costs nothing, it self-selects for people who intend to buy, and it means the November invitation is a promise kept rather than a promotion. Put the same offer in the footer, on the post-purchase page, and on the order-confirmation email. Add an SMS opt-in with explicit consent language, because the event-week SMS is the highest-response send you will make and it cannot go to anyone who has not opted in. Set a subscriber target for 31 October and report against it weekly.

Segmentation, week 4. Four segments do most of the work: VIPs (two or more orders, or any order in the last twelve months, adjusted to your purchase cycle), last year’s BFCM buyers, engaged non-buyers (opened or clicked in the last ninety days, never ordered), and lapsed customers (ordered once, more than a year ago). VIPs and last year’s buyers get early access. Engaged non-buyers get the teasers and the launch. Lapsed customers get one send — the launch — and are suppressed from the rest, because a five-email weekend to someone who has ignored you for a year is how deliverability gets damaged. Suppress anyone who bought in the last seven days from the launch email; they will see the price they just paid drop, and the goodwill cost is larger than the order you might get.

Cadence. The calendar below is the one we recommend for a store running a Tuesday VIP window and a Friday public launch. It is deliberately sparse before event week and dense during it, and the SMS count is capped at three for the whole event week. Warm up sending volume through October so that the Black Friday launch is not the largest send your domain has ever made; inbox providers treat a sudden ten-fold spike as a signal, and a launch email in the spam folder is a launch that did not happen.

DateSendAudienceChannel
Thu 29 Oct“Save the date” — the sale exists, early access exists, join the listFull listEmail
Thu 12 NovTeaser: three hero products revealed, no prices; wishlist promptFull list minus lapsedEmail
Wed 18 NovEarly-access invitation with the date and the access methodVIPs and last year’s buyersEmail
Tue 24 Nov, 08:00Early access is openVIPs and last year’s buyersEmail + SMS 1
Thu 26 Nov, 18:00“Tomorrow” — hero prices previewed, launch time statedFull list minus lapsedEmail
Fri 27 Nov, 07:00Launch — hero prices, category offers, the bundleFull list, minus 7-day buyersEmail + SMS 2
Fri 27 Nov, 12:00Midday reminder — bestsellers so farOpeners who have not orderedEmail
Fri 27 Nov, 19:00Low-stock update — what is nearly goneClickers who have not orderedEmail
Sat 28 Nov, 10:00Social proof — what people bought, the bundleNon-buyersEmail
Sun 29 Nov, 10:00Last day of Black Friday prices; Cyber Monday previewNon-buyersEmail
Mon 30 Nov, 07:00Cyber Monday offer — a different angle, not a deeper cutFull list minus 7-day buyersEmail
Mon 30 Nov, 19:00Final hoursNon-buyersEmail + SMS 3
Wed 2 DecThank-you and shipping update; no offerWeekend buyersEmail

Two notes on the Monday. Adobe reported Cyber Monday 2025 spending peaked in the 8 p.m. to 10 p.m. hours at $16 million per minute across US retail (Adobe, December 2025), which is why the final-hours send is in the evening and not at noon. And the Cyber Monday offer should be a different shape — free shipping, a bundle, a gift-with-purchase — rather than a deeper version of Friday’s markdown, because a deeper Monday teaches every Friday buyer to wait next year.

Paid media: what changes in Q4, and what to do about it

Auction prices rise into the event

Everyone bids in the same week. Tinuiti’s analysis of its Meta advertisers — mostly retail and ecommerce brands — found Meta CPMs rose 12% year over year across the five days from Thanksgiving through Cyber Monday 2024, climbing at least 11% on each of the five days and 16% on Thanksgiving Day itself (Tinuiti, December 2024). That is one agency’s client base, not the whole market, and it measures the year-on-year change rather than the jump from October to November; but the direction is the same in every dataset we have seen, and the implication is the same too: an impression bought on Black Friday costs more than the same impression bought in October, and it competes with more offers for the same attention.

Five consequences for the plan

  • Prospect early, retarget late. Cold audiences are cheapest to reach in October and the first half of November; build the retargeting pools then, and spend event week on people who already visited, carted, or opened.
  • Set the return threshold from discounted margin. A campaign that was profitable at a given return on ad spend in October is not profitable at the same number when every order carries 25% less gross profit. Recompute the break-even ROAS per offer shape from the margin table above before budgets are loaded in week 2.
  • Protect brand search. Competitors and affiliates bid on brand terms during BFCM; the cheapest clicks you will buy all weekend are people searching for your name, and they should land on the sale page, not the homepage.
  • Feed hygiene before launch. Shopping feeds pick up compare-at prices; confirm the sale prices propagate on Friday morning and that no product is advertised at a price it is not selling for. This is also the reason feed refresh timing belongs in the runbook.
  • No new campaigns on Friday morning. Anything launched cold on 27 November spends the most expensive day of the year learning. Campaigns go live in week 2 at low budget and are scaled, not created, during the event.

Customer service and fulfillment: the part that decides whether they come back

Operations is scheduled for week 5 because every decision in it has to be published before the first teaser goes out. A shopper who reads “free returns” in the teaser and “final sale” at checkout is a support ticket, a chargeback, or a review — and a returns policy changed mid-campaign is a legal exposure in most jurisdictions.

Returns policy. Decide the window, the condition, who pays return shipping, and whether any tier is final sale, then publish it on the policy page, the FAQ, the product page, and the order emails. Shopify’s own checklist recommends clarifying and displaying the policy before promotions launch and considering an extended window through the holidays, because a gift bought on 27 November may not be opened until 25 December (Shopify). Extending the window costs you a longer tail of returns in January; not extending it costs you the customer. Our recommendation is to extend, budget the returns allowance into the floor price accordingly, and mark only genuine clearance as final sale, clearly, on the product page itself.

Shipping cutoffs and the law behind them. USPS, UPS, and FedEx publish their holiday shipping deadlines each autumn; put yours on the site the day they are available, and state a realistic dispatch time at checkout. In the US the FTC’s Mail, Internet, or Telephone Order Merchandise Rule requires a reasonable basis for any shipping time you state and, if you state none, a reasonable basis for shipping within 30 days; if you cannot meet it, you must notify the customer, offer a revised date or the option to cancel, and refund promptly if they decline (FTC). A BFCM order volume you did not staff for is exactly how a store drifts past that line without noticing. After the last cutoff passes, the offer that still converts is a gift card, delivered instantly.

Fulfillment. Pre-pack the hero SKUs in week 1 in the quantities the forecast expects for Friday and Saturday; a pre-packed doorbuster is a label, not a pick. Print pick lists by SKU rather than by order for the first twelve hours, use bulk fulfillment in the admin, and stage packaging for double the Friday forecast. Decide in advance what a backlog looks like — orders older than 48 hours unfulfilled, say — and what triggers a second shift.

Support. Five questions generate most event-week tickets: where is my order, can I apply the sale price to the order I placed yesterday, is this in stock, what is the return policy, and the code did not work. Write a macro for each in week 5, decide the price-adjustment policy (a seven-day price guarantee before the sale is cheaper than the tickets and the chargebacks it prevents), set support hours and automatic replies in Shopify Inbox, and make the order-status page the first link in every reply. Book the extra pair of hands for Friday and Monday in week 5, not week 1.

The event-week runbook

The runbook is a document that exists on paper by the end of week 1, with a name against every line. Its purpose is to make sure nobody improvises at 12:01 a.m., and its second purpose is to make the Sunday readouts possible, because a readout needs a plan to be read against. The day-by-day first, then Black Friday morning hour by hour.

  • Monday 23 November. Final stock count reconciled to the admin. All scheduled discounts and markdown rules reviewed one last time in the store’s timezone. Canary SKUs listed with their expected prices for each phase. Support macros loaded. The theme has not been touched since 8 November.
  • Tuesday 24 November. VIP early access opens at 08:00 via the password-gated collection or the timing code. First real orders at sale prices: verify pricing, discounts, shipping rates, and confirmation emails on the first ten. This is your dress rehearsal with real money.
  • Wednesday 25 November. Read the VIP window: which heroes are moving fastest, whether the bundle attaches, whether anyone found a stack you did not model. Adjust hero replacements, not depths. Send the “tomorrow” email at 18:00 on Thursday, so schedule it today.
  • Thursday 26 November (Thanksgiving). A quiet day with one job: confirm the midnight switch is armed and the on-call person for 00:01 knows what to check. Some stores launch publicly on Thursday evening; if yours does, everything in the Friday-morning table shifts six hours earlier.
  • Friday 27 November. The hour-by-hour table below.
  • Saturday 28 November. In our experience Saturday traffic softens from Friday and the shoppers who do come are more deliberate. Replace sold-out heroes in the hero slots, push the bundle, and run the first inventory-versus-target readout against the sell-through numbers in the tier map.
  • Sunday 29 November. “Last day of Black Friday prices” is the message; Cyber Monday is previewed, not launched. Confirm the Monday offer is scheduled and that Friday’s category markdowns end or roll over exactly as planned at midnight.
  • Monday 30 November. Cyber Monday offer live from 00:01, launch email at 07:00, final-hours email and SMS at 19:00 for the evening peak. Confirm the 1 December reverts are armed before you go home.

Black Friday morning, hour by hour (Eastern time)

Shopify’s aggregate sales across its merchants peaked at 12:01 p.m. EST on Black Friday in both 2024 and 2025, at $4.6 million and then $5.1 million per minute (Shopify, December 2024; Shopify, December 2025). Your own peak will depend on your audience and your send times, but the shape — a midnight bump from the people who were waiting, a morning ramp driven by email, and a midday peak — is consistent enough to plan around.

TimeActionWhat to check
23:45 ThuOn-call person online; runbook openScheduled switch still armed; support auto-reply set; nobody is in the theme editor
00:01Public prices go liveFive canary SKUs on a phone in incognito: price, strikethrough, add-to-cart; collection page loads under the baseline
00:15Real test orderOne cheapest-SKU order through Shop Pay and one through card; confirmation email arrives with correct pricing; refund later
00:30Ads and feedsRetargeting campaigns live at planned budget; shopping feed shows sale prices or has a refresh scheduled
06:00Overnight readoutOrders versus plan, checkout error rate, hero units remaining, any support tickets about price or codes
07:00Launch email and SMS sendDeliverability dashboard for bounces and spam complaints in the first thirty minutes; site speed under the email spike
07:30First conversion checkCheckout conversion versus the VIP window; payment declines; any app dashboard showing errors
09:00Inventory sweep oneHero sell-through against the 83%-by-Monday line; pause ads on anything under 15% stock remaining; queue replacements
11:00Pre-peak checkSupport queue age; fulfillment started on overnight orders; announcement bar and shipping messaging accurate
12:00Midday email; peak hourNobody changes anything for the next two hours except swapping sold-out heroes
14:00Support triageTicket volume by macro; price-adjustment requests handled per policy; order-status page linked in every reply
17:00Inventory sweep twoReplace sold-out heroes in hero slots and ads; confirm the low-stock email list is accurate
19:00Low-stock emailEvening traffic and conversion; fulfillment backlog against the 48-hour trigger
22:00Day-one readoutRevenue, orders, AOV, contribution margin estimate, discount spend, top ten SKUs, three problems, Saturday adjustments

What to monitor all weekend

Eight numbers, on one screen, refreshed hourly: orders per hour against the plan, checkout conversion rate, checkout error and payment-decline rate, average order value, discount spend from codes and automatic discounts (markdowns will not appear here — they report as the new price, which is why the day-one readout needs a margin estimate, not the Discounts column), units remaining on the top twenty SKUs, ad spend pacing against budget, and support first-response time. Anything else is a distraction until Tuesday.

What can break, and what you do

  • Prices did not switch, or switched for some products only. Usually a timezone mismatch on a scheduled discount or a bulk edit that timed out partway. The fix is the canary check at 00:01 and a prepared CSV or rule you can re-run, not a manual edit of two hundred variants at midnight.
  • A code is stacking on the markdown. A welcome or influencer code left active is discounting already-reduced prices. Pause it; the worst-case stack should have been modeled in week 3, but a leak on the day is stopped by deactivating the code, not by editing prices.
  • A hero sold out. Swap the named replacement into the hero slot, the ads, and the low-stock email. Do not deepen anything else to compensate.
  • An app is throwing errors or slowing pages. Disable the app’s storefront embed if it is cosmetic; if it touches price or cart, roll to the backup theme with the app removed, which is why the rollback was timed in week 3.
  • The launch email went to spam. Resend to non-openers from a warmed sending domain in smaller batches; the prevention was the October warm-up.
  • Shipping rates are wrong or missing for a region. Almost always a rate profile that did not include the sale products or a weight-based rate that breaks on bundles. Fix the profile; do not fall back to free shipping everywhere as a patch.
  • Fraud and declines spike. Sale weekends attract card testing. Watch the decline rate, tighten fraud settings if the pattern is obvious, and do not manually approve high-risk orders to hit a number.

Post-BFCM: reverts, returns, retention, and reading the data

Revert on time. The most expensive BFCM mistake is not a discount that was too deep; it is a discount that never ended. A compare-at strikethrough still showing in the second week of December is a permanent price cut that trains customers never to pay full price, and a was-price that is no longer the real price is a reference-pricing problem in a growing list of jurisdictions. The revert is checked at 08:00 on 1 December against the same five canary SKUs, on a phone, in incognito, and then in the shopping feed. Stage the unwind rather than snapping everything back at once — heroes revert first, core catalog steps back over the week, clearance stays down on its ladder — but every step has a date that was entered in October. If you scheduled markdowns with a tool that reverts automatically, the check is still made; the point of the check is that a revert you did not confirm is a revert you cannot be sure of.

The returns wave. Returns from the weekend arrive in the second and third weeks of December and, with an extended holiday window, into January. They are a staffing problem and a stock problem: returned units need to be inspected and put back into sellable inventory quickly, because a returned hero is a full-margin sale in December if it is back on the shelf and a write-off if it sits in a bin until February. Track the return rate per offer shape, not just overall — deep hero cuts and final-sale clearance return differently, and the difference feeds next year’s floor calculation.

Retention of new customers. Shopify reported more than 94,900 merchants had their highest-selling day ever over BFCM 2025 (Shopify, December 2025). A weekend like that brings in first-time customers at a rate no ordinary week matches, and every one of them bought at a discount. The retention question is whether the second order happens at full price. The flow that works for us is not a discount: a thank-you on 2 December with shipping information and nothing to buy, a “how to use it” or “what goes with it” message once the order has been delivered, and the first full-price offer in the week before Christmas framed around the product they bought. Tag every weekend buyer as a BFCM cohort so that you can read their second-order rate in March, and resist the instinct to send them another 30% in January — that turns a discount buyer into a discount-only buyer.

Reading the data. Revenue is the number everyone reports and the least useful one. The post-mortem, due 11 December while memory is fresh, answers five questions in contribution-margin terms: which offer shapes made money after discount, ad spend, and an estimate of returns; which heroes pulled attach and which just sold cheap; what the list contributed versus paid; where the runbook was wrong; and what sell-through each tier reached against its target. Markdowns do not appear in Shopify’s discount reports — the sale simply happened at the lower price — so this analysis needs the original prices recorded somewhere, which is either a spreadsheet from week 10 or the history your markdown tool kept. December is not the end: Adobe counted 25 days in the 2025 season with more than $4 billion in US online spend in a single day, up from 18 the year before (Adobe, January 2026), and the plan for the three weeks after Cyber Monday belongs in the same document as the plan for the weekend.

Common mistakes

These are the failures we see most often on merchant stores, and two of them are in our own history, which is how they earned their place.

  1. Setting depth from a competitor’s headline. Their 40% may sit on a 70% margin and yours on 45%. Run the break-even multiplier on your own numbers before matching anyone, and remember the multiplier is in units, not revenue.
  2. Buying stock for a headline instead of a forecast. “Sold out in an hour” is a marketing line, not a plan. Plan heroes to 80–90% sell-through and everything else lower, and decide in September what happens to the leftovers.
  3. Starting the list in November. A popup that goes live on 20 November collects people who were already coming. The early-access promise has to be running from late September to have a list worth inviting.
  4. Touching the theme during event week. The Thursday-night “quick fix” is the leading cause of a broken add-to-cart on Friday morning. Freeze the theme from 2 November, duplicate it first, and know how long a rollback takes.
  5. Letting a code stack on a markdown. Shopify treats a marked-down price as simply the price, so any active code discounts it further. Pause evergreen codes during the sale, scope the rest to exclude sale collections, and model the worst case before launch.
  6. Launching new paid campaigns on Black Friday morning. A campaign created on 27 November spends the most expensive day of the year in its learning phase. Launch in week 2 at low budget; scale, do not create, during the event.
  7. No revert date. Every markdown entered without an end date becomes a permanent price cut by default. Enter the end date at the same moment as the start date, and check it on 1 December on a phone.
  8. Measuring the weekend in revenue. A record revenue day at a 15% contribution margin after ad spend and returns is a worse weekend than an ordinary day at 40%. Read the post-mortem in margin dollars per offer shape, or you will repeat the expensive parts next year.

FAQ

When should I start planning Black Friday for my Shopify store?

Twelve weeks before Black Friday, which for 27 November 2026 means the first week of September. The reason is inventory: purchase orders with realistic supplier lead times have to be placed by mid-September to land in the second week of November, and everything downstream — offer depth, creative, the email calendar — depends on knowing what stock you will have. If you are starting later, compress the middle weeks but do not skip the stock decision, the theme freeze in the first week of November, or the early-access invitation in the week before the event.

How much should I discount on Black Friday on Shopify?

As much as your margin allows on the products you want to move, and nothing on the products you do not. The arithmetic: a discount comes out of gross profit, so at a 50% margin a 40% cut needs five times the units to break even, while at a 64% margin it needs about 2.7 times. The tier structure we use is doorbusters at 40–50% on three to five SKUs, core catalog at 20–30%, a protected tier at 0–15% or excluded, and clearance at 40–70% with a floor price under every unit. For context, Adobe reported peak US discounts last season of roughly 25% in apparel and 31% in electronics, which is the environment your headline competes in, not a target.

Should I use discount codes or markdowns for Black Friday?

Markdowns for the public sale, codes only for early access. Event shoppers compare visible prices across tabs in seconds; a strikethrough advertises itself in the collection grid and in shopping feeds, while a code has to be found, remembered, and typed at your highest-traffic moment and sends part of your checkout traffic off to search for a better one. Codes have one BFCM job they do better than anything else: gating timing, so your list shops the same prices two or three days before the public, with no extra depth and therefore no stacking risk.

How do I schedule Black Friday prices to change automatically on Shopify?

Discount codes and automatic discounts schedule natively with start and end dates in the Discounts section, running on your store’s timezone. Visible compare-at markdowns do not schedule natively, because product prices are catalog data rather than campaign data; the options are the bulk editor or a CSV import run by hand at the switch time, Shopify Flow with custom API calls, or a markdown app that applies the sale prices on a date, restores the originals on the end date, and enforces a floor. Whichever you choose, verify five canary products on a phone within minutes of every scheduled change.

What should I do on Black Friday morning?

Follow a runbook written the week before. At 00:01 check five canary SKUs on a phone for price and strikethrough, place a real test order through Shop Pay and a card, and confirm ads and feeds show sale prices. At 06:00 read the overnight numbers and hero stock. At 07:00 send the launch email and SMS and watch deliverability and site speed. At 09:00 sweep inventory and pause ads on anything nearly sold out. Change nothing through the midday peak except swapping sold-out heroes, triage support at 14:00, sweep inventory again at 17:00, send the low-stock email at 19:00, and write the day-one readout at 22:00 in margin terms, not revenue.

What do I do with leftover inventory after Cyber Monday?

Run the plan you wrote in September, which is the point of writing it then. Revert the public sale prices on 1 December, let the heroes and core catalog sell at full price through the gifting weeks, and put genuine leftovers on a scheduled clearance ladder — 35%, then 45%, then deeper in January — with a floor price under every unit so the ladder cannot cross into selling below cost. Do not repeat the Black Friday depth in the first week of December; it teaches customers the sale never ended. Units that will not clear at the floor go to bundles anchored by a full-price bestseller, outlet channels, or liquidation, in that order.

Is Black Friday worth it for a small Shopify store?

Yes, if it is run as a margin event rather than a revenue event, and the smaller the store the more that matters. A small store cannot win on depth against retailers with 70% margins, but it can win on a tight hero set it actually has stock for, a list it grew through the autumn, bundles that hold margin on what it will not cut, and operations that ship on time. Shopify reported more than 15,800 merchants making their first sale ever over BFCM 2025 and more than 94,900 having their best day ever, which is a large-number way of saying the weekend is not reserved for large stores.

Do I need extra apps for Black Friday on Shopify?

Fewer than the ranking guides suggest. The audit in week 8 usually removes more apps than it adds, because every storefront script is a speed cost on the day you can least afford one. The three jobs that genuinely need tooling are email and SMS with segmentation, markdown scheduling with a guaranteed revert and floor protection if your sale is markdown-led across many SKUs, and a bundle builder if your theme cannot show bundles natively. Everything else — countdown timers, spin wheels, stock counters — is optional, and anything installed after the theme freeze in the first week of November is a risk you do not need.


— Palm Beach Themes is a Miami-based Shopify app studio. We use the apps we sell, so every claim in this post comes from our own merchant testing.

If your Black Friday is markdown-led, the mechanics that decide whether it makes money — prices that switch on a date, a floor under every SKU, and a revert that actually happens on 1 December — are what Auto Markdown automates. Build the rules in week 6, rehearse them on a small October sale, and the event week runs from the runbook instead of from the bulk editor.