The ultimate guide to promotional pricing for eCommerce firms

Promotional pricing is the practice of temporarily reducing prices to drive a specific commercial outcome. In eCommerce, it covers everything from percentage-off codes and flash sales to BOGO deals, loyalty tiers, and seasonal campaigns. Used right, it drives genuine revenue. Used badly, you'll trash your margin and train your best customers to wait for discounts.

What is promotional pricing?

Promotional pricing is a temporary reduction in the standard selling price, applied to drive a defined commercial goal. Typically these are: clearing inventory, acquiring new customers, reactivating lapsed buyers, or responding to a competitor's move. It is distinct from permanent price changes and from dynamic pricing, which adjusts in real time based on demand signals.

In eCommerce, the term covers a wider set of mechanics than in traditional retail. A promotional price can be a publicly visible markdown, a personalised discount code delivered by email, a segment-specific offer triggered on-site, a loyalty tier reward, or a bundle price. The delivery mechanism matters as much as the discount depth, because it determines who sees the offer and what behavioural context they bring to it.

Editor's note: This guide is written specifically for online retailers. B2B SaaS, subscription, and industrial pricing follow different mechanics and aren't covered here.

The seven types of promotional pricing (and when each actually works)

The taxonomy of promotional pricing is broadly consistent across the industry. What isn't consistent is an honest assessment of when each type actually delivers incremental revenue versus when it simply moves it.

Percentage discount

The most common format in eCommerce: 10%, 20%, 30% off a product or category. It's universally understood, easy to execute across email and on-site, and straightforward to calculate. The risk is anchoring. Once a customer has bought at 20% off, their willingness to pay the full price decreases. A portion of comparison shoppers will hold out, waiting for the same discount to return.

BOGO (buy one get one)

BOGO and its variants (buy two get one free, spend X get Y) increase average order value and can move inventory efficiently. The catch is unit margin. A buy-one-get-one-free on a product with a 40% gross margin isn't a 50% discount from a financial standpoint. It wipes out margin on the second unit entirely.

Flash sales

Short-duration, high-discount events — typically 24 to 48 hours — that create urgency and can generate significant revenue very quickly. They work well for clearance. The problem is audience conditioning. Customers who've seen three or four flash sales start to learn the pattern: wait, and then the price drops. Used too frequently, flash sales train a comparison-shopping segment rather than converting a high-intent one.

Loyalty pricing

Tiered discounts awarded through a loyalty or membership programme: early access, exclusive pricing, free shipping thresholds for members. This is the most margin-efficient form of promotional pricing because the discount is earned, not freely given. It also builds switching cost, which percentage discounts and flash sales don't. If you're choosing between loyalty pricing and blanket discounting as a long-term retention mechanic, loyalty pricing is almost always the better investment. Research drawing on Bain & Company data found that repeat customers spend 67% more than new buyers by their third year of shopping with a brand. The economics of building loyalty compound in ways that a one-time discount can't replicate.

Seasonal promotions

Black Friday, Cyber Monday, January sales, end-of-summer. These events carry genuine demand spikes and everyone knows what they are. They're also where the incrementality question is hardest to answer, because so much demand is pulled forward from adjacent weeks. Research by Recast found that brands consistently see customers delaying purchases in anticipation of sales, with a revenue hangover in the weeks immediately after — the promotional spike comes partly at the expense of the periods surrounding it. The danger is running the same depth of discount in the same window year after year. The month before and after will see predictable drops.

Coupons and vouchers

Digital codes distributed via email, affiliate, or influencer channels. They're great because they're easy to trace where they've been used. Each code can be attributed to a channel and a campaign, which makes them more measurable than sitewide promotions. However, their risk is leakage. Codes circulate beyond their intended audience via cashback sites and discount aggregators, frequently discounting customers who would have purchased at full price. According to data from Ad Exchanger, for large brands, a single leaked code can generate six figures in unintended discount spend within days.

Segment promotions

These are typically offers built for a specific, defined customer segment. A re-engagement discount for customers lapsed 90 days. A new-product preview for your top 5% by LTV. A post-first-purchase offer designed to drive a second order within the critical 30-day window. Segment promotions require CRM infrastructure to execute properly, but they have the highest ratio of incremental revenue to margin cost. They put discount spend where the behavioural data says it's needed, rather than distributing it uniformly.

Why most eCommerce promotions don't actually drive growth (they just move it)

Of the revenue you generated during your last campaign, how much of it would have happened anyway?

The concept we're talking about here is promotional incrementality. Incremental revenue is revenue that occurred because of the promotion — a purchase from a customer who wouldn't have bought without the discount, at that price, in that session. Non-incremental revenue is revenue that happened during the promotion but was going to happen anyway. The discount ended up just being a freebie, and not the thing that drove conversion.

Most eCommerce teams have no idea what their ratio is. They measure revenue during the promotional window, compare it to the prior week's baseline, and call the difference "promo lift." That calculation doesn't account for demand pulled forward from the week after the campaign, or existing purchase intent that happened to coincide with the discount window.

The evidence from retail analytics is stark. McKinsey research found that 59% of trade promotions lose money globally, with that figure rising to 72% in the United States. NielsenIQ analysis corroborates this. Over half of all trade promotions result in little to no sales lift once proper measurement is applied. Both datasets come from Consumer Packaged Goods (CPG) and physical retail rather than pure-play eCommerce, and the dynamics differ in some ways.

But the underlying mechanism is the same: promotions reaching customers who were already going to buy. Made With Intent's own analysis, drawn from conversations with leading eCommerce practitioners, found that 83% of shoppers would have purchased without a discount code — the discount was given to customers who had already decided.

The dynamic in eCommerce is likely bigger. Price-sensitive audiences can find and act on promotions within minutes, and your highest-intent visitors can be the first to convert at a discount they didn't need.

Now, we're not saying you should stop doing promotions. Far from it. All we're saying is that you should understand which promotions are doing real work and which are transferring margin to customers who had already decided to buy. Doing that determines whether your promotional calendar actually drives growth, or just results in margin loss.

The four hidden costs of promotional pricing in eCommerce

Margin erosion from discount depth is visible on a profit and loss sheet (P&L). These four costs aren't — and they compound over time in ways that you don't see until it's too late.

1. Margin give-away to customers who would have bought anyway

This is the incrementality cost, and it's almost certainly the largest single hidden cost in any promotional pricing programme. Every time a customer who was already in the purchase funnel redeems a discount, the difference between what they paid and what they would have paid at full price is a direct transfer to them. At scale across a full promotional calendar, this represents margin erosion that never appears in the "promo lift" calculation, because the headline revenue number looks fine.

2. Price-anchor erosion

Behavioural economics is consistent on this: repeated exposure to a discounted price lowers willingness-to-pay for the full-price experience. Research by Ariely, Loewenstein, and Prelec at Stanford shows that numerical anchors — even arbitrary ones — significantly and durably shift consumers' stated willingness to pay, with effects that persist even when participants are told the anchor is irrelevant to the product's value.

Customers who have bought from you three or four times at a discounted price don't experience your full price as normal; they think it's expensive. The more publicly and frequently you discount, the more you move your comparison-shopping audience into that anchored state.

3. Subsidising competitor retargeting

When you run a public flash sale or sitewide discount, you generate a cohort of price-sensitive customers who engage specifically because of the price signal. Many of them are likely already present in competitors' retargeting audiences. Your promotion has demonstrated to them, and to the ad algorithms tracking their behaviour, that price is a primary factor in their purchase decision. Whether that meaningfully increases their value to competitors is hard to isolate, but it's a mechanism worth thinking about when considering your promotional tactics.

4. CRM dependency

Every promotional send trains subscribers to expect a discount before they purchase. Repeat that pattern often enough, and your non-promotional lifecycle emails — welcome series, post-purchase flows, browse abandonment, replenishment triggers — start to underperform. Customers have learnt to wait. The incremental cost isn't visible in any single campaign; it accrues across your entire email programme. And by the time it shows up in open rate and conversion data, it's too late.

Promotional pricing as implicit CAC

Consider this example. A retailer sends a 20% off email to 50,000 subscribers. 3,000 purchase at an average order value of £85. That's £255,000 in revenue — but at 20% discount, the full-price equivalent was £318,750. The brand has surrendered £63,750 in margin to drive those 3,000 conversions.

Let's assume 40% of those purchases were incremental — buyers who would not have converted without the discount. Real-world holdout data on promotional email incrementality varies substantially across list quality, promo frequency, and audience conditioning; practitioners report wide ranges, with heavily conditioned promotional lists often showing much lower incremental lift than teams expect.

Replace 40% with the result of your own holdout test. On that assumption, the brand paid roughly £63,750 in foregone margin to drive approximately 1,200 genuinely new transactions. That's an effective CAC of around £53 per incremental conversion. [Illustrative example: all figures are hypothetical.]

Whether £53 is a good or bad CAC depends entirely on LTV, category margins, and what that retailer is paying to acquire comparable customers through other channels. That £53 figure belongs alongside your paid social CPA, your Google Shopping CPA, and your other acquisition costs. Most of the time, it doesn't. The discount email lives in the CRM budget and gets measured on revenue. Paid acquisition lives in the performance budget and gets measured on Return On Ad Spend (ROAS). Both are measuring the same thing — the cost to acquire a transaction. But do they share an analysis?

Reading this, you might push back. Promotional emails don't only acquire; they also reactivate lapsed customers whose acquisition cost is already sunk, and they drive AOV expansion for customers who were going to buy anyway. Both are fair points. The CAC framing is most useful when applied to net-new incremental conversions and to lapsed reactivation, where the counterfactual — no purchase without the discount — is clearest. For those specific segments, it's a better lens than overall promotional revenue.

Who should never see your discounts: a rough framework

Full-price loyalists. Customers who have purchased from you three or more times, always at full price, in the last 12 months. Sometimes sending them a discount offer can be a loyalty play. But it invites negotiation on your margins. They already think your product is worth its full price. Don't change that.

Recent first-time buyers. Customers in the 0 to 30-day window after their first purchase are in the honeymoon period: they've just made a considered decision to buy from you. A discount email in that window could drive a second purchase, sure. But it could also plant a thought. "I paid full price, but I should've waited." The post-first-purchase flow should focus on product education, social proof, and cross-category discovery.

Customers acquired at full price in the last 30 days. Similar rationale: these buyers are happy to pay your full prices.

Here's where to use discounts

  • Lapsed customers at 90 to 180 days since last purchase. The cost of re-acquiring these via paid media almost certainly exceeds the margin cost of a well-targeted win-back offer.
  • Browse-abandonment segments with high-intent signals and no purchase conversion. Deep product page engagement, multiple return visits, comparison behaviour: these signals justify a targeted intervention.
  • Price-sensitive new visitors identified by behavioural signals (time spent on sale pages, price filter usage, sorting by price). These visitors have already told you price a key factor

Some of this segmentation logic can be built in Klaviyo using event-triggered flows and list properties. The suppression side — protecting full-price buyers from promotional flows — is as important as the targeting side, and it's the part that typically goes unbuilt. For a practical framework on building intent-aware segments in your ESP, see Email Segments Ready to Buy.

The harder problem is identifying, in real time and on-site, which visitors are genuinely price-sensitive and which would convert at full price with the right experience. Static Klaviyo segments give you that signal at the email layer, but they don't capture what's happening on-site in the moment. That's the gap that intent-based discount targeting is designed to fill: triggering a discount offer only for visitors whose browsing behaviour signals price sensitivity, while letting high-intent visitors reach checkout at full price. Appliances Direct applied this approach and saved 42% of margin that would otherwise have been given to visitors who didn't need a discount to convert. Read our full case study.

How to measure promotional incrementality (without a data science team)

Most eCommerce teams assume that measuring true promotional incrementality requires a data science capability they don't have. It doesn't. There are three practical methods you can implement with existing tools, in order of rigour and complexity.

Method 1: Geo or list holdout

Before your next promotional email, suppress a random 10% of eligible recipients. Call this the holdout group. After the campaign window closes — including a seven-day tail to capture any demand-pull effect — compare revenue per recipient between the promoted group and the holdout group. The difference, adjusted for the margin cost of the discount, is your incremental return.

The holdout must be randomly assigned. Don't use a geographic split if your list has geographic bias. Most ESPs, including Klaviyo, allow you to create a random-sample suppression list at campaign setup. It takes around 10 minutes and gives you a genuine counterfactual for the first time.

For the best results, use personalised single-use codes rather than a broadcast code. Broadcast codes (e.g. "SUMMER20") leak to cashback sites and discount aggregators, meaning some holdout recipients will redeem the code via a third-party channel, which deflates your measured incrementality and makes the promotion look more incremental than it is.

Method 2: Pre/post baseline with control

For sitewide promotions where list suppression isn't practical, build a revenue baseline from the prior eight weeks and the equivalent period in the prior year. Model expected revenue for the promotional window without the discount. Compare actual revenue to the model, then subtract the margin cost of the discount across all transactions to calculate net contribution margin.

This method doesn't control well for seasonal and macro variation, but it's substantially more rigorous than comparing the promotional window to the prior week.

Method 3: Contribution margin per cohort

The most sophisticated and most durable method. Segment promotional purchasers by their first-purchase channel — promo-acquired versus organic-acquired — and track their purchase behaviour at 90 and 180 days. Calculate LTV for each cohort. Promo-acquired customers with lower 180-day LTV represent a structural cost that never appears in any single campaign's P&L. The discount didn't just reduce margin on the first transaction: it acquired a lower-value customer at a structurally elevated cost per order. That said, this pattern isn't universal. Common Thread Co's analysis found cases — particularly in consumable categories — where sampling-led promotional acquisition outperformed full-price acquisition on long-term repeat behaviour. The point isn't to assume promo-acquired customers are always less valuable. It's to measure your specific cohorts rather than letting the assumption go untested in either direction.

This method is not achievable with basic Shopify or Klaviyo reporting alone. You'll need either a dedicated retention analytics tool (Triple Whale, Polar Analytics, and Glew all support cohort-level LTV views for mid-market Shopify merchants) or a manual export into a spreadsheet, which is achievable but requires a dedicated afternoon and some comfort with pivot tables.

Running any one of these methods will tell you more about your promotional programme's actual ROI than years of before/after revenue comparisons.

When promotional pricing is the right answer

To reiterate, we're not saying promotional pricing is bad. It clearly isn't. The challenge is when promotional pricing is used as a primary growth lever without incrementality measurement or segmentation discipline — it's an expensive habit that erodes both margin and customer quality over time.

Here are three legitimate use cases for promotional pricing in eCommerce:

Clearance: When inventory needs to be whittled down, price reductions are the correct tool. The economics stack up clearly. The margin cost of the discount is weighed against the carrying cost of the stock and the cost of a write-down. Done properly, clearance promotions don't carry the dependency risk of a recurring promotional programme because they're specific to an event and a product set, not to a calendar slot.

Genuine product launch: Introductory pricing for a new product functions as acquisition pricing. You're buying trial at a known cost per unit, with the expectation of building a full-price repeat purchase base from that cohort. The key constraint is that "introductory" must be time-limited and clearly communicated. If customers anchor to the launch price as the normal price, the discount has done too much.

Defensive parity: If a close competitor is running a promotional campaign and your price differential is generating measurable abandonment at key points in the funnel, a targeted promotional response is the right choice. What you should watch is whether this is genuine demand-retention or a ratchet. Once you respond to a competitor's discount with your own, the floor has moved for both parties, and it's difficult to claw that back.

A promotional pricing audit you can run this quarter

The following six questions use data most eCommerce teams already have:

1. What percentage of your revenue in the last 12 months came from promoted transactions?

Export all your orders. Identify those where a discount code was applied or where the order was placed during a promotional window. Calculate that as a percentage of total revenue. Nebulab's analysis found that brands with discount penetration above 40% face structural dependency requiring 12 to 18 months to unwind without damaging revenue. Companies below 40% can reduce promotional reliance within a single quarter.

2. What is the 180-day repeat purchase rate for customers acquired in your last three major campaigns, compared to customers acquired at full price in the same periods?

If your promo-acquired cohorts are returning at materially lower rates, you're acquiring a weaker customer base at a discount. That LTV gap is the true long-term cost of the promotion, and it should be in your campaign P&L.

3. What is the average discount depth per category compared to that category's gross margin?

A 25% discount on a product with a 30% gross margin leaves 5% contribution before overheads. Run this calculation across your promotional calendar. There will almost certainly be categories where promotional depth is eating margin on a meaningful share of volume.

4. How many promotional emails does your average subscriber receive per month?

Divide your total monthly promotional sends by your active list size. If the answer is above 2 to 3 per month, your list could be conditioned to expect promotional emails. Track open rate and conversion rate on non-promotional lifecycle emails over the same period. If those are declining while promotional rates hold, there's your issue.

5. What is the contribution margin per promotional campaign, not the revenue?

Revenue minus cost of goods minus the discount cost minus fulfilment and return costs for promotional orders. Run this calculation for your last five campaigns.

6. What percentage of your promotional revenue came from customers already in the purchase funnel at the time of the promotion?

Look at customers who converted during a promotional window but had already visited the product page or added to basket in the prior 7 days. That is your minimum-estimate incrementality floor. If the discount reached them and they were already close to buying, those conversions were probably going to happen without it.

Wrapping up our promotional pricing guide

Promotional pricing will always be part of the eCommerce toolkit. Clearance, launch, reactivation, competitive response: there are always times where a well-targeted discount does good work. The question is whether your promotional programme is built primarily around those situations, or primarily around habit.

The goal of a disciplined promotional pricing strategy isn't to run more profitable promotions. It's to need them less. Because your retention mechanics, lifecycle CRM, and on-site experience are doing enough of the work that you can afford to protect your margins and your price anchors.

The first step isn't rebuilding your CRM programme or overhauling your calendar. It's suppressing 10% of your next campaign list and measuring the result. That single number will tell you more about your promotional programme than 12 months of revenue reporting.

If reducing your promotional dependency without sacrificing revenue is on your roadmap this year, see how our intent-based discount targeting works in practice.

For a demo of Made With Intent, book a demo.

Continue reading
No items found.
This site uses essential cookies to run properly and optional cookies to improve your experience. Optional cookies only run if you accept them. Privacy Policy here.