WooCommerce Tips

How Cycle AI Turns a Plain-English Description Into a WooCommerce Campaign

How Cycle AI Turns a Plain-English Description Into a WooCommerce Campaign

WooCommerce Tips · AI Tools

How Cycle AI Turns a Plain-English Description Into a WooCommerce Campaign

Cycle AI is a campaign assistant built into Smart Cycle Discounts. You describe what you want in plain English, it reads your actual store data, and it drafts a complete campaign โ€” discount type, product scope, value, and schedule all included. This post goes deep on how that flow actually works: what the AI sees, how it decides what to build, what the draft looks like in the wizard, and where human judgment still matters.

Most WooCommerce discount setups involve more decisions than the interface makes obvious. You choose a discount type, set a value, decide which products or categories it covers, assign a start date and end time, set a priority, and then mentally check whether it conflicts with anything else already running. For a single campaign that’s manageable. For a store running four or five promotions across a year, the overhead adds up โ€” and the decisions don’t get easier with repetition.

Cycle AI is the campaign assistant built into Smart Cycle Discounts. It approaches setup differently: you describe what you want in one sentence, and it returns a complete campaign configuration, grounded in your actual catalog, ready to review in the campaign wizard. This post is a deep walkthrough of that flow. It’s based on the plugin source code, not marketing copy, so where behavior is hedged, that’s because the code hedges.

If you’re new to Smart Cycle Discounts and want to understand its campaign model before reading about the AI layer, the post on what Smart Cycle Discounts is and how it works covers the foundations. The first-look introduction to Cycle AI is also worth reading if you want a shorter overview before diving into this more detailed walkthrough.

What Cycle AI is and where it lives

Cycle AI is a floating chat panel inside the Smart Cycle Discounts admin area. It appears as a small button in the bottom-right corner of the Campaigns and Dashboard pages. Clicking it opens a chat interface where you type what you want. It’s not a separate page or a wizard you navigate to โ€” it’s always available from those two admin screens.

The first time you open it, a consent modal explains what data gets sent to the AI service. Cycle AI sends your prompt and a structured summary of your store โ€” product names, categories, and tags โ€” to Webstepper’s hosted AI service. Customer orders, personal information, and anything transactional are never sent. You need to accept before any AI request goes out, in keeping with WordPress.org’s external services requirements.

Once you’ve consented, the welcome screen greets you with example prompt chips. These are generated from your actual store context when possible โ€” real category names, seasonal events relevant to your location, your slow-moving products if any exist. You can click a chip to pre-fill the input or type your own request from scratch.

What it reads before it writes anything

Before Cycle AI generates a campaign, it assembles a structured snapshot of your store and sends it alongside your prompt. This is the context block that grounds the AI’s decisions in your actual setup rather than in generic assumptions.

The context includes:

  • Store basics: store name, currency, current date and time, day of the week, timezone, and base country code
  • Upcoming events: seasonal occasions or holidays relevant to your store’s location within the next 30 days
  • Catalog: all product categories with their IDs and product counts, all tags with their IDs and counts, and individual products (up to 250, ordered by most recently published)
  • Store intelligence: your bestsellers (last 30 days), slow-moving products, new arrivals (last 14 days), stock summary (low stock and out-of-stock counts), and how much discounting is currently active across your store
  • Active campaigns: a text summary of your existing campaigns, so the AI can avoid obvious scope overlaps or schedule conflicts
  • Available user roles: every customer role registered on your site โ€” default WordPress roles plus any custom ones โ€” so the AI can target specific segments when you ask
  • Planner hints: scheduling context from the Campaign Planner service to help the AI avoid date collisions

All of this goes into the prompt as structured data, not prose. The AI reads it as JSON. Category and product IDs it outputs are later validated against your actual catalog โ€” if it references an ID that doesn’t exist, the validator catches it before the wizard loads.


Short greetings skip the full context

Inputs of 25 characters or fewer that start with greeting words (“hi,” “hello,” “hey,” “what,” “how”) are routed to a lightweight conversational mode that skips the catalog and discount schema entirely. This cuts response time for greetings from several seconds to under two seconds. The full store context and campaign schema are only sent when your input is clearly a campaign request.

A full worked example: prompt to campaign

Let’s walk through a complete example using a concrete prompt. The store sells outdoor gear โ€” categories include Jackets, Footwear, Accessories, and Camping Equipment. The slow movers list includes several products from the Jackets category. It’s mid-November.

The prompt

Clear out slow-moving jackets before winter ends. Run something for about 10 days starting this Friday.

What the AI sees

It reads the current date (say, November 21), calculates that this Friday is November 24, and adds 10 days to get December 3. It checks the slow movers list and finds several products from the Jackets category. It also reads your active campaigns and sees no overlap with Jackets in that date window.

What it reasons and writes back

Cycle AI sends two things: a brief reasoning explanation and the campaign JSON. The reasoning comes first in the panel, before the campaign is loaded into the wizard. Something like:

Your slow movers include several products from the Jackets category. A percentage discount is the right tool for clearance at this stage of winter โ€” it works across all price points without needing per-product setup. I've set it to run from November 24 through December 3 (10 days). The discount is 20% โ€” a clearance depth that moves inventory without going to the extremes of a liquidation sale.

Read this reasoning before reviewing the campaign. It tells you which products it targeted, why it chose that discount type, and how it arrived at the depth. If the reasoning doesn’t match what you intended, that’s the right moment to adjust your prompt rather than trying to piece together what went wrong after the wizard loads.

What the wizard loads

After reading the reasoning, a “View Campaign” option appears in the panel. Clicking it opens the campaign wizard with all five steps pre-filled:


Example campaign loaded into wizard

Name: Winter Jacket Clearance

Product scope: All products in the Jackets category

Discount type: Percentage โ€” 20% per item

Schedule: November 24, 00:00 → December 3, 23:59 (store timezone)

Priority: 3 (default mid-range)

Nothing is live at this point. The campaign is loaded into the wizard and you’re on the review step. Every field is editable โ€” you can change the discount value, adjust the product scope, shift the end date, or alter the priority before saving.

How Cycle AI decides what to build

Understanding what the AI controls helps you know where to focus your review. Here is what it decides on your behalf, and the rules it follows.

Campaign name

The AI generates a human-readable, campaign-friendly name. It’s deliberately creative and merchant-facing โ€” “Winter Jacket Clearance” rather than “Campaign_Nov24_Jacket_20pct”. Change it freely if it doesn’t match your store’s naming conventions.

Product scope

The AI chooses from four selection modes. “All products” applies storewide or within the categories and tags you specify. “Specific products” targets individual product IDs from your catalog. “Smart selection” uses a built-in criterion โ€” best sellers, featured, low stock, or new arrivals โ€” to pick products dynamically. “Random products” picks N products at random from your catalog.

When your request is vague (“run a sale this weekend”), the AI defaults to all products storewide rather than guessing specific products. When you name a category, it targets that category. When you name a criterion (“my bestsellers,” “new arrivals”), it uses smart selection with the matching criterion.

The category and tag IDs the AI outputs are validated against your actual catalog before the wizard loads. If a category name you mentioned doesn’t exist in your store, the AI will note this in its reasoning โ€” it won’t silently target a category that isn’t there.

Discount type

The AI has access to the discount types your plan supports, and it picks the one that best fits your request. Clearance requests tend to get percentage discounts. Volume-increase requests (“buy more, save more”) map to tiered pricing. Cross-sell requests map to BOGO. The AI’s reasoning always names the type it chose and why.

On the free plan, percentage, fixed-amount, BOGO (same-product), and buy-X-get-Y (cross-product) are available. Tiered volume pricing, spend thresholds, and bundle discounts require a Pro license. If you ask for a Pro-type campaign on the free plan, the AI names the Pro type explicitly in its reasoning, explains what it is, and then builds a percentage-discount version you can save today. It won’t output a campaign type you can’t save.

Discount value

The AI picks round numbers unless you specify an exact value. Percentage discounts fall between 5% and 60%. Fixed-amount discounts fall between $1 and $500. The AI picks based on what makes sense for the campaign type and the store’s catalog โ€” it has no access to your cost of goods, so the value it chooses is based on promotion logic, not your margin structure. Always verify the value against your actual margins before launching.

Schedule

The AI sets a start date, end date, and optionally start and end times. It uses your store’s timezone. “This Friday” resolves to the correct date. “6pm to midnight” converts to 18:00โ€“00:00. If you don’t specify a time of day, the campaign runs all day (00:00 to 23:59).

Recurring campaigns are supported โ€” daily, weekly (with specific days), or monthly. The AI only enables recurrence when you explicitly ask for it: “every Monday,” “weekly clearance,” “repeat monthly.” A campaign with a 7-day duration is not automatically recurring just because it’s 7 days long. For more on how to structure recurring promotions, the recurring campaigns documentation covers the available patterns and end conditions.

User role and location targeting

Both default to “all” โ€” the AI only applies targeting when you ask for it explicitly. “Only for wholesale customers” triggers role targeting using the actual role slugs registered in your store. “Only in Germany” triggers location targeting using ISO country codes. Your store’s base country is known from the context, so “only in my country” works correctly.

Free shipping

Off by default. The AI adds free shipping only when you explicitly ask (“include free shipping,” “add free delivery”). “Free shipping on orders over $X” maps to a spend threshold campaign โ€” a Pro feature โ€” not a free shipping toggle.

What the wizard draft looks like

When the campaign loads in the wizard, it lands on the review step with all five steps marked as complete. From here you can navigate to any step โ€” products, discounts, schedule, basic info โ€” and edit whatever doesn’t look right. The wizard is the same interface you’d use to build a campaign from scratch, so every field is available.

The review step runs Campaign Health automatically. This checks for scheduling integrity, scope conflicts with other campaigns, discount value sanity, and priority clarity. If Cycle AI’s draft triggers any warnings, they appear here before you save. Most warnings are informational โ€” a heads-up about a priority tie, for example โ€” but some indicate a real conflict you should resolve first.


Always read Campaign Health before saving

The wizard’s review step runs Campaign Health automatically, but it’s worth actively reading the output rather than scrolling past it. Campaign Health checks for overlapping campaign scopes, priority conflicts, and schedule integrity issues. If you’re running several promotions simultaneously, the AI’s conflict awareness is advisory โ€” Campaign Health is the authoritative check before launch.

There are also settings that Cycle AI cannot configure for you, which must be set manually in the wizard after generation. These include usage limits (per-customer caps, total usage caps), combination policies (stacking with other campaigns, blocking coupons, excluding sale items), subscription discount controls, promotional visual styling (badges, panels, bars), and specific shipping method selection for free shipping campaigns. If you ask for any of these in your prompt, the AI will tell you it can’t emit that setting and direct you to the relevant wizard step.

Refining the draft without starting over

If the first draft isn’t right, you don’t need to start from scratch. After reviewing the campaign in the wizard, you can type a follow-up instruction in the Cycle AI panel to adjust it.

Refinement works differently from re-prompting. Instead of rebuilding the whole campaign from your original prompt, it reads the current wizard session state โ€” the actual configuration across all five steps โ€” formats it as a structured summary, and sends that summary alongside your new instruction. The AI sees exactly what’s configured and applies only the change you described.

Some examples of refinement instructions that work well:

  • “Lower the discount to 15%”
  • “Extend it by three more days”
  • “Add Footwear to the product scope”
  • “Make it recurring every Friday for six weeks”
  • “Include free shipping with this one”
  • “Limit it to wholesale customers only”

Refinement works best for targeted adjustments. If you want to change the core concept โ€” a completely different discount mechanism, a different category entirely โ€” it’s usually cleaner to start a new prompt. Multiple stacked refinements that pull in different directions can produce a campaign that’s technically valid but not what you intended.

Where human judgment still matters

Cycle AI makes reasonable decisions given what it knows. But several things it doesn’t know โ€” and can’t know โ€” are exactly the things that determine whether a campaign actually works for your store.

Margin math

The AI has no access to your cost of goods. A 20% discount might be completely sustainable on a product with 60% gross margin and completely unsustainable on one with 18% gross margin. The AI picks a round number that fits the promotion type and catalog price range โ€” not your unit economics. Always verify the discount value against your actual margins before launching. The Webstepper discount break-even calculator can help with that arithmetic.

Product scope accuracy

When the AI targets a category, it targets every product in that category. If a category contains products you don’t want discounted โ€” a newly launched item, something already deeper on clearance, a high-margin line you’re protecting โ€” you need to adjust the scope manually. The wizard’s Products step lets you switch from category targeting to specific product targeting and remove individual items.

Your catalog’s taxonomy structure also affects what the AI can target. If products live in catch-all categories or have no meaningful tags, the AI will default to broader targeting because it doesn’t have a cleaner signal to work with. Understanding how Smart Cycle Discounts handles product selection helps you get more precise results from Cycle AI.

Campaign conflicts

The AI is aware of your active campaigns and uses that information to avoid obvious overlaps. But it’s working from a text summary, not a live priority-and-scope analysis. Campaign Health in the wizard review step does that analysis and flags anything the AI’s draft might have missed. Review those flags before saving, especially if you have several campaigns running concurrently.

Time-sensitive launches

If you’re planning a flash sale that needs to start at a precise time, verify the start time in the Schedule step before saving. The AI sets times based on what you describe โ€” “starts at 6pm” becomes 18:00 in your store timezone โ€” but confirm the 24-hour value and timezone assignment before a high-stakes launch.

Free plan vs. Pro: what changes

Cycle AI is available on the free plan of Smart Cycle Discounts. The difference between free and Pro is in which campaign types the AI can output and how many drafts you get per billing period.

Feature Free Pro
Monthly AI drafts 10 per month 50 per day
AI model Standard Smarter model
Percentage discounts
Fixed-amount discounts
BOGO (same product)
Buy X Get Y (cross-product)
Tiered volume pricing Pro only — AI explains & builds free alternative
Spend thresholds Pro only — AI explains & builds free alternative
Bundle discounts Pro only — AI explains & builds free alternative

When you run out of AI drafts, the panel will tell you when the allowance resets. The quota is managed server-side by the Cycle AI proxy โ€” the plugin displays the remaining count after each successful response.

On the free plan, if your request maps to a Pro-only discount type, the AI names the type explicitly in its reasoning, explains why it’s the right fit for your goal, and then builds a percentage-discount version you can save today. It won’t output a campaign you can’t save, and it won’t silently substitute something different without explaining why.

Frequently asked questions

Does Cycle AI actually use my catalog, or does it generate generic campaigns?

It uses your catalog. The context block sent with every full campaign request includes your product categories (with IDs and product counts), tags (with IDs and counts), individual products (up to 250), bestsellers from the last 30 days, slow movers, new arrivals, and your store’s active campaigns. Category and product IDs the AI outputs are validated against your actual catalog โ€” if it references an ID that doesn’t exist in your store, the validator catches it before the wizard loads.

What if I type something that isn’t a campaign request?

Short inputs starting with greeting words (“hi,” “what can you do,” “how does this work”) are routed to a lightweight conversational mode. The AI responds warmly and explains what it can do or asks what kind of campaign you’d like to create. No campaign JSON is generated for these inputs โ€” the full context and discount schema are only used when your input is clearly a campaign description.

Can I ask for a BOGO campaign through Cycle AI?

Yes, on both free and Pro plans. There are two BOGO variants: same-product BOGO (buy two of the same item, get one discounted) and cross-product buy-X-get-Y (buy products from one set, get products from another set discounted). The AI picks the right variant based on how you describe the offer. “Buy 2 get 1 free on all t-shirts” maps to same-product BOGO; “buy a jacket, get 50% off a matching scarf” maps to cross-product buy-X-get-Y.

Can I ask for a tiered “buy more, save more” discount on the free plan?

The AI will recognize the intent, name tiered pricing as the right tool, and explain that it’s a Pro feature. It will then build a percentage-discount version you can use on the free plan and include an upgrade link if you want the tiered version. It never outputs a campaign type you can’t save.

Can Cycle AI set up a recurring campaign โ€” like every Friday?

Yes. If your request includes clear recurrence language (“every Friday,” “weekly clearance,” “monthly sale,” “every weekend”), Cycle AI configures the recurrence settings in the Schedule step: pattern (daily, weekly, or monthly), specific days for weekly patterns, and whether the recurrence ends after N cycles or runs open-ended. If you don’t explicitly ask for recurrence, it won’t enable it โ€” a campaign with a 7-day window isn’t automatically recurring.

Can I refine the campaign if the first draft isn’t right?

Yes. Type a follow-up instruction in the Cycle AI panel after the campaign loads in the wizard. Refinement reads the current wizard state โ€” all five steps โ€” and applies your change on top of what’s already there. “Lower the discount to 15%,” “add Footwear to the product scope,” “extend it by another week” โ€” each of these updates the relevant field without touching everything else. The updated campaign loads back into the wizard for another review.

What data does Cycle AI send to an external service?

Your prompt and a structured summary of your store โ€” product names, category names, tag names, store name, currency, timezone, and aggregate intelligence data like bestseller product names and stock counts. Customer orders, personal information, pricing details, and financial data are never sent. You’re shown a consent modal explaining this on first use, and you can revoke consent at any time from the Cycle AI panel header.


What to take away from this
  • Cycle AI reads your actual store data โ€” catalog, bestsellers, slow movers, active campaigns โ€” before generating anything. The output is grounded in your store, not a generic template.
  • The reasoning explanation appears before the campaign loads. Read it first: it tells you which products were targeted, why that discount type was chosen, and how the AI interpreted your request.
  • All five wizard steps are pre-filled and fully editable. Cycle AI gets you to the review step faster โ€” it doesn’t replace the review.
  • Campaign Health runs automatically in the review step and catches conflicts the AI’s draft might have missed. Use it before saving.
  • Cycle AI cannot verify your margins. Always check the discount value against your cost of goods before launching.
  • Settings the AI cannot emit โ€” usage limits, combination policies, subscription controls, visual styling โ€” must be configured manually in the wizard after generation.
  • Free plan includes 10 AI drafts per month with percentage, fixed, BOGO, and buy-X-get-Y campaigns. Pro adds tiered, spend threshold, and bundle types, plus 50 drafts per day and a smarter model.

Try Cycle AI in Smart Cycle Discounts

Cycle AI is available on the free plan. Install Smart Cycle Discounts, open the Cycle AI panel from the Campaigns or Dashboard screen, and describe the campaign you want. The wizard loads the draft โ€” you review, adjust if needed, and launch.

Webstepper

We build Smart Cycle Discounts and TrustLens โ€” WooCommerce plugins for stores that want discount campaigns to run themselves and customer behavior to be legible. This post is based on the actual plugin source code, not marketing copy.