โ˜…free guideโ˜…

The Discount Code Audit What to check before Black Friday

Every discount code you've ever made in Shopify is still sitting in your admin somewhere. Any code without an end date stays active until someone switches it off. So if you gave an influencer 20% last year and nobody ever ended it, that code could still work tonight.

This is the full audit, with every setting to check and what I'd set each one to before Black Friday Cyber Monday (BFCM) kicks off.

Why old codes matter more this year

Coupon browser extensions like Honey and Capital One Shopping have tested codes at checkout for years. A shopper lands on your checkout, the extension runs through the codes it knows for your store, and applies whichever one saves the most.

AI shopping tools can now do a version of the same thing, inside the AI apps your customers already use. One creator recently showed an AI agent going off to hunt down discount codes for a product, then testing them in the cart one by one until it found the biggest saving. It's early and it won't work on every store, but I'd plan as if any live code that's ever been posted anywhere can be found.

Then add BFCM. It's the week your margins are ALREADY thinnest, because you're discounting on purpose. An old influencer code stacking on top of your sale is money you never decided to give away. ๐Ÿ’ธ

Step 1 Find everything that's still live

Where to clickShopify adminDiscounts

From your Shopify admin, go to Discounts. Look at everything with an Active status and make a quick list (a note on your phone is fine) with four things for each code:

  • who has it (influencer, welcome popup, a past campaign, customer service)
  • the value
  • the end date, if there is one
  • how many times it's been used

Now sort the list into two piles: keep, or end. If you can't remember what a code was for, end it. You can always make a new one in two minutes, and a mystery code with no end date is the last thing you want sitting on a coupon site.

For anything you're ending, open it, click Set end date under Active dates and make it today.

Step 2 The settings to check on every code you keep

Open each code you're keeping and go through it top to bottom. These are the settings on an amount off discount code (the labels shift a little on Buy X get Y and free shipping codes, so match them up in your own admin).

Setting What to check What I'd set before BFCM
Value (Percentage or Fixed amount) Is the amount still right for your margins today? Lower it or end it if your costs have gone up since you made it
Applies to All products, or specific collections or products? For codes you keep live during your sale, point them at a collection of full-price products only (more on this in Step 5)
Minimum requirements (Minimum purchase amount or Minimum quantity of items) Can someone use a big code on a tiny order? Add a minimum purchase amount to your bigger codes so the discount only kicks in when the order is worth it
Eligibility (All customers, Specific customers, Customer segments, Markets) Is a code meant for one group open to everyone? Lock VIP and win-back codes to a segment or specific customers
Maximum discount uses Is there any limit at all? Tick "Limit number of times this discount can be used in total" and set a number. Tick "Limit to one per customer" on welcome and first-order codes
Combinations Which discount classes can it combine with: Product discounts, Order discounts, Shipping discounts? Leave all of them unticked unless you've decided on a stack on purpose
Active dates Is there an end date? EVERY code gets one. No exceptions

The Combinations box is the one to go slowly on. In Shopify, discounts don't combine unless you tick the classes in each discount's own settings, and when they do combine, a customer can use up to 5 product or order discount codes plus 1 shipping code on the same order.

Step 3 Influencer codes

Influencer codes are made to be shared publicly, which also makes them easy to find. Set them up like this:

  1. One code per influencer. NEVER one shared code for your whole ambassador group. If a code turns up somewhere it shouldn't, you know which one it is and you can end it without breaking everyone else's.
  2. A total usage limit. Pick a number a bit above what you expect that person to drive, and top it up if they smash it. A cap stops a leaked code from running forever.
  3. An end date. The end of the campaign plus a couple of weeks for stragglers.
  4. Limit to one per customer, so one follower can't use it on every order.
  5. Combinations off, especially with your BFCM sale.

If you work with a lot of creators or affiliates, unique codes from a bulk code app make this much easier to manage. One example: Seguno's Bulk Discount Code Bot now works with Shopify Sidekick, so you can ask Sidekick which code sets show signs of having leaked, which campaign or channel redeemed the most, and which old sets to deactivate. ๐Ÿ”

Step 4 Your welcome code

Your welcome code goes to every new subscriber, so small settings here add up fast.

  • Limit to one per customer. Shopify tracks this by email address or phone number. Someone with three email addresses can still get around it, but it stops most casual reuse.
  • Tie it to email signup. The strongest setup is a unique code for EACH new subscriber, created by your email platform. Klaviyo, for example, can generate unique Shopify codes for each person through a sign-up form or welcome flow, with a prefix like WELCOME so you can still spot them in your orders. Each person gets their own single-use code, so there's nothing shared to leak.
  • If you use one shared code (WELCOME10 and friends), give it the one-per-customer limit and a minimum purchase amount, and check it hasn't been posted on coupon sites.
  • Decide what it does during BFCM. I'd keep welcome codes from combining with your sale. A new subscriber still gets the sale price, which is a good deal!

Step 5 Check combinations against your sitewide sale

This is the step that saves the MOST margin. How you protect yourself depends on how your sale is built.

If your sale is an automatic discount, the Combinations settings are doing the work. Shopify applies product discounts first, then order discounts to the new subtotal, then shipping discounts last. Open your sale AND every live code, and check which classes each one is allowed to combine with. If your sale is set to combine with order discounts, every order-level code you have is now stacking on top of it.

If your sale is done by dropping prices (a compare-at price with a lower sale price), there's no second discount for Combinations to block. A discount code applies straight to the already-reduced price. Your two options: set Applies to on your live codes to a collection of full-price products only, or end those codes for the sale window.

A worked example (made-up numbers, run your OWN)

Say you sell a $100 product that costs you $40 to make and ship.

  • Full price: customer pays $100, you keep $60.
  • 30% sale: customer pays $70, you keep $30. That's the deal you planned for.
  • 30% sale + a 20% code on top: the 20% comes off the $70, so the customer pays $56 and you keep $16. They're getting 44% off.
  • 30% sale + a $20-off code: customer pays $50. That's HALF price, and you keep $10.

So one leftover code takes you from $30 profit per order to $16, or to $10. Across 200 BFCM orders in this example, the 20% stack is $2,800 of profit gone. ๐Ÿ˜…

Your pre-BFCM checklist

Tick these off before your sale goes live:

That last one takes five minutes, and you get to see exactly what your customer would see!

Your next move

If you'd love help getting your offers, your codes and your margins ready for a profitable Black Friday, that's what my Growth Lab is for. Jump on a call to learn more. โœจ