Automatic discounts
Overview
Automatic discounts help you move products before they expire by reducing prices as the expiration date approaches. You define discount tiers based on how many days remain until expiration, and the plugin applies the appropriate discount automatically. This reduces waste and recovers revenue from stock that might otherwise go unsold.
Setting up discount tiers
Configure discounts under Products → Expirations → Settings → Discounts:
- Click Add Tier to create a new discount rule.
- Set the days until expiration threshold and the discount percentage.
- Add additional tiers as needed.
- Save your settings.
Example configuration
The plugin includes default tiers to get you started:
| Days until expiration | Discount |
|---|---|
| 14 days | 10% off |
| 7 days | 25% off |
| 3 days | 50% off |
With this setup, a product that expires in 10 days would receive a 10% discount. Once it reaches 7 days, the discount increases to 25%, and at 3 days it jumps to 50%.
How discounts are applied
Discounts are applied in real time using WooCommerce’s price filters. When a product falls within a discount tier, the sale price is adjusted automatically:
- The sale price integrates seamlessly with WooCommerce’s pricing — sale badges, cart calculations, and order totals all reflect the discounted price.
- When a product moves into a new discount tier, the sale price updates accordingly.
- If a product expires and is removed from the catalog (via expiry actions), discounts no longer matter since the product is no longer for sale.
Your own sale prices
The expiry discount never overwrites the Sale price field — it is applied live, so your own prices stay exactly as you set them. When a product has both, customers always get the lower price; the two are never combined.
- A sale you’ve scheduled for later only counts once it has actually started, and a sale that has ended no longer counts.
- When the expiry discount stops (for example after you extend the date), your own sale price takes over again.
- While an expiry discount is setting a product’s price, the product editor says so under the price fields — for example “Expiry discount active: 20% off ($10.39)” — with a link to the discount settings.
Expiring soon badge
When automatic discounts are active, products approaching expiration can display an expiring soon badge on your storefront. This badge draws customer attention to discounted items and encourages purchases. On single product pages it also surfaces the active discount — for example “50% off - Expiring soon” — making the deal explicit.
The badge appears on:
- Shop and category archive pages
- Individual product pages
The badge has its own on/off toggle, separate from the badge-text setting: Show sale badge (“Display a badge on discounted products”) under Products → Expirations → Settings → Discounts. It is off by default — turn it on if you want discounted products to carry the badge; discounts keep applying either way. (Stores that were already running discounts before this became the default keep the badge they had.) The Badge text field on the same screen customizes the wording (e.g. “Expiring soon”, “Clearance”). Together they create a clear visual signal that a deal is available.
Known limitation: WooCommerce “Sale” loops
Expiry discounts are applied dynamically through WooCommerce’s price filters, not by writing a sale price to the product. As a result, expiry-discounted products do not appear in WooCommerce’s “on sale” product loops — for example the [sale_products] shortcode or the “On Sale” block — because those read from a sale-price lookup table that the dynamic discount does not touch. The discounted price, strikethrough, sale badge, and cart/checkout totals are all still correct on the products themselves; they just are not collected into sale-only listings.
Tips for effective discounting
- Start small — A 10% discount at 14 days gives customers a gentle nudge. Reserve steep discounts for the final days.
- Match your margins — Set discount percentages that still keep the sale profitable, or at least minimize your loss compared to unsold expired stock.
- Combine with email notifications — Use email notifications to alert yourself when products enter discount tiers, so you can monitor how well the discounts are working.
- Give them a storefront — the clearance category gathers every discounted product in one category you can link from your menu.
- Review the Overview tab regularly — The Overview tab shows which products are expiring soon, helping you gauge whether your discount strategy is effective.