Smart Cycle Discounts: The Complete Guide to WooCommerce Campaign Scheduling
Plugin Guide · Smart Cycle Discounts
The Complete Guide to Smart Cycle Discounts
Every feature explained — from your first campaign to coupon codes, Cycle AI, Campaign Intelligence, analytics, email alerts, and Promotional Visuals.
[LAST UPDATED: 2026-07-10]
If you have ever set a sale price on fifty products the night before a promotion, realized halfway through that two campaigns were quietly cancelling each other out, or discovered that your Black Friday sale was still running in mid-December — you already know the problem. Manual discount management in WooCommerce scales poorly, leaves no audit trail, and makes recurring promotions a chore you repeat from scratch every time.
Smart Cycle Discounts is built to fix that. But it goes further than most store owners expect when they first install it. This guide covers everything: every discount type, how coupon-code delivery and Cycle AI work, every targeting option, how the scheduling system actually works, what Campaign Intelligence is really doing, the analytics layer, email notifications, and the storefront display settings. By the end you will have a complete picture of what the plugin does and how to use it well.
7
Discount types (3 free, 4 Pro)
5
Product targeting modes
∞
Campaigns — no limit, free or Pro
What Smart Cycle Discounts Is
Smart Cycle Discounts is a WooCommerce plugin that manages promotional discounts through organized campaigns rather than scattered per-product sale price edits. You define a campaign — which products, what discount, what schedule, who qualifies — and the plugin handles activation, deactivation, conflict resolution, and performance tracking automatically.
It is built by Webstepper and available in two versions: a free version on WordPress.org that is fully functional (not a crippled trial), and a Pro version that adds advanced discount types and the full analytics dashboard. If you want to understand the engineering standards behind the plugin — security defaults, HPOS compatibility, and how the free/Pro split is actually declared in the code — the post on what a Webstepper plugin looks like before it ships goes through all of that in detail.
The most precise description: Smart Cycle Discounts is a promotion operations system for WooCommerce. Not just a discount rule editor, and not just a scheduler. It covers the full lifecycle — plan, launch, monitor, optimize — with a structured workflow and a built-in advisory layer that tells you when something needs your attention.
How it’s different from WooCommerce’s built-in sale price
WooCommerce lets you set a sale price and optionally a date range per product. That works for one or two products. When you’re managing dozens of products across multiple simultaneous promotions, the per-product approach creates invisible conflicts, loses history, and doesn’t scale. Smart Cycle Discounts moves discount management to the campaign level: configure once, apply to any number of products, get automatic conflict detection and a full record of what ran.
The Problem It Solves
The problems that bring store owners to Smart Cycle Discounts are predictable. They almost always involve one of four situations.
Promotions start late or end late. Manually setting sale prices on fifty products takes time. By the time you finish, the sale should have started an hour ago. Ending the sale is the same ordeal in reverse — except now customers are already seeing the lingering “25% off” badge on products that are no longer discounted.
Multiple campaigns conflict silently. You have a category sale running, a clearance on slow-moving inventory, and a flash sale on new arrivals. Somewhere in that overlap, the same product is covered by all three. Which discount applies? You don’t know, and neither does WooCommerce — it just uses whichever sale price you set last on the product editor. Smart Cycle Discounts resolves conflicts explicitly through a priority system and flags them before launch.
There’s no record of what you ran. Next Black Friday, you want to know: which products were included last year, what discount percentages you used, how they performed. With per-product sale price edits, that history doesn’t exist in any organized form. With Smart Cycle Discounts, every campaign is a named, dated record you can review, duplicate, and compare against.
Recurring promotions require repeated manual setup. A weekly weekend sale. A monthly members discount. A seasonal event that returns every quarter. Without campaign management, each occurrence means rebuilding from scratch. With Smart Cycle Discounts, you configure the recurrence once and let it run.
Real scenario
The store that ran a sale for three weeks without knowing it
A WooCommerce store set up a two-day flash sale before a long weekend. They updated sale prices manually across 60 products. When the weekend ended, they forgot to revert them. The “flash sale” ran for another three weeks until a customer emailed asking why the prices had gone back up on a restock notification.
With Smart Cycle Discounts, the campaign would have ended automatically at the configured time. The store owner would have received an email notification when it concluded. And the next time they wanted to run the same promotion, they would duplicate the campaign, update the dates, and be done in two minutes.
The Campaign Workflow — 5 Steps
Every discount in Smart Cycle Discounts is built as a campaign. A campaign is a named promotion with a defined scope (which products), a defined discount (type and amount), a defined schedule, and optionally a defined audience (user roles, countries). Campaigns move through a lifecycle: Draft → Scheduled → Active → Expired.
The campaign wizard walks you through five steps. Here’s what each one does — and what decisions it surfaces.
Step 1: Basic Information
Name the campaign, write an optional description, and set its priority on a 1–5 scale. Priority is how the plugin decides which campaign wins when two active campaigns both cover the same product. Higher number wins. Setting this at creation time is important — it prevents last-minute priority wrestling when you have multiple campaigns running simultaneously.
Step 2: Product Selection
Choose which products the campaign covers. Five free targeting modes are available: all products, specific products (AJAX-powered search), categories, smart selection (auto-select by best sellers, featured, low stock, or new arrivals), and random products (daily rotation from your catalog). An optional Pro conditions layer can further filter any of these by price, stock level, or product attributes with AND/OR logic. Variable products are supported — applying a campaign to a variable product automatically covers all its variations.
Step 3: Discount Configuration
Select the discount type (percentage, fixed, BOGO, tiered, spend threshold, or bundle) and configure its parameters. Also set audience restrictions: which user roles see the discount (include or exclude), and which billing or shipping countries qualify. Toggle free shipping for the campaign if needed — that’s a single checkbox, not a separate shipping rule setup.
Step 4: Schedule
Set start and end date/time with your store’s timezone. Configure whether the campaign runs once or recurs. Two recurring modes exist: Continuous (toggles active/inactive on a repeating time window — useful for things like a weekly weekend sale you never want to manually restart) and Instances (creates a separate campaign record for each occurrence, giving you individual analytics per run).
Step 5: Review and Launch
Review a full summary of everything you’ve configured. Campaign Health runs here — you see a health score, any conflict warnings, stock exposure flags, and schedule integrity checks before the campaign goes live. Campaign Intelligence also gives you a pre-launch verdict: Ready to launch, or here’s what needs resolving first. Launch directly or save as Scheduled for automatic activation later.
After a campaign expires, it stays in your campaign list. You can duplicate it (copy all settings, update the dates), review its history, or reactivate it with new dates. That duplication feature is the practical solution to recurring seasonal promotions — duplicate last year’s Black Friday campaign, update the dates, done.
All Seven Discount Types Explained
Smart Cycle Discounts supports seven discount types across free and Pro: three free, four Pro. Each one integrates with the same campaign workflow — scheduling, targeting, health checks, and analytics work identically regardless of which type you choose.
Free
Percentage Discount
Reduces all qualifying product prices by a set percentage. The most common discount type for storewide and category sales where absolute price differences don’t matter.
Example: 20% off all running shoes for the summer sale weekend.
Free
Fixed Amount Discount
Reduces prices by a flat currency amount. Better than percentage when you want to communicate a specific saving or when your products cluster around similar price points.
Example: $15 off all items in the accessories category through the end of the month.
Free
BOGO — Buy One Get One
Flexible buy/get configuration on the same product: buy X units, get Y units free or at a reduced percentage. Works well for clearing inventory of items that sell in natural pairs or sets.
Example: Buy 2 candles, get 1 free. Or buy 3 protein bars, get 1 at 50% off.
Pro
Buy X Get Y (Different Products)
The cross-product sibling of BOGO: buying a qualifying product (or one from a qualifying set) unlocks a discount on a different product or category. Useful for steering customers toward accessories, add-ons, or a specific product you want to move.
Example: Buy any tent, get a sleeping bag at 30% off.
Pro
Tiered Quantity Discount
Volume pricing: the more a customer buys, the higher the discount. You define multiple quantity breaks. The discount applies automatically at checkout based on cart quantity. Essential for wholesale, B2B, and any store that wants to incentivize larger order sizes.
Example: Buy 5–9 units → 10% off. Buy 10–24 → 20% off. Buy 25+ → 30% off.
Pro
Spend Threshold Discount
Cart-value-based discounts: spend over a threshold amount, get a percentage or fixed discount on the whole order. A reliable average order value driver — customers who are close to the threshold will add another item to qualify.
Example: Spend $75 or more, get 10% off your entire order. Spend $150 or more, get 15% off.
Pro
Bundle Deal
Discounts applied when customers buy a defined set of products together. Supports percentage, fixed, or flat bundle pricing. Good for kits, starter packs, or product combinations that make natural sense to buy together.
Example: Buy the shampoo + conditioner + hair mask together and save 20% versus buying them individually.
All seven discount types can run as WooCommerce coupons too, not just automatic sale prices — see the next section. They also work alongside WooCommerce’s own native coupon system: campaign discounts and a customer-entered WooCommerce coupon are independent and can be used simultaneously. On Pro, you can configure whether campaign discounts can stack with coupon codes or should be mutually exclusive.
Coupon Code Delivery — Auto-Apply or Code-Required
Every campaign in Smart Cycle Discounts can run in one of two delivery modes: auto-apply, where the discount fires automatically for qualifying customers, or requires-code, where customers must enter a code at checkout. Both modes are free, and both work across all seven discount types — a code-gated BOGO or tiered discount is just as possible as a code-gated percentage discount.
Auto-apply (Free)
The discount applies automatically to qualifying customers while the campaign is active. No code entry required. This is the default mode and the right choice for storewide sales, category promotions, and anything you want visible on the product page itself.
Requires code — single shared code (Free)
A single shared code gates the discount. Customers type it into the WooCommerce coupon field at checkout, the same field they already know from ordinary coupons. You can also generate a shareable link with the code pre-applied using a ?wsscd_code=YOURCODE URL parameter — paste it into an email or social post and the code applies automatically when the customer lands on the cart. A global usage limit (maximum total redemptions across all customers) is available on the free tier, along with a “View codes” admin page showing the code and its redemption count.
Bulk unique-code generation and single-use enforcement (Pro)
Pro adds the ability to generate up to 50,000 unique codes for one campaign in a single batch — with a configurable prefix and code length — and export the full list as a CSV. That’s built for email blasts, influencer codes, or loyalty programs where every recipient needs their own code. Bulk-generated codes are single-use by design, each locked to one redemption. Pro also adds single-use enforcement on your one shared code: lock it to one redemption in total, or one redemption per customer, so it can’t be reused or passed around after its first use.
This is not the same thing as a WooCommerce coupon
A code-required Smart Cycle Discounts campaign uses the same checkout coupon field, but the code, its rules, and its usage limits all live inside the campaign — not in WooCommerce’s native coupon post type. That’s what lets a single campaign apply tiered, BOGO, or spend-threshold logic to a code, something a plain WooCommerce coupon can’t do on its own. If you’re migrating existing WooCommerce coupons into campaigns, the post on moving WooCommerce coupons to Smart Cycle Discounts walks through the mapping.
Cycle AI — Describe a Campaign in Plain English
Cycle AI is Smart Cycle Discounts’ natural-language campaign drafting assistant. Instead of stepping through the wizard field by field, you describe the promotion you want — “20% off all running shoes this weekend” — and Cycle AI reads a summary of your actual catalog, drafts a complete campaign with a discount type, product scope, and schedule, and drops it into the wizard for your review. You can keep chatting to refine it (“make it 25% instead,” “limit to 200 uses”) before you save anything.
Cycle AI is available on both tiers, with different usage limits: the free version includes 10 drafts per month, and Pro raises that to 50 drafts per day. Nothing is published as a live campaign until you explicitly approve and save the draft through the normal wizard flow — Cycle AI drafts, it doesn’t launch anything on its own.
The feature is opt-in. Before the first use, the plugin shows a consent screen listing exactly what gets sent to the hosted AI service — your prompt, a summary of product names, categories, and category counts, plus your license and install identifiers to enforce the usage quota. No customer names, emails, or order data are ever included, and no calls happen in the background; the request fires only when you type a prompt and press send. If you never open Cycle AI, no external service is contacted. For the full mechanics of how a prompt becomes a campaign, see the dedicated Cycle AI guide.
Product Targeting and Customer Segmentation
One of the more powerful aspects of the campaign structure is the flexibility in choosing who gets the discount and which products it covers.
Product selection modes
All Products
Applies the campaign discount to your entire product catalog. Best for storewide sales and clearance events. One click covers everything.
Free
Specific Products
Hand-pick products using the AJAX-powered search. Best for targeted promotions where you want precise control over exactly which SKUs are included.
Free
Categories
Select product categories to include or exclude. New products added to a category after launch are automatically covered. Works cleanly with WooCommerce category structure.
Free
Smart Selection
Let the plugin auto-select products by business criteria — best sellers, featured products, low stock, or new arrivals (last 30 days) — resolved automatically at runtime.
Free
Random Products
The plugin selects a defined number of random products from your catalog each day. Useful for deal-of-the-day promotions that change daily and give customers a reason to check back regularly.
Free
All five targeting modes above are free. A separate, optional “Conditions” layer sits on top of them: rules that filter products by price range, stock level, attributes, and more, combined with AND/OR logic. That conditions layer — not the five modes themselves — is the part that requires Pro.
Customer segmentation
Beyond product targeting, you can restrict who sees and receives the discount:
- User role targeting — Include or exclude specific WordPress roles. Include mode gives the discount only to selected roles (e.g., Wholesale Customer, Premium Member). Exclude mode gives the discount to everyone except selected roles. This is how you build wholesale pricing, member-only sales, or B2B tiers from a single store.
- Country targeting — Restrict discounts by billing or shipping country. Useful for region-specific promotions, local market events, or shipping promotions that only apply to certain geographies. The post on WooCommerce location-based discounts covers how the billing vs shipping country check works and the edge cases worth understanding before launch.
For subscription products: on the free tier, campaign discounts apply to the recurring subscription price automatically, with strikethrough pricing showing on product pages. Pro adds control over whether to discount the recurring charge, the sign-up fee, or both — and lets you limit the discount to the first X renewal payments (for example, 20% off for the first three months, then full price).
Scheduling — One-Time, Recurring, and Timezone-Aware
The scheduling system is what makes Smart Cycle Discounts fundamentally different from just having a sale price. A campaign can be set up weeks or months in advance. It activates automatically at the scheduled time and deactivates when it ends — no manual intervention required.
One-time campaigns
Set a start date/time and an end date/time. The campaign activates at the start, runs until the end, then moves to Expired status. Your original product prices restore automatically. Use Draft status to build campaigns in advance without activating them — useful for preparing your entire Q4 promotion calendar in September.
Recurring campaigns
Two recurring modes handle different use cases:
Continuous mode toggles the campaign active or inactive based on a repeating time window. The campaign “exists” continuously — it just activates and deactivates on schedule. This is the right choice for recurring promotions where you want minimal database overhead: a weekly weekend sale configured once that repeats every Friday evening through Sunday night, indefinitely. You never have to touch it again.
Instances mode creates a separate campaign record for each occurrence. Each instance has individual analytics. This is better when you want to compare performance across occurrences — “did the January flash sale outperform February’s?” — or when the details of each recurrence are likely to vary.
Timezone support
Campaign start and end times follow your store’s configured timezone. If you run a midnight flash sale, it starts at midnight in your store’s timezone — not UTC. This matters for stores with international audiences or stores where the owner’s system timezone differs from the store’s operating timezone.
One dependency worth knowing
Campaign activation timing depends on WordPress’s scheduling infrastructure (WP-Cron, or ideally Action Scheduler). On low-traffic stores or stores with misconfigured WP-Cron, campaign timing can drift by minutes or hours. If precise timing matters — midnight launches, hourly flash sales — pair the plugin with a real server cron job. There’s a detailed post on this exact problem in the Webstepper blog.
Campaign Health Checks
Before you launch a campaign, Campaign Health evaluates whether it’s structurally sound. This runs during the wizard review step (Step 5) so you see problems before the campaign goes live — not after a customer emails you about a price discrepancy.
Health checks cover six dimensions:
Conflict Detection
Does this campaign overlap with another active or scheduled campaign on the same products? If yes, is the priority clear, or is there a tie that creates ambiguity?
Stock Exposure
Are any promoted products at risk of selling out during the campaign? Low-stock products in active promotions can create customer disappointment if they disappear mid-sale. If you want to understand exactly what happens to a running campaign when a product goes out of stock — what the customer sees, what the badge does, and what signals appear on your dashboard — this post covers the full scenario.
Schedule Integrity
Is the timing valid? Start before end, no dates in the past, timezone configured correctly? Schedule errors cause campaigns to never activate or expire immediately.
Discount Integrity
Is the discount configuration complete and internally consistent? A BOGO deal with a missing “get” quantity or a tiered discount with overlapping ranges fails silently without this check.
Scope Validity
Does the product selection actually resolve to products at runtime? A campaign targeting a category that exists in the database but has no published products is functionally empty.
Priority Clarity
If multiple campaigns compete for the same products, are priorities set to avoid ties? Priority ties create unpredictable discount application and should be resolved before launch.
Each dimension produces a signal. Serious failures push the campaign toward a Blocked health state (should not launch). Minor concerns produce warnings you can acknowledge and proceed. The resulting health score feeds directly into Campaign Intelligence — a campaign with clean health has a head start on a good advisory verdict.
Campaign Intelligence — The Advisory Layer
Campaign Intelligence is the most distinctive part of Smart Cycle Discounts. It answers a specific question for each campaign: “What should you do with this right now?” Not just “is this campaign healthy” — but an actionable decision with a reason and a recommendation.
Every campaign has a Campaign Intelligence state, visible on the dashboard, the campaigns list, the campaign overview panel, and the wizard review step. There are five states:
Action Required
A blocker prevents safe operation — an unresolvable conflict, an invalid configuration, or a health dimension that has failed. Do not leave this campaign active without addressing the reason.
At Risk
A significant concern could cost you if left unaddressed — margin exposure, a conflict, low stock on promoted products, or economics suggesting the discount depth is unsustainable. The campaign can run, but something needs attention.
Needs Attention
A lower-severity issue exists or the evidence base is thin (a new campaign with no order history). Running acceptably, but something is worth a second look.
On Track
Operating normally. No significant risks. Performance (where measurable) is within acceptable range. Leave this campaign running without active intervention.
Ready
Clean configuration, good health, and favorable timing context. In the wizard, this is your clear launch signal. On the dashboard for a draft campaign, it’s a prompt to schedule or activate.
The intelligence system combines four layers of signals to reach each verdict: health checks, opportunity and readiness scores, store context (how many campaigns are running, how much of your catalog is currently discounted), and — on Pro — economics data from actual order history. New campaigns default to Caution, not Good, because the system earns confidence from evidence rather than assuming the best.
The advisory layer is available in both free and Pro. Pro adds the economics depth — discount rate analysis, break-even hurdle tracking, revenue contribution — that makes the recommendations significantly more reliable. Free users still get meaningful operational guidance; they just don’t get the financial signals behind it.
How to use Campaign Intelligence day to day
Open the dashboard and look for anything in Blocked or At Risk. That’s your daily review. If everything is On Track or Ready, you’re done in 30 seconds. If something is flagged, click through to the campaign overview panel — the reason text is specific: “Campaign A is in conflict with Campaign B on 14 products” rather than a vague “there’s a problem.” That specificity is what makes it actionable.
For a complete explanation of how the decision engine works — what each verdict state means, what triggers them, and what to do when you see each one — see the dedicated post: Smart Cycle Discounts Campaign Intelligence: what the numbers actually tell you.
Analytics and Reporting (Pro)
The Pro analytics dashboard gives you campaign-level performance data so you can evaluate which promotions are actually working and calibrate future ones accordingly.
What the analytics dashboard covers:
- Revenue and conversion tracking — revenue attributed to each campaign, conversion rates, orders influenced by the campaign during its active period
- Top-performing products — which products within a campaign drove the most revenue and had the highest conversion rates
- Campaign comparison — side-by-side performance across multiple campaigns over custom date ranges
- Traffic and geographic data — where campaign-influenced orders came from
- Store performance strip — overall store context during the campaign period
Analytics data exports in CSV or JSON format for import into external tools. Scheduled reports let you automate periodic analytics emails — a weekly summary lands in your inbox without any manual work.
The economics data that feeds Campaign Intelligence — discount rate, break-even hurdle, revenue contribution — is drawn from this same analytics layer. That connection between the analytics you see and the intelligence you receive is what makes Pro recommendations significantly more reliable than free-tier guidance.
How attribution works
Analytics counts completed and processing orders only. On-hold orders are excluded because they represent unconfirmed revenue that skews metrics. The minimum sample size for rate-based economics metrics is 5 orders and 10 line items — below this threshold, the plugin returns “not enough data” rather than statistically meaningless percentages. A campaign’s first run will almost always show limited analytics data.
Email Notifications
Smart Cycle Discounts includes an email notification system that keeps you informed about campaign activity without requiring you to log in and check manually. Notifications cover both operational events (campaigns starting and ending) and proactive alerts (problems before they become expensive).
Free — Included
- Campaign started
- Campaign ended
- Campaign errors
Pro — Additional
- Campaign ending soon (advance warning)
- Daily performance report
- Weekly performance report
- Performance alert (threshold-based)
- Low stock alert on promoted products
- Milestone alert (revenue or conversion targets)
The distinction between free and Pro notifications maps to a useful framing: free notifications are reactive (they tell you what happened), Pro notifications are proactive (they tell you something is about to happen or that a threshold has been crossed). The low stock alert is a good example — you find out that a product in an active campaign is running low before it sells out, while the campaign is still live and you have time to act.
Email delivery uses WordPress’s built-in mail system (WP Mail) by default. Pro users can switch to SendGrid or Amazon SES for more reliable delivery, with full support for Reply-To, CC, and BCC configuration.
Display Settings — Promotional Visuals and Storefront
When a campaign is active, Smart Cycle Discounts controls how the discount appears on your storefront through a system called Promotional Visuals — a live designer for sale badges, cart savings rows, and offer panels that you build once and attach to any campaign. This replaced the plugin’s older, simpler badge-settings model and is considerably more configurable.
What a Promotional Visual is
A Promotional Visual is a named, reusable storefront element — an image sale badge, a cart savings-row summary, a tiered-pricing ladder, a BOGO explainer panel, or a spend-threshold progress bar. You design it once in the Visuals library, save it, and assign it to one or more campaigns. The visual and the campaign are independent records: the campaign controls the discount logic, the visual controls what shoppers actually see. Deleting or unassigning a visual never changes the discount itself.
Image badges, savings-row summaries, and BOGO panels are included free. Tier ladders, bundle panels, and spend-threshold progress bars are Pro — matching the tiered, bundle, and spend-threshold discount types they’re built to explain. A full walkthrough of the designer, the six visual types, and how to build your first badge is in the dedicated post on designing WooCommerce sale badges with Promotional Visuals.
How visuals reach the storefront
Visuals render through WooCommerce’s own template hooks on the shop loop, single product page, cart totals, and checkout totals — the same mechanism that puts WooCommerce’s native “Sale!” badge and strikethrough pricing on your pages. There’s no extra frontend JavaScript layer doing the rendering, which keeps shop and category pages fast even with a visual attached to every active campaign.
Setup wizard and plugin conflict detection
Before any of this matters, a built-in setup wizard runs on first install. It scans your store against a list of 19 known conflicting discount and dynamic-pricing plugins — plugins that also rewrite WooCommerce prices and will produce incorrect totals if left active alongside Smart Cycle Discounts. If it finds one, it can deactivate it for you directly from the wizard, rather than leaving you to hunt through your plugins list after something looks wrong on the storefront.
Free vs. Pro: The Complete Breakdown
The free version covers more than most stores need to start. Here is the complete picture of what is available where.
| Feature | Free | Pro |
|---|---|---|
| Discount types | ||
| Percentage discounts | ✓ | ✓ |
| Fixed amount discounts | ✓ | ✓ |
| BOGO (Buy One Get One — same product) | ✓ | ✓ |
| Buy X Get Y (different products) | ✗ | ✓ |
| Tiered quantity (volume) discounts | ✗ | ✓ |
| Spend threshold discounts | ✗ | ✓ |
| Bundle deals | ✗ | ✓ |
| Campaigns and scheduling | ||
| Unlimited campaigns | ✓ | ✓ |
| Automated scheduling with timezone support | ✓ | ✓ |
| Recurring campaigns (continuous + instances) | ✓ | ✓ |
| Campaign duplication | ✓ | ✓ |
| Campaign priority system | ✓ | ✓ |
| Coupon code delivery | ||
| Auto-apply (no code needed) | ✓ | ✓ |
| Requires code — single shared code, on any discount type | ✓ | ✓ |
URL auto-apply link (?wsscd_code=) |
✓ | ✓ |
| Bulk unique-code generation (up to 50,000/campaign, CSV export) | ✗ | ✓ |
| Single-use enforcement (per code or per customer) | ✗ | ✓ |
| Cycle AI (natural-language campaign drafting) | ||
| Cycle AI drafting | ✓ (10 drafts/month) | ✓ (50 drafts/day) |
| Promotional Visuals (storefront badges and panels) | ||
| Image sale badges, cart savings-row summaries, BOGO panels | ✓ | ✓ |
| Tier ladders, bundle panels, spend-threshold progress bars | ✗ | ✓ |
| Product targeting | ||
| All products, specific products, random products, categories, Smart Selection | ✓ | ✓ |
| Advanced product-conditions engine (price, stock, attribute filters with AND/OR logic) | ✗ | ✓ |
| Customer segmentation | ||
| User role targeting (include/exclude) | ✓ | ✓ |
| Country targeting (billing/shipping) | ✓ | ✓ |
| Advanced discount application rules (min. qty, min. value) | ✗ | ✓ |
| Coupon combination policy control | ✗ | ✓ |
| Subscriptions | ||
| Discount applies to recurring subscription price | ✓ | ✓ |
| Advanced subscription controls (sign-up fee, renewal limits) | ✗ | ✓ |
| Health and intelligence | ||
| Campaign Health checks (all 6 dimensions) | ✓ | ✓ |
| Campaign Intelligence (decision states, reasons, actions) | ✓ | ✓ |
| Campaign Intelligence — economics layer (discount rate, break-even) | ✗ | ✓ |
| Analytics and notifications | ||
| Campaign started / ended / errors emails | ✓ | ✓ |
| Advanced analytics dashboard | ✗ | ✓ |
| Analytics exports (CSV/JSON) | ✗ | ✓ |
| Scheduled analytics reports | ✗ | ✓ |
| Proactive notifications (low stock, performance alerts, milestones) | ✗ | ✓ |
| Premium email delivery (SendGrid, Amazon SES) | ✗ | ✓ |
| Free shipping toggle per campaign | ✓ | ✓ |
| HPOS compatibility | ✓ | ✓ |
| Block cart and checkout support | ✓ | ✓ |
Full pricing on the Smart Cycle Discounts product page.
Three Real-World Campaign Setups
Abstract feature lists are useful for comparison. What actually helps you decide is seeing how those features combine in practice. Here are three campaign configurations that show the system doing real work.
Setup 1 — Flash sale in under 3 minutes
A 48-hour weekend flash sale across three product categories
Open the wizard. Name it “Weekend Flash — March.” Set priority to 3. In product selection, choose categories: apparel, accessories, footwear. In discount config, set 25% percentage discount. In schedule, set Friday midnight to Sunday 11:59 PM with your store’s timezone. Review step shows Campaign Health: clean on all six dimensions. Campaign Intelligence: Ready. Launch. Done.
When Sunday night arrives, prices revert automatically. You receive a “Campaign ended” email confirmation. Next weekend, duplicate the campaign, update the dates, done in 30 seconds.
Setup 2 — Volume pricing to increase wholesale order size
Tiered quantity discount for your wholesale user role (Pro)
Name it “Wholesale Volume Pricing — Q2.” Priority 4 (higher than your standard sales). In product selection: all products. In discount config: tiered quantity, three tiers: 5–9 units = 10% off, 10–24 units = 20% off, 25+ units = 30% off. In audience segmentation: include user role “Wholesale Customer” only. Set no end date — this campaign runs continuously for the quarter. Regular customers see normal prices. Wholesale accounts see the tiered pricing automatically at checkout, no coupon code needed.
Setup 3 — AOV booster running alongside other campaigns
Spend threshold discount running at priority 1 year-round
Name it “Spend $100 Save 10%.” Priority 1 (lowest — it should yield to any specific product campaign). Scope: all products. Discount: spend threshold, $100 cart minimum, 10% off. No end date. Recurring continuous mode.
This campaign now runs in the background perpetually. Any customer who hits $100 in their cart gets 10% off automatically. When a higher-priority flash sale campaign runs and covers a product, the flash sale discount takes precedence on that product. The spend threshold still activates for anything not covered by a higher-priority campaign. You never have to touch it again.
Who It’s For — and Who It Isn’t
Smart Cycle Discounts fits some stores well and doesn’t add meaningful value for others. Here’s a clear assessment.
It fits your store if you:
- Run promotions regularly — flash sales, seasonal events, weekend specials — and currently manage them with manual product edits
- Manage more than a handful of products and find per-product sale price coordination cumbersome
- Run multiple simultaneous promotions and want visibility into which campaigns are active, whether any are conflicting, and which discount applies to a given product
- Want repeatable promotional workflows — duplicate last year’s campaign, update the dates
- Need role-based pricing for wholesale or member audiences from a single store
- Run recurring promotions (weekly deals, monthly offers) and want them to happen without manual intervention
- Want to know when a promotion is creating margin exposure or operational risk before it costs you
It’s probably not worth installing if you:
- Run a static store where products rarely go on sale — the campaign structure adds overhead with no return
- Have only a few products and manage sale prices comfortably through the WooCommerce product editor
- Need extremely high-volume, code-only coupon operations with no scheduling or product-targeting logic at all — Smart Cycle Discounts’ code delivery is built around campaigns (schedule, targeting, health checks included), so a store that only ever needs a flat pile of simple codes may not need the extra structure
A note on complexity and the learning curve
The wizard is genuinely intuitive. Most store owners create and launch their first campaign within 10 minutes of installing. The features that go deeper — the Pro conditions engine, the economics layer in Campaign Intelligence, the subscription controls, the guardrails — are there when you need them and don’t get in the way when you don’t. You’re not required to understand Campaign Intelligence to run a basic scheduled sale, and you’re not required to touch Cycle AI either — it’s there for when typing a sentence is faster than filling out five steps. The dedicated guide to using Cycle AI for WooCommerce discount campaigns covers the prompts that get the best results.
Key Takeaways
- Smart Cycle Discounts replaces per-product sale price edits with organized campaigns that activate and deactivate automatically at scheduled times.
- The free version includes percentage, fixed, and BOGO discounts, auto-apply or code-required delivery on every discount type (with URL auto-apply), all five product targeting modes including Smart Selection, user role and country segmentation, recurring schedules, Campaign Health checks, Campaign Intelligence, 10 Cycle AI drafts per month, and unlimited campaigns.
- Pro adds tiered volume pricing, spend thresholds, bundle deals, Buy X Get Y, the advanced product-conditions engine (price, stock, attribute rules with AND/OR logic), bulk unique-code generation with single-use enforcement, advanced tier/bundle/spend-threshold Promotional Visuals, advanced analytics with exports, proactive email alerts, 50 Cycle AI drafts per day, and the economics depth inside Campaign Intelligence.
- Campaign Health checks run before launch across six dimensions — conflicts, stock, schedule, discount integrity, scope validity, and priority clarity — so you catch problems before they cost you.
- Campaign Intelligence gives every campaign a decision state (Blocked / At Risk / Caution / On Track / Ready) with a specific reason and a recommended action. It’s advisory, not automated — you always decide.
- The plugin is free to start. Install it, run one campaign through the wizard — or describe it to Cycle AI — and see whether the workflow fits how your store operates.
Frequently Asked Questions
What is Smart Cycle Discounts?
Smart Cycle Discounts is a WooCommerce plugin that manages promotional discounts through organized, automated campaigns instead of manual per-product sale price edits. You configure a campaign — which products, what discount type and amount, auto-apply or code-required delivery, what schedule, who qualifies — and the plugin activates it automatically, monitors it, flags issues, and deactivates it when it ends. You can also describe the campaign to Cycle AI in plain English and have it draft the configuration for you. It is available free on WordPress.org with a Pro upgrade for advanced discount types, bulk coupon codes, and analytics.
Is Smart Cycle Discounts free?
Yes. The free version is fully functional — not a trial. It includes percentage discounts, fixed amount discounts, BOGO deals, auto-apply or single-shared-code delivery on every discount type (with URL auto-apply), automated scheduling with timezone support, unlimited campaigns, all five product targeting modes (including Smart Selection), user role and country segmentation, recurring campaigns, free shipping toggle, Campaign Health checks, Campaign Intelligence, and 10 Cycle AI drafts a month. The Pro version adds tiered volume pricing, spend thresholds, bundle deals, Buy X Get Y, the advanced product-conditions engine, bulk unique-code generation, advanced analytics, proactive email alerts, a higher Cycle AI quota, and the economics depth in Campaign Intelligence.
How is Smart Cycle Discounts different from WooCommerce’s built-in sale price?
WooCommerce’s built-in sale price is set per product, one at a time. Smart Cycle Discounts manages discounts at the campaign level: select hundreds of products at once using categories, rules, or random rotation; set a schedule; add audience restrictions; and the plugin handles activation, deactivation, and conflict resolution automatically. It also adds features WooCommerce doesn’t offer natively — conflict detection, priority management, recurring schedules, Campaign Health checks, Campaign Intelligence, analytics, and email notifications.
Does Smart Cycle Discounts replace WooCommerce coupons?
It can, if you want it to. Every campaign can run as auto-apply (no code, applies automatically to qualifying customers) or as a code-required campaign, where customers enter a code in the same WooCommerce coupon field at checkout. Unlike a plain WooCommerce coupon, a code-required Smart Cycle Discounts campaign can carry any of the seven discount types — tiered, BOGO, Buy X Get Y, and spend-threshold included — plus scheduling and targeting. The two systems also remain independent: you can still run native WooCommerce coupons alongside campaigns, and Pro lets you decide whether campaign discounts can stack with coupon codes or should be mutually exclusive.
Can I require a code for a discount instead of applying it automatically?
Yes, and it’s free. Every discount type supports a “requires code” delivery mode alongside the default auto-apply mode. You can set a single shared code with a total usage limit, share a link with the code pre-applied via a ?wsscd_code= URL parameter, and view redemption counts on a per-campaign codes page. Pro adds bulk generation of up to 50,000 unique single-use codes per campaign with CSV export, plus single-use enforcement per code or per customer.
What is Cycle AI and do I have to use it?
Cycle AI is an optional, opt-in feature that drafts a complete campaign from a plain-English description — discount type, product scope, and schedule included — for you to review and refine in the wizard before saving. It never publishes a campaign on its own. The free version includes 10 drafts per month; Pro raises that to 50 per day. If you never open Cycle AI, the plugin makes no external calls; the standard 5-step wizard works exactly the same with or without it.
Can I create wholesale or member-only discounts?
Yes. Use the user role targeting in the discount configuration step. Set Include mode to give the discount only to selected roles (e.g., “Wholesale Customer” or “Member”), or Exclude mode to give it to everyone except certain roles. This lets you run B2B pricing, membership discounts, and tiered audiences from a single WooCommerce store without separate storefronts.
Can I set up recurring weekly or monthly sales?
Yes. Recurring campaigns are available in the free version with two modes. Continuous mode toggles the campaign active/inactive on a repeating schedule — ideal for a weekly weekend sale you configure once and let run indefinitely. Instances mode creates a separate record for each occurrence, useful when you want individual analytics per run or when the campaign details vary between occurrences.
What happens when two campaigns cover the same product?
The campaign with the higher priority (1–5, where 5 is highest) takes precedence. Only one campaign’s discount applies to a product at a time — there’s no automatic stacking. Campaign Health flags priority ties and conflicts before launch so you can resolve them before they create ambiguity at checkout.
Does it work with variable products and subscriptions?
Yes to both. Variable products receive the discount across all variations automatically. Subscription products show strikethrough pricing on the free tier. Pro adds advanced subscription controls: discount the recurring price, the sign-up fee, or both, and optionally limit the discount to the first X renewal payments (e.g., 20% off for the first 3 months, then full price).
Does it work with WooCommerce HPOS and block cart/checkout?
Yes. Smart Cycle Discounts is fully compatible with WooCommerce High-Performance Order Storage (HPOS) and tested with custom order tables. It also fully supports WooCommerce block-based cart and checkout pages, with discount pricing displaying correctly in both classic and block templates. No configuration needed for either.
What is Campaign Intelligence and do I need to understand it to use the plugin?
Campaign Intelligence is an advisory layer that gives each campaign a decision state (Blocked, At Risk, Caution, On Track, or Ready), a specific reason for that state, and a recommended next action. You don’t need to understand it deeply to run campaigns — it’s designed to surface important signals in plain language. The practical habit is simple: check the dashboard, look for anything in Blocked or At Risk, click through to read the reason. If everything is On Track, close the tab.
Will it slow down my WooCommerce store?
The plugin is built for performance — optimized database queries, intelligent caching (including campaign badge HTML caching), and assets that only load on admin pages. The campaign scheduling engine uses WordPress’s Action Scheduler, the same background task system WooCommerce uses internally. Frontend impact on product pages is minimal. On stores with thousands of products, the plugin’s caching layer is specifically designed to handle large catalogs without per-page overhead.
Run your first campaign in under 10 minutes
Smart Cycle Discounts is free on WordPress.org. Install it, open the wizard, and see how far the free version gets you before deciding whether Pro makes sense.