How much discount to offer: break-even sales, margin floors and testing
How much discount to offer: the break-even formula, a table of required sales increases by margin and discount, a margin-floor method and how to test it.
Promotional pricing on Shopify means temporarily lowering catalog prices, usually with a higher compare-at price shown crossed out, for a set period. A good sale has a margin-safe discount, clean price endings, a defined start and end, and a plan for putting prices back.
There are two families of promotions. Price-based sales change the product's price (and usually set a compare-at price), so the sale price shows on product pages, collections, search and in the cart. Discount-based promotions keep the catalog price and take money off in the cart or at checkout with a discount code or an automatic discount.
Price-based sales are clearer for shoppers browsing the catalog. Discounts are better for targeted offers such as a code for email subscribers. Many stores use both. Our guide to sale prices vs discount codes compares them in detail.
The compare-at price is a separate field on each variant. When it's higher than the price, most themes show it crossed out next to the price and may add a sale badge. When it's empty, or not higher than the price, nothing is crossed out.
Use a compare-at price that reflects a genuine previous price. Many countries regulate reference prices in promotions, so check the rules where you sell. Read more in the compare-at price guide.
Start from your margin, not from round numbers. A discount reduces the profit on every unit, so you need more units to earn the same gross profit. The formula is: required increase in units = discount ÷ (margin − discount), using percentages of the original price.
| Gross margin | 10% off | 20% off | 30% off |
|---|---|---|---|
| 40% | +33% units | +100% units | +300% units |
| 50% | +25% units | +67% units | +150% units |
| 60% | +20% units | +50% units | +100% units |
Use the free discount calculator to see the sale price, the margin after the discount and the break-even volume for any product.
Price endings change how a price reads. Endings like .99 and .95 read as a deal, while round endings like .00 read as premium or simple. Whatever you choose, keep it consistent across a sale. A 20% discount on a $39.99 product gives $31.992, so plan a rounding rule before the sale rather than fixing odd cents afterwards. See charm pricing and price endings.
Shopify Plus stores can schedule events with Launchpad, and Markets rollouts can switch a market catalog or a set of discounts on for a set period. To schedule changes to your catalog prices and compare-at prices on any plan, and put them back afterwards, merchants use an app. With Sale Scheduler you choose "Schedule start and end", set the window, and the app applies prices at the start and restores the previous prices at the end. Scheduled times are processed every minute.
The safest restore uses a copy of the prices taken right before the sale and checks each variant before writing. Re-importing an old CSV can overwrite prices you changed during the sale. Sale Scheduler saves each variant's previous price and compare-at before the sale and skips any variant whose price changed elsewhere. Read how to undo bulk price changes.
Weekly promotions (weekend deals, a fixed sale day) work best when shoppers learn the rhythm and when the discount is shallow enough to sustain. Use recurring sales for weekly or every-N-days patterns, and review results before letting a series run for months.
The full list, with fixes, is in 12 sale-pricing mistakes on Shopify.
Use a sale price (with a compare-at price) when you want every shopper to see the discount while browsing. Use a discount code for targeted offers. They can be combined, so check your discount settings.
Partly. Discounts have start and end dates, Markets rollouts can switch a market catalog or discounts on for a set period, and Launchpad (Shopify Plus) can schedule events. An app such as Sale Scheduler schedules changes to your catalog prices and compare-at prices on any plan and restores them afterwards.
Sale price = original price × (1 − discount). A 25% discount on $80 is $80 × 0.75 = $60. The discount calculator does this for you.
Usually the regular price the product was actually sold at before the sale. It must be higher than the sale price to show as crossed out.
How much discount to offer: the break-even formula, a table of required sales increases by margin and discount, a margin-floor method and how to test it.
How to schedule a sale on Shopify: discount active dates, Markets rollouts, Launchpad, Shopify Flow, or an app that changes prices and restores them at the end.
The 12 most common Shopify sale pricing mistakes, from discounts below margin and misleading compare-at prices to stacked codes and sales that end late.
Install Sale Scheduler from the Shopify App Store, build a sale, and review every price before it goes live. The free allowance lets you try it on a few variants first.