BFCM, Shopify brands, part 3

BFCM code freeze: dates, rules and what is still allowed

When to freeze your Shopify store before Black Friday, what counts as a change, what is still allowed, and how to end tests before the freeze.

Benchmyrk teamPublished 8 min read

The short answer

  • Freeze on Monday 16 November. That is eleven days before Black Friday (27 November). It leaves a full working week to find and fix anything the last changes broke, while traffic is still normal.
  • A freeze is a list, not a mood. Write down what counts as a change (theme publishes, app installs, new discounts and checkout blocks, new tests) and who may still change what.
  • Some things stay allowed: reviewed copy changes, the sale discounts you already built, tests ending on their planned date, and pausing anything that misbehaves.
  • End every test before the freeze, and ship or drop each winner by then. A test that is still running on 16 November is either an unread result or a change nobody reviewed.

Who this is for: Shopify brands doing roughly $1M to $10M a year, where an in-house team, an agency and several app vendors can all change the storefront.

The 2026 timeline

The 2026 timeline
WhenWhat happens
Thu 22 Oct to Fri 30 OctWrite the freeze list and the owner list. Share both with your agency and app vendors.
Sun 25 OctLatest start for a three-week test that should end before the freeze.
Sun 1 NovLatest start for a two-week test.
Thu 12 NovTests end. Read results the same day.
Fri 13 NovShip or drop each winner. Final theme publish, if any. Back up the live theme.
Mon 16 NovFreeze starts. Only the changes on the "allowed" list from here on.
Thu 26 Nov to Mon 30 NovThe sale. Watch guardrails, orders and error reports daily.
Tue 1 DecFreeze ends. Release anything that waited.

Why Monday 16 November

The date is our suggestion, not a Shopify rule. Three reasons put it there:

  1. You need time to notice a problem. Some breakages show up only on a payment method, a market or a device you didn't check. A week of normal traffic is usually enough for a support ticket, an error report or a dip in checkout completion to surface.
  2. Your partners slow down. Agencies and app vendors are busy with every other client in the last two weeks. A change that goes wrong on 24 November may not get a fix until after the sale.
  3. It lines up with the test calendar. Three-week tests that start by 25 October end by about 15 November, so 16 November is the first day nothing is still collecting data.

Moving it. If an agency ships most of your changes, move the freeze earlier, to Monday 9 November, and keep the second week for agency QA. If your team ships everything in house and has a tested rollback, you can keep 16 November for the storefront and still freeze checkout and discounts a week earlier. Don't move it later than 16 November for anything that touches checkout, prices or discounts.

Step 1: Write down what counts as a change

Vague freezes fail because everyone has a different picture of "a small change". List the change types and decide each one:

Step 1: Write down what counts as a change
ChangeDuring the freeze
Publishing a theme, or editing the live theme's codeNo
Installing an app, or turning on a new app embedNo
New Shopify Functions discounts, or changing their logicNo, except the sale discounts already built and tested
Adding or moving checkout blocks or thank-you page blocksNo
Starting a new test, or raising a test's trafficNo
Changing the consent banner or trackingNo (part 2 explains why)
Copy and images in theme sections, through the editorYes, reviewed by a second person
Turning on sale discounts and banners on their planned datesYes, as planned
Pausing a test or an app that misbehavesYes, always

Two Shopify details are worth adding to the list:

  • Back up the live theme before the freeze. Shopify lets you duplicate a theme as a backup copy, so you can discard changes and go back. The theme library holds up to 20 themes; if yours is full, Shopify asks you to delete one first, and deleting is permanent (Shopify Help Center, read 12 October 2026).
  • Scripts are gone. Shopify Scripts stopped running on 30 June 2026. If a past sale relied on a Script for tiered or bundle pricing, that logic now has to come from a Shopify Functions app, and that app needs to be installed and tested well before 16 November.

Step 2: Decide who may still change what

Pair the freeze list with an owner list (part 1 has a template). For each area, name one person who can approve a change during the freeze and one person who can roll it back. An approval nobody can reach on a Saturday is not an approval.

Agree with your agency in writing: what they will and won't ship after 16 November, how they request an exception, and who on your side says yes. If they work for many stores, ask when their own freeze starts. It may be earlier than yours.

App vendors are the hardest to freeze, because some push updates to their app embeds without telling you. You can't stop that, but you can make it visible: check each app's changelog before the sale and keep a list of who to call.

Step 3: Back-plan your tests from the freeze

Count backwards from the freeze, not forwards from today. A test needs its full length, then a day to read the result, then a day to ship or drop the winner, all before 16 November.

The latest start date for each testExample

Illustrative inputs, not data from a real store. Days computed with the same sample-size formula Benchmyrk's test planner uses (two-sided, 95% confidence, 80% power, two versions, even split).

Inputs: 60,000 visitors a week (about 8,571 a day), a 2.5% conversion rate and a 10% relative change to detect, the same store as part 1. Every test should end by the morning of Thursday 12 November.

The latest start date for each test
TestDays neededLatest start
Landing page, every visitor enters, judged on conversion rate15Wed 28 Oct
Product page of best sellers (60% of visitors), conversion rate25Sun 18 Oct
Offer format, every visitor enters, judged on profit per visitor ($32 gross profit an order, spread $26)24Mon 19 Oct

The product-page and profit tests should already be running when this part is published. If they aren't, either accept a larger smallest-detectable change or drop them for this year and plan them for January. Both are better than cutting a test short and reading a number that isn't there yet. The sample size and test duration guide shows how the inputs change the length.

Step 4: End tests on a date, not on a feeling

Set the end time when you launch, so the test stops even if everyone is busy. Then decide what happens to the winner:

  • Ship it before the freeze, so the sale runs on a page that has been live for at least a few days.
  • Or drop it and keep the original. "Inconclusive" is a valid outcome. Decide in advance which version you run if the test can't tell them apart (usually the simpler one).

Don't leave a test running "to keep earning" through the sale unless you planned it that way. A result from BFCM week describes BFCM shoppers, and an unplanned test is a change nobody reviewed. Part 8 covers the cases where testing through the peak is deliberate.

Step 5: Know how to stop anything in one click

During the freeze, the most important change is the one that undoes something. For each test, app and discount that will be live during the sale, write down how to turn it off and who can do it. Test it once before 16 November.

Guardrails help here. A guardrail is a metric that must not get worse, such as checkout completion, page errors or missing page elements. It is a stop signal, not a second chance to find a winner. See guardrail metrics.

Mistakes to avoid

  • A freeze that only covers the theme. App installs, discount apps and checkout blocks change the store just as much.
  • "Just one more test" in the last week. It can't reach its sample before the sale, so it can only produce noise or a false winner.
  • No backup of the live theme. If the last publish breaks something, you want to go back in minutes, not rebuild.
  • Exceptions approved in a chat thread. Write them in one place, with who asked, who approved and how to undo.
  • Forgetting the agency's own freeze. Ask for their dates in October.

Checklist

  1. Freeze date agreed (16 November, or earlier for agency-heavy teams).
  2. Freeze list written: what counts as a change, and what is allowed.
  3. Owner list with an approver and a rollback person per area.
  4. Every test has an end time before 12 November.
  5. Each winner shipped or dropped by 13 November.
  6. Live theme duplicated as a backup.
  7. A one-click stop written down, and tested, for every live test, app and discount.

Agreeing a freeze with clients? See The Black Friday code-freeze agreement for agencies. The full season plan is in What to test before Black Friday and Cyber Monday on Shopify.

Sources

  1. Shopify Help Center, Duplicating themes, read 12 October 2026
  2. Shopify Scripts will be deprecated on June 30, 2026 (Shopify developer changelog), read 11 October 2026

Plan your BFCM tests on your own store.

Stores with up to 5,000 orders in 30 days can start the 14-day free trial on Shopify. Above that, book a demo and we'll walk through it on demo data.

Book a demo