How it worksPricingLog InSign Up Free

What is a discount? Difference from Markdown

Definition

A discount is a rule that reduces what a customer would otherwise pay when specified conditions are met. In ecommerce, that sounds simple until 2 promotions overlap, a refund needs to allocate an order-level discount back to line items, or a campaign increases revenue while reducing gross profit.

Discount

Discount

The most useful way to think about a discount is not "20% off." It is a rule with 5 parts: basis + scope + eligibility + combination rules + timing If any of those are unclear, the promotion is underspecified.

Percentage and fixed discounts behave differently

A percentage discount scales with the eligible price. A $20 fixed discount does not. For a $100 eligible subtotal:

  • 20% off removes $20
  • $20 off removes $20

For a $250 eligible subtotal:

  • 20% off removes $50
  • $20 off still removes $20

That changes both merchant exposure and customer behavior. Percentage discounts can become expensive on large baskets. Fixed discounts often create a stronger incentive near a minimum-spend threshold because the effective percentage declines as the basket grows.

Scope determines where the reduction lands

A discount can apply to a specific item, a group of products, the merchandise subtotal, shipping, or some combination of those layers. That distinction matters. A product discount changes the economics of the eligible line. An order discount spreads value across a basket. A free-shipping discount changes delivery economics without lowering merchandise revenue.

Platforms can implement this differently. Shopify, for example, distinguishes amount-off product or order discounts, Buy X Get Y, and free-shipping discounts. It can also allocate a fixed order discount proportionally across eligible items. Treat that as an implementation example, not as an ecommerce law.

Eligibility is part of the offer

"15% off" is incomplete without the qualification rules. Common conditions include:

  • minimum purchase amount
  • minimum item quantity
  • selected products or collections
  • first order only
  • customer segment or loyalty tier
  • market or country
  • one use per customer
  • subscription versus one-time purchase
  • start and end time

The customer-visible terms should match the actual rule engine. A code that silently excludes a promoted product or uses a different threshold from the ad creates both support cost and trust loss.

Stacking changes the effective discount

Suppose a $100 item receives 20% off and the order also has 10% off. If the discounts are sequential, the first discount reduces the item to $80, and the second takes $8 off that amount. The final price is $72, an effective 28% reduction, not 30%.

If a system instead sums percentages before applying them, the result would be $70. If one discount is blocked by combination rules, the result might be $80 or $90.

This is why discount stacking needs explicit precedence. Current Shopify combination rules, for example, describe product discounts as applying before order discounts when those classes are combinable. Other platforms or custom engines can differ.

Rounding is not trivial at scale

Percentage math often produces fractions of the smallest currency unit. A 3-item order might require the system to allocate a $10 order-level discount across lines in proportions that do not divide cleanly into cents. The discount engine needs a deterministic rule for:

  • line-level allocation
  • rounding remainders
  • taxes
  • refunds
  • returns of only part of the order

The customer's order total must reconcile exactly even when internal allocations involve fractional arithmetic.

Revenue lift can hide cannibalization

Imagine 100 customers would have purchased at full price anyway, and a discount convinces 20 additional customers to buy. If the merchant evaluates only orders using the code, the campaign can look highly successful. But a portion of that revenue may simply be full-price demand that was discounted. A better evaluation separates:

  • customers who likely needed the incentive
  • customers who would have purchased anyway
  • additional units or items created by the offer
  • timing shifts, such as customers buying this week instead of next week
  • gross profit after the discount and variable costs

Perfect causal attribution is rarely available in ordinary ecommerce data, but the measurement model should at least acknowledge cannibalization.

Promo abuse is a rules problem

Abuse commonly appears when customers can repeatedly create new accounts, share single-use codes, stack promotions unexpectedly, exploit returns, or cross a threshold with an item they later cancel. Useful controls include:

  • per-customer limits
  • minimum basket after exclusions
  • product exclusions for low-margin items
  • combination restrictions
  • redemption windows
  • segment eligibility
  • monitoring unusually high redemption concentration

The goal is not to make every promotion difficult to use. It is to make the intended benefit easy while preventing the offer from behaving differently from its economics model.

Discount versus sale price

A discount is typically a conditional reduction applied by a rule engine. A sale or markdown price can instead change the product's displayed price itself.

That difference affects storefront presentation, feeds, analytics, reference-price claims, and sometimes MAP policies. Shopify explicitly treats sale pricing with a compare-at price as different from a checkout discount.

Worked example

Assume a product sells for $100 and has $55 in product cost.

  • Before a discount:
- revenue: $100- product cost: $55- gross profit: $45- gross margin: 45%
  • Run a 20% discount:
- discounted revenue: $80- product cost: $55- gross profit: $25- gross margin: 31.25%
  • The selling price fell by 20%, but gross profit per unit fell from $45 to $25, a 44.4% decline

Ignoring other effects, the merchant would need to sell 1.8 discounted units to generate the same gross profit as one full-price unit. That does not mean the discount is bad. It means the campaign must create enough incremental value to justify the margin given up.

Discount checklist

  • Before launching a discount, specify:
  • eligible products and customers
  • percentage or fixed benefit
  • product, order, or shipping scope
  • threshold and qualification basis
  • combination and precedence rules
  • treatment of subscriptions and one-time purchases
  • rounding and refund allocation behavior
  • redemption limits and abuse controls
  • expected incremental revenue
  • expected gross-profit impact
  • A discount is successful when the incremental behavior it creates is worth more than the margin, shipping subsidy, and operational complexity it costs
Try OnVoard free

Every app on every plan. Connect your store and switch on the flows in an evening.

Sign Up Free
Share
Commonly confused with

Sources

Shopify Help CenterAmount off discountshelp.shopify.com/en/manual/discounts/discount-types/percentage-fixed-amount
Shopify Help CenterCombining discountshelp.shopify.com/en/manual/discounts/discount-combinations
Shopify Help CenterDiscount codes FAQhelp.shopify.com/en/manual/discounts/discounts-faq
ShopifyManaging discountshelp.shopify.com/en/manual/discounts
Shopify Help CenterDiscount typeshelp.shopify.com/en/manual/discounts/discount-types