The WooCommerce Discount Plugin Checklist: What Your Store Actually Needs Before You Buy
Buyer’s Framework
Before You Install Anything, Answer These Questions
A practical checklist that helps you map your store’s real discount requirements — so you pick the right WooCommerce discount plugin the first time, not after a frustrating reinstall.
Most store owners pick a discount plugin the same way: search “WooCommerce discount plugin,” read a comparison article, install whichever one is at the top of the list, and spend an afternoon wrestling with it before realising it doesn’t do the one thing they actually need.
The problem isn’t the plugin — it’s that nobody asked the right questions first. Every major plugin solves a different problem. Flycart’s Discount Rules for WooCommerce is built for complex conditional rule logic. Smart Cycle Discounts is built for scheduled, time-bound campaigns. YITH Dynamic Pricing is built for the YITH ecosystem. None of them is universally “best.”
This checklist exists to help you figure out which one fits your store before you install anything. Work through each section. The decision matrix at the end maps your answers to the right plugin type.
How to use this checklist
Read through every section and note your answers. At the end, the decision matrix shows which plugin types match your combination of requirements. If you’ve already read a feature comparison, that’s useful context — but this checklist is about your store, not a generic ranking.
Why a checklist beats a “best plugins” list
A “best WooCommerce discount plugins” article ranks plugins by feature count, install numbers, and review scores. That’s useful background, but it doesn’t tell you whether a plugin matches your specific situation.
A store that runs Black Friday once a year needs different things from a store that runs weekly flash sales. A B2B store with wholesale pricing tiers needs different things from a DTC store that occasionally does BOGO promotions. A store with 20 products has different concerns than one with 2,000.
The right checklist question isn’t “which plugin is best?” It’s “which plugin is best for me?” These are different questions with different answers.
If you want a side-by-side feature comparison first, the honest comparison of the top WooCommerce discount plugins covers the main options with a full feature table. Come back here once you’ve seen what’s available and want to match them to your own requirements.
1. What discount types do you actually need?
The most important question on the list. Different discount types require fundamentally different plugin architectures — and not every plugin supports every type.
Percentage discounts and fixed amount off
These are the baseline. Every plugin worth considering supports them. If this is all you need, your choice narrows to scheduling, targeting, and interface — not discount types.
BOGO (Buy One Get One)
BOGO is deceptively complex. “Buy 2, get 1 free” requires the plugin to understand cart quantities and apply the discount to the cheapest (or a specific) item. Two plugins include BOGO in their free tier: Flycart’s Discount Rules for WooCommerce and Smart Cycle Discounts. YITH Dynamic Pricing locks BOGO behind its Pro plan.
Before marking this as a requirement: do you need BOGO on the same product (buy 2 units of Product A, get 1 free) or cross-product BOGO (buy Product A, get Product B at a discount)? Same-product BOGO is more commonly supported. Cross-product BOGO needs careful checking.
Tiered / volume pricing
Volume pricing means the per-unit price drops as quantity increases — “1–4 units: full price, 5–9: 10% off, 10+: 20% off.” This is the canonical use case for B2B and wholesale stores.
Flycart Discount Rules for WooCommerce includes tiered pricing in its free version. Smart Cycle Discounts includes tiered pricing in its Pro version only. If volume pricing is your primary use case and budget matters, that free/Pro split is a real consideration.
Spend threshold discounts
“Spend £75, get 15% off your order.” This is a cart-level condition — the discount applies based on the cart total, not individual products. Most plugins handle this at the Pro tier. Check before assuming.
Bundle discounts
Bundling is “buy Product A + Product B together and get a combined discount.” This is distinct from BOGO and from tiered pricing. Support is uneven across plugins — verify against each plugin’s current documentation before counting on it.
Free shipping as a discount type
Some stores use free shipping as a promotional incentive rather than a shipping rule. Smart Cycle Discounts includes a free shipping toggle on each campaign in the free version. If you want to attach free shipping to a specific promotion without setting a sitewide shipping rule, check whether the plugin supports this natively.
The free/Pro trap
Many plugins look identical in the free tier. The differences appear when you need tiered pricing, spend thresholds, advanced BOGO, or bulk code generation. Read each plugin’s WordPress.org listing carefully — the “PRO” section lists features that are not in the free version, even if the marketing page implies otherwise.
Your checklist answer for discount types
- List only the discount types you will actually use in the first 6 months
- Mark which ones are hard requirements vs. nice to have
- Note whether you need them in the free version or whether you’re open to Pro
2. How precise does your scheduling need to be?
Scheduling precision separates plugins more cleanly than almost any other dimension.
Date-level scheduling
Most plugins support scheduling by start and end date. “This sale runs from the 15th to the 22nd.” If that’s all you need, date-level precision is fine and widely available.
Hour-and-minute scheduling
Flash sales and time-sensitive promotions require more. “This sale starts at 6:00 PM today and ends at midnight Sunday.” Date-level precision means “sometime on Sunday” — that’s not enough for a flash sale, a daily deal, or any promotion where timing matters to your customer.
Smart Cycle Discounts stores start and end times at hour-and-minute precision (using `H:i` format internally) and is timezone-aware — it respects the timezone you configure, not just the server timezone. WooCommerce’s built-in sale price scheduling is date-only. Flycart Discount Rules for WooCommerce is date-level. Check each plugin’s scheduling documentation carefully if this matters to you.
Your checklist answer for scheduling
- If your sales start and end at specific times (not just specific dates), you need hour-and-minute precision
- If you run flash sales or daily deals, hour-and-minute precision is a hard requirement
- If you’re in a different timezone from your server, timezone-awareness matters — test this explicitly
3. Do you need campaigns to repeat automatically?
Recurring campaigns are a feature that many stores don’t realise they want until they’ve manually re-created the same weekend sale four times in a row.
A recurring campaign is one you configure once, and the plugin runs it on a defined pattern — every weekend, the first Monday of the month, weekly on a specific day. When it ends, it automatically queues the next instance. You set it up once and it runs indefinitely until you turn it off.
As of writing, Smart Cycle Discounts is the only plugin in the main comparison set that includes recurring campaign functionality in its free version. If “set it once and forget it” matters to your workflow, this is a differentiating feature worth checking for in any plugin you evaluate.
If you only run seasonal sales (Black Friday, summer, end-of-year), you may not need recurring functionality at all. A plugin without it will serve you fine.
Your checklist answer for recurring
- Do you run any promotions that repeat on a defined schedule (weekly deals, monthly sales)?
- If yes, recurring support moves from nice-to-have to a real time-saver
- If your promotions are one-off events, skip this requirement entirely
4. Who should see the discount?
Targeting defines which customers are eligible for the discount. There are several layers, and not every plugin supports all of them.
No targeting (all customers)
The simplest case. The discount applies to everyone. All major plugins support this.
User role targeting
The discount applies only to customers with a specific WordPress user role — or is excluded from specific roles. Common use cases: give logged-in wholesale customers a different price, exclude staff accounts from promotions, or offer a “members only” discount.
Smart Cycle Discounts includes role targeting (include and exclude) in its free version. Flycart Discount Rules for WooCommerce also includes role targeting. YITH Dynamic Pricing locks role targeting to Pro.
Location targeting
Restrict a discount to customers in specific countries based on billing or shipping address. Smart Cycle Discounts includes location targeting in the free version (configurable by billing or shipping country). Not all plugins support this natively — some require a separate geo-targeting plugin.
Purchase history conditions
“Give a discount to customers who have bought from us before” or “apply this only to first-time buyers.” This is more complex and typically only available in Pro tiers or through WooCommerce coupons with usage restrictions. If this is a requirement, verify it against each plugin’s feature list explicitly.
Your checklist answer for targeting
- Do you need discounts to apply differently for different customer groups?
- If yes, identify which targeting dimension — user role, location, purchase history, or something else
- Check whether that targeting type is free or Pro in each plugin you’re considering
5. What happens when two discounts overlap?
Overlap handling is the most overlooked question on this list — and one of the most important for stores running more than one campaign at a time.
The question to ask is: if Product A is in two active campaigns simultaneously, what happens? The possible behaviours are:
- First match wins — the first matching rule applies and others are ignored
- Best deal wins — the largest discount applies automatically
- Stacking — both discounts apply (can cause deep, unintended discounting)
- Priority system — you define which campaign takes precedence when conflicts occur
If you only ever run one campaign at a time, this doesn’t matter. But if you run a sitewide Black Friday sale while also running a category-specific weekend deal, you need to understand what the plugin does when they collide.
Smart Cycle Discounts uses a 1–5 priority system: you assign each campaign a priority number and the higher-priority campaign wins on conflicting products. The plugin also warns you about conflicts before you launch. Flycart Discount Rules for WooCommerce uses a first-match approach where rule order determines priority.
Stacking — where multiple discounts combine — is occasionally desirable (loyalty discount + flash sale) but more often a margin risk. Understand whether a plugin allows stacking and whether you can control it.
For a detailed look at how overlapping discounts work in practice, the campaign priority system documentation shows how SCD handles conflicts specifically.
Your checklist answer for stacking
- Will you ever run more than one active campaign simultaneously?
- If yes, you need a predictable conflict resolution mechanism — not just “it depends”
- Decide whether you want automatic resolution or manual priority control
6. Where must the discount visually appear?
This is the technical question most store owners miss, and it has a direct impact on how your store looks to customers.
The two approaches: sale price vs. cart discount
WooCommerce discount plugins apply discounts in one of two ways:
Sale price approach: The plugin modifies the WooCommerce sale price at display time. Customers see the original price crossed out and the discounted price next to it on product pages, shop pages, search results, and category pages. Your theme’s “Sale!” badge renders automatically because WooCommerce detects a lower sale price. This is how WooCommerce’s own native sale prices work.
Cart discount approach: The plugin leaves product page prices untouched and adds a discount line at the cart or checkout stage. The product page shows the regular price. The cart shows a discount line item reducing the total. Theme sale badges do not appear, because the product’s stored sale price hasn’t changed.
Neither approach is wrong — they serve different use cases. But they produce a meaningfully different customer experience, and switching approaches after you’ve built all your campaigns means rebuilding everything.
Smart Cycle Discounts applies discounts at display time through WooCommerce’s price filters, so strikethrough pricing and sale badges render automatically across shop, category, product, and search pages. It is runtime-filter-based, meaning no bulk database writes on activation and no stored price changes that need cleanup when a campaign ends. Flycart Discount Rules for WooCommerce uses the cart discount approach, which is why theme sale badges don’t appear with it by default.
On Sale filters
Both sale-price and cart-discount plugins share one limitation: products discounted by a plugin at runtime do not appear in WooCommerce’s native “On Sale” shortcode, block, or in third-party sale filters (like FacetWP’s “on sale” facet) that read stored sale data from the database. This is true of all the main plugin approaches, not just one. If appearing in native On Sale filters is a hard requirement, verify this carefully with any plugin you consider.
Your checklist answer for display
- Do you need strikethrough pricing and sale badges on product pages? If yes, you need a sale-price-method plugin
- Do you primarily care about cart-level discounts (coupon-style)? Cart discount method may work fine
- Test with your specific theme — some themes render sale badges differently
7. Auto-apply or coupon code?
There are two ways to deliver a discount to customers: automatically at checkout, or via a code they enter. Both have their place, and the right choice depends on what you’re trying to accomplish.
Automatic application
The discount fires as soon as the campaign is active. No code required. Any eligible customer who visits the store gets the discounted price. This is the standard approach for sitewide sales, seasonal promotions, and flash sales.
Coupon code delivery
The discount is attached to a code that customers enter at checkout. Useful for email campaigns, social media promotions, influencer partnerships, and “members only” offers where you want to control who actually redeems the discount.
Some plugins treat coupon functionality as a separate feature. Smart Cycle Discounts supports coupon-code delivery on any discount type — percentage, fixed, BOGO, tiered, spend threshold — and also supports URL auto-apply (a link like `?wsscd_code=YOURCODE` that applies the code automatically when clicked, useful for email links). In the free version, this uses a single shared code. The Pro version adds bulk unique-code generation (up to 50,000 single-use codes per campaign, with CSV export) and single-use enforcement.
WooCommerce’s native coupon system is separate from campaign-based plugins. If your coupon needs are simple and you already use WooCommerce coupons heavily, factor that into your evaluation.
Your checklist answer for delivery
- Do you need automatic discounts, code-based discounts, or both?
- If code-based: do you need unique per-customer codes or is a shared code acceptable?
- If you need URL auto-apply for email campaigns, check whether the plugin supports it
8. How many products and campaigns are you managing?
Scale affects which plugins are practical to use. A plugin that’s pleasant to use with 50 products can become frustrating with 5,000.
Product catalog size
If you’re discounting a large catalog (hundreds or thousands of products), you need a plugin that handles product selection efficiently — preferably with category-level targeting, bulk operations, or “all products” modes that don’t require you to select products one by one.
Smart Cycle Discounts has four product selection modes: all products, specific products, random products (useful for variety-style promotions), and a smart selection mode that lets you filter by categories, tags, attributes, and conditions. For a large catalog, “all products with these conditions” is much faster than manually selecting each one.
Campaign volume
If you’re running a high volume of overlapping campaigns — some stores run 10–20 concurrent promotions during peak season — you need clear campaign management: sorting, filtering, status visibility, conflict detection, and easy duplication. A plugin designed around a single active campaign at a time will become unwieldy when you’re managing many.
Analytics needs
If you need to know which campaigns are working and which aren’t, look at what analytics the plugin provides. Basic views — how many orders used this campaign, what revenue it drove — are the minimum. Smart Cycle Discounts includes campaign-level analytics in the free version (basic revenue and conversion tracking) and a full analytics dashboard with advanced exports in Pro.
For stores running regular promotions at scale, the post on how WooCommerce discount plugins perform under load is worth reading before you commit to an architecture.
Your checklist answer for scale
- How large is your product catalog? Under 100, under 1,000, or larger?
- How many concurrent campaigns will you run during peak season?
- Do you need campaign-level revenue analytics, or is WooCommerce’s built-in reporting enough?
9. Does it work with your checkout and order setup?
Compatibility issues are the most common cause of regret after installing a discount plugin. They’re also the most avoidable.
WooCommerce HPOS (High-Performance Order Storage)
HPOS is WooCommerce’s modern order management system, replacing the old post-based order storage with dedicated database tables. It’s been available since WooCommerce 7.1 and is increasingly the default for new installations. Plugins that aren’t HPOS-compatible can cause order sync issues when HPOS is active.
Smart Cycle Discounts declares HPOS compatibility explicitly in its code (via `FeaturesUtil::declare_compatibility(‘custom_order_tables’, …)`). Before installing any discount plugin, check its WordPress.org listing for HPOS compatibility, or look in the plugin’s main PHP file for the `FeaturesUtil` declaration.
Block Cart and Block Checkout
WooCommerce’s block-based cart and checkout (introduced as the default in WooCommerce 8.3+) behaves differently from the classic shortcode-based checkout. Plugins that hook into the classic checkout may not apply discounts correctly to block checkout. Smart Cycle Discounts handles block cart and checkout via a Store API extension (`WSSCD_WC_Blocks_Integration`). Check for this explicitly in any plugin you evaluate — it’s not universal.
Theme compatibility
If your chosen plugin uses the sale price approach, it should work with any WooCommerce-compatible theme without customisation. If it uses the cart discount approach, test whether your theme’s cart and checkout templates display the discount line cleanly. Some themes require minor CSS adjustments.
Other plugins you rely on
If you use WooCommerce Subscriptions, WooCommerce Memberships, a page builder like Elementor, or a custom checkout plugin, test for conflicts before committing. Run the plugin on a staging environment first. A conflict found before launch costs an hour; a conflict found on Black Friday costs revenue.
Your checklist answer for compatibility
- Is HPOS active on your store? If yes, verify HPOS compatibility before installing
- Are you using block cart / block checkout? Verify block support
- Do you use WooCommerce Subscriptions or any custom checkout plugin? Test on staging
10. How important is active support and updates?
A discount plugin touches core pricing and checkout logic. When WooCommerce ships a major update, a plugin that isn’t actively maintained can break in ways that affect your store’s revenue.
What to check
- Last updated date on WordPress.org — if a plugin hasn’t had a maintenance release in 12+ months, treat that as a yellow flag for WooCommerce compatibility
- “Tested up to” version — this should match or be close to the current WooCommerce version. Gaps suggest the plugin isn’t being actively tested against new releases
- Support responsiveness — browse the WordPress.org support forum for the plugin. Are questions answered? Are bug reports addressed?
- Changelog transparency — a plugin that publishes detailed changelogs is one where the developers are paying attention
Free plugins from independent developers
Many free WooCommerce plugins are excellent but abandoned. The free version of a major plugin from a company with a business model (freemium with paid Pro) is more likely to receive ongoing updates than a free plugin with no commercial product behind it. This isn’t a rule, but it’s a reasonable prior.
Your checklist answer for support
- Check the “last updated” and “tested up to” dates on each plugin’s WordPress.org page before installing
- Read the support forum for recent activity and developer responsiveness
- For a plugin touching core pricing: active maintenance is not optional
Free vs. paid: when the upgrade is worth it
The free versions of the main WooCommerce discount plugins are genuinely capable. You don’t need to pay for features you won’t use. But the upgrade is worth it in specific situations.
| If you need this… | Free version likely enough? | Notes |
|---|---|---|
| Percentage and fixed discounts on a schedule | Yes | Core free feature in SCD, Flycart |
| BOGO deals | Yes (SCD / Flycart) | YITH requires Pro for BOGO |
| Recurring campaigns | Yes (SCD) | Free in SCD; not in Flycart at any tier |
| Role targeting | Yes (SCD / Flycart) | Free in both; YITH requires Pro |
| Tiered / volume pricing | Depends on plugin | Free in Flycart; Pro-only in SCD |
| Spend threshold discounts | Usually not | Pro-tier in most plugins |
| Bulk unique coupon codes (thousands) | No | Pro-only in SCD (up to 50,000 codes/campaign) |
| Advanced analytics + exports | No | Pro-only in SCD; basic intelligence is free |
The practical test: install the free version and run it for a month. The limitations you bump into are the ones worth paying to remove. Don’t pay for features you’re speculating you’ll need.
Decision matrix: map your answers to plugin types
Use your checklist answers to find the row that matches your situation. This isn’t a ranking — it’s a fit map.
| Your primary need | Plugin type that fits | Example |
|---|---|---|
| Scheduled sales that start and end automatically, with sale badges on product pages | Campaign-based, sale price method | Smart Cycle Discounts |
| Complex conditional rules: buy from Category A, discount Category B | Rule-based, cart discount method | Discount Rules for WooCommerce (Flycart) |
| Volume / tiered pricing for B2B or wholesale (free tier) | Rule-based with free tiered pricing | Discount Rules for WooCommerce (Flycart) |
| Recurring weekly or monthly deals, set up once and forgotten | Campaign-based with recurring support | Smart Cycle Discounts |
| Already using YITH plugins across the store | YITH ecosystem | YITH WooCommerce Dynamic Pricing |
| Few products, occasional simple sales, no automation needed | WooCommerce native sale prices | No plugin required |
| Email campaign with unique per-customer codes and link auto-apply | Campaign with coupon code support and URL apply | Smart Cycle Discounts (Pro for bulk codes) |
| BOGO without paying for Pro | Either SCD or Flycart free tier | Discount Rules for WooCommerce or Smart Cycle Discounts |
For deeper head-to-head comparisons between specific plugins, the Discount Rules Pro vs Smart Cycle Discounts comparison and the YITH Dynamic Pricing vs Smart Cycle Discounts comparison cover those matchups in detail.
Common questions
How long does it take to set up a WooCommerce discount campaign?
With a campaign-based plugin like Smart Cycle Discounts, most store owners are running their first campaign in under 10 minutes using the 5-step wizard. Rule-based plugins like Flycart have a steeper initial learning curve because the rule builder is more flexible — expect 20–30 minutes for the first non-trivial rule set. Both flatten out quickly after the first few campaigns.
Can I use a discount plugin alongside WooCommerce coupons?
Generally yes, but the interaction depends on the plugin. Smart Cycle Discounts applies discounts independently of WooCommerce coupons, so both can be active simultaneously. Whether they stack (apply on top of each other) depends on your campaign priority and stacking settings. If you rely heavily on WooCommerce coupons and also want campaign discounts, test the combination in a staging environment before going live.
What if a plugin slows down my store?
Sale-price-method plugins (like Smart Cycle Discounts) apply lightweight runtime filters on product price hooks — no database writes on activation, no background processing per page load beyond the filter evaluation. Cart-discount-method plugins evaluate their rules at cart/checkout time, which is only triggered when a customer actually visits the cart. Neither approach should cause perceptible slowdowns on a well-hosted store. The concern is more relevant at very high order volumes, covered in detail in the performance deep-dive on discount plugins under load.
Is Smart Cycle Discounts the right choice for my store?
Smart Cycle Discounts fits stores that run scheduled, time-limited campaigns and want sale prices to appear automatically across the storefront. It’s built around the campaign concept: a named promotion with a discount type, a product scope, a schedule, and optional targeting rules. If you think about your promotions as campaigns (“the Spring Sale,” “the Weekend Flash Deal”) rather than as persistent rules (“always give 10% off to anyone who buys 5+”), it’s likely a good fit. If your primary need is complex conditional rules based on cart composition, Flycart’s Discount Rules for WooCommerce may be a better match.
Should I install multiple discount plugins at once?
Generally no. Two discount plugins that both hook into WooCommerce’s price filters can interact in unpredictable ways — one discount applying on top of another, or one plugin’s rules conflicting with the other’s campaigns. Pick one plugin and use it fully before adding a second. If you genuinely need functionality that spans two plugins, test the combination carefully on staging and confirm the interaction is predictable before running it in production.
Checklist Summary
- Identify your discount types first — BOGO, tiered, spend thresholds, and bundle support vary significantly between free and Pro tiers across plugins
- Scheduling precision matters: if you run flash sales or time-specific promotions, date-level scheduling is not enough — you need hour-and-minute precision
- Sale price method vs. cart discount method determines whether strikethrough pricing and theme sale badges appear on product pages — choose based on your storefront UX requirements
- If you run more than one campaign simultaneously, understand how the plugin resolves conflicts before you have one on a busy promotion day
- Check HPOS compatibility and block checkout support before installing anything — compatibility issues found post-launch are expensive
- The right plugin is the one that fits your actual workflow, not the one with the most features or the highest install count
Try Smart Cycle Discounts free
If your checklist points toward scheduled campaigns with automatic sale price display — recurring deals, flash sales, BOGO, and role targeting all in the free version.