(03) 8832 8005

Your EOFY sale did 412k in a week. The team screenshots the Shopify dashboard, drops it in Slack with a rocket emoji, and everyone moves on to planning the next one. Nobody asks the only question that matters: how much of that money would have arrived anyway?

This is the most expensive habit in Australian ecommerce. We run promotion after promotion, judge each one on top-line revenue, and never find out which ones actually made us richer. A landmark study of six FMCG categories by Ailawadi, Lehmann and Neslin found that 53% of analysed promotions generated negative economic profit once pull-forward and cannibalisation were properly accounted for. More than half of them lost money, and the brands running them had no idea, because the revenue number looked great.

The fix is not a smarter promotion. It is a debrief. Sixty minutes, a fixed agenda, and a data pack you build before anyone walks in the room. Do it after every campaign and within four promotions you will be running a materially more profitable calendar. Here is the exact process we use with members.

Why most campaign reviews are just a revenue victory lap

Watch what happens in a typical post-sale meeting. Someone reads out revenue, orders and sessions. Someone else says the creative felt strong. A third person mentions the warehouse was slammed on day two. Then the calendar comes out and the group starts arguing about whether the next sale should be 25% or 30% off.

Nothing in that conversation tells you whether the promotion was worth running. Revenue during a sale is guaranteed to go up. That is what a discount does. The question is whether the extra volume paid for the margin you gave away, the customers you trained to wait, and the orders you stole from next month.

The maths is unforgiving because discounts come off the top line while your costs stay put. Take a 20% discount on a product with a 50% gross margin. Your margin falls to 37.5%, which is a 25% reduction in profitability on every unit sold. You need a very large volume lift just to stand still, and most operators never calculate what that break-even lift actually is.

Campaign debrief scorecard showing gross revenue, discount cost and incremental revenue
One scorecard, four numbers that matter. Revenue is the least useful one on the page.

Step 1: Build the data pack before anyone opens their mouth

A debrief run on opinions becomes a debate about creative. A debrief run on a data pack becomes a decision. Build the pack yourself, or hand it to one person with a deadline, and circulate it 24 hours before the meeting.

Pull these eleven fields for the promotion window, and the same fields for the 28 days immediately before it:

The tool for most of this is already in your admin and most founders have never opened it. In Shopify, go to Analytics, then Reports, and search “discount”. Open Sales by discount. Set the date range to your promotion window, then add the columns for orders, gross sales, discounts and net sales. Group by discount code so each offer appears on its own line. Export to CSV.

Then run the same report for the 28 days before the sale and paste both into one sheet. That single comparison, built in about ten minutes, is the spine of the entire debrief. If you want automation, Lifetimely and Triple Whale will both blend COGS and ad spend into a contribution view, but the free report gets you 80% of the way.

Step 2: Separate the sale you made from the sale you would have made anyway

This is the step that changes how you plan your calendar, and it is the one almost nobody does. Your promotion revenue is made up of four different things, and only one of them is worth paying for.

Industry decomposition work puts the typical split at roughly 20% of promo volume lost to cannibalisation and 15% to stockpiling, leaving an effective incremental lift of about 30% of the volume you moved. Put plainly: on a normal sale, seven out of every ten dollars were coming anyway.

Here is the version you can actually run without a data team. Take the 28 days before the promotion, strip out any day with unusual spend or a stockout, and calculate your median daily revenue. That is your baseline. Multiply it by the number of promotion days. Subtract that figure from actual promotion revenue and you have your apparent lift.

Now find the trough. Track the 14 days after the sale ends and measure how far daily revenue sits below baseline. That shortfall is your pull-forward, and it comes straight off the apparent lift. What is left is your working estimate of true incremental revenue.

Chart of a promotion window and the pull-forward trough that follows it
The spike and the trough are the same event. Judging a promotion on the shaded green section alone is how brands convince themselves a losing sale worked.

Use this rule of thumb when you read the result. If cannibalisation and pull-forward account for more than 70% of the volume, the event was not a promotion, it was a price cut on demand you already had. Between 40% and 70% there is real incrementality, but the event needs to earn its keep on customer quality rather than margin. Below 40% you found something worth repeating.

Step 3: Cost the promotion properly, not just the discount

Most operators count the discount and stop. The real cost of a campaign has at least six lines, and the ones people forget are usually the ones that turn a modest win into a loss.

Add those together and divide by your true incremental revenue. That gives you cost per incremental dollar, which is the single cleanest measure of whether a promotion was worth running. Under 40 cents is strong. Between 40 and 70 cents you are buying growth and need a customer-quality reason to keep going. Above a dollar you paid for the privilege of being busy.

If contribution maths is not yet part of your weekly rhythm, start with our contribution margin playbook before you run your first debrief. The debrief only works if the underlying cost data is honest.

Step 4: Grade the customers the campaign bought you

A promotion is an acquisition channel, so judge it like one. Two campaigns can produce identical revenue and leave you with completely different businesses depending on who walked through the door.

Tag every order from the campaign, then come back at 90 days and pull four numbers for each discount tier: repeat purchase rate, second-order AOV, second-order gross margin, and contribution per customer. Compare all of it to your full-price cohort from the same period.

Table of customer quality by discount tier including repeat rate and contribution per customer
The pattern repeats across almost every store we look at: the deepest tier buys the most orders and the worst customers.

Once you can see repeat rates fall away as discount depth increases, the argument about whether to run 30% or 40% off next time gets settled with evidence instead of nerves. In most Australian stores we work with, the drop-off gets steep somewhere between 20% and 30% off, which is exactly where the tiering in our discount discipline framework is designed to hold the line.

One more cut worth doing. Split the campaign cohort by acquisition source. A customer who came from your email list at 20% off behaves nothing like a customer who came from a cold Meta ad at the same discount. Frequently the email cohort is the one you were paying to discount unnecessarily.

Step 5: Audit the execution, not just the outcome

Numbers tell you whether to run the campaign again. The execution audit tells you how to run it better, and it is the part your team will actually enjoy. Keep it factual and keep it to a timeline.

Walk the campaign in chronological order and log what happened at each point:

Give each line a simple rating: keep, fix, or drop. Anything marked fix becomes an owned action with a date. Anything marked drop goes on a written stop-doing list that gets read out at the start of the next campaign brief.

Step 6: Run the sixty minute meeting

Book it for the Tuesday after the campaign ends, while memories are sharp and before the next brief starts. Sixty minutes, no more. Everyone who touched the campaign attends, including the person who packs the boxes.

The agenda that keeps it on the rails:

Two rules make or break the meeting. First, no blame: you are auditing a system, and the moment it becomes personal people stop telling the truth. Second, every decision gets an owner and a date before anyone leaves, otherwise you have run a very expensive book club.

What two Australian retailers proved about promotional discipline

If you think this is theory, look at what the listed Aussie retailers have been doing, because they publish their homework.

Adore Beauty lifted gross margin to a record 35.3% in FY25, up roughly 190 basis points year on year. Management put it down to owned brands, retail media and a deliberately reduced promotional cadence. They ran fewer, tighter promotions and kept more of every dollar.

Baby Bunting went further. By pulling back heavy promotional activity, simplifying price architecture and growing exclusive and private label to 47.1% of sales, they rebuilt gross margin to 40.2%, an improvement of about 340 basis points, and pro forma net profit after tax jumped to 12.1 million dollars from 3.7 million.

Neither business found a magic channel. Both simply stopped running promotions that were not earning their keep, and the only way to know which ones those are is to review them one at a time. Meanwhile the sector average keeps drifting the other way: effective discount rates across ecommerce typically sit at 12% to 18% of revenue, and fashion routinely runs 20% to 30%.

Worth remembering the pond we are all fishing in too. Online sat at 12.7% of total Australian retail sales in the ABS June 2025 read, with online non-food at 19.0%. Growth is there, but it is not so abundant that you can afford to give away a quarter of your product margin without checking the receipt.

The compound effect of four debriefs a year

One debrief feels like admin. Four in a row changes the business, because each one hands the next campaign a shorter list of mistakes to make.

After the first debrief you usually discover your discount cost was higher than you thought and your incremental lift was smaller. After the second you start capping depth, because the cohort data has made the case for you. After the third the execution list is short enough that the campaign runs itself and the team stops working weekends. By the fourth you are choosing which promotions to not run, which is where the margin actually comes from.

Look at the numbers that move. Cutting your average discount depth from 30% to 20% on a product carrying 50% list margin takes your realised margin from 28.6% to 37.5% of the discounted price. Trim just three unprofitable promotions from a twelve-campaign calendar and you have removed three trough weeks as well. That is the mechanism behind those basis-point improvements the listed retailers keep reporting.

The debrief also feeds your wider reporting rhythm. Every action it produces should land in the same place you track everything else, which for most of our members is the one-page dashboard in the monthly business review playbook.

The one page campaign debrief template

Copy this into a doc, duplicate it for every campaign, and never run a promotion without one again.

Fill in the first seven lines before the meeting. Fill in the cohort row 90 days later, and give the person who owns it a calendar reminder, because that is the line everybody skips and it is the one that permanently changes how you price.

Start with your most recent campaign, even if it finished months ago. The data is still sitting in your admin, and the first debrief is always the one that finds the most money.

Inside eCommerce Circle, promotional discipline is one of the core pillars we work on with every member, and the campaign debrief is how we make it stick. If you want a second opinion on your last sale, let’s talk.

The Campaign Debrief: The 60-Minute Retro That Makes Your Next Shopify Sale Pay
Team eCommerce Circle

Written by

Team eCommerce Circle

Helping Shopify brand owners scale smarter through the eCommerce Circle coaching community.

Leave a Reply

Your email address will not be published. Required fields are marked *

Thank You

Your application for the eCommerce Circle was successfully submitted.
We’ll get back to you through your provided details shortly.

Thank You

Your enrolment was successfully submitted, and we’ve added you to the waitlist for your preferred cohort.

Not a Circle Member Yet?
Only members can join cohorts!
Join here.