Promo

by

  • PROMOTIONS
  • MARGIN
  • MONITORING
  • ECOMMERCE
Works with the AI tools you already use
+19 agents

Live promo control for ecommerce teams: watch what each running offer is actually costing in margin, then launch, pause, restrict or expand it.

A promo gets approved on a forecast and then runs unattended until it ends. That is where the money goes. The discount that was sized for full-price buyers gets taken disproportionately by people who were already converting, or it gets stacked with a code someone forgot about, or it sells through the one SKU you needed for next month. None of that is visible until the post-mortem, by which point the promo is over and the margin is gone. This skill watches what each running offer is actually costing and launches, pauses, restricts or expands it.

What It Does

  • Tracks the margin each running promo is giving up, in real time rather than after.
  • Separates incremental orders from orders that were already coming.
  • Detects stacking with other codes and automatic discounts.
  • Watches stock on the discounted SKUs against how fast they are moving.
  • Finds the segment taking the offer that should have been excluded.
  • Sets promo state to launch, pause, restrict or expand, with the reason.

Use Cases

  • Pause a promo the day its margin turns rather than at the post-mortem.
  • Catch a discount code stacking with an automatic offer.
  • Restrict an offer to the segment it was actually designed for.
  • Expand a promo that is working before the window closes.

Example Session

How are the live promos doing, and does anything need to change today?

One needs pausing today. One should be expanded before the weekend.

  • Promo | Orders | Incremental | Margin given up | Issue | Action
  • 20% sitewide | 1,840 | 22% | $84,200 | Mostly existing buyers | Pause
  • Free shipping over $85 | 960 | 61% | $11,400 | None | Expand to email list
  • Bundle, tee plus cap | 310 | 74% | $6,900 | None | Hold
  • 15% first order | 420 | 88% | $9,100 | Stacking with 20% | Restrict

The sitewide discount is giving up $84,200 to buy 22% incremental orders, which means most of it went to people already at checkout. Pause it. The first-order code is working exactly as intended and is also stacking with the sitewide one, so some customers are getting 32% off: restricting it fixes that on its own once the sitewide promo stops.

Why This Beats Prompting It Yourself

A Promo Forecast vs What It Is Doing Right Now: The Hidden Risk

A generic prompt evaluates a promo before it launches and again after it ends, because those are the two moments anyone looks. In between it runs on a forecast that assumed a mix of buyers you have no reason to expect. A sitewide discount taken mostly by existing traffic looks like a strong week in revenue and a bad one in margin.

When You Still Need The Stacking Caught

Two offers that are each reasonable become one that is not. Thirty-two percent off was never approved by anyone; it emerged because a first-order code and a sitewide discount were live at the same time. This skill reads the combinations customers are actually assembling at checkout, which is the only place that sum becomes visible.

Known Limitations

Incrementality here is estimated by comparing against baseline conversion for the same segments, which is good enough to decide a pause and is not a holdout test. Stacking detection needs discount-level data on the order, which some platforms report only partially. It sets the promo state and does not change your storefront's discount configuration.

Install It

  • Download the ZIP.
    It is free and there is no account to create.
  • Unzip it into your agent's skills folder.
    Claude Code reads ~/.claude/skills/, which is hidden by default: the command in the folder block opens it. Other agents scan their own directory, so drop the same folder there instead.
  • Ask your agent to use it.
    Restart the agent if it was already running, then it picks the skill up with no config.

skills folder

Copy

~/.claude/skills/promo/
  SKILL.md
  references/promo-rules.md
  live/
  # one file per check, with the state and reason

# macOS: create the folder and open it in Finder
mkdir -p ~/.claude/skills && open ~/.claude/skills

# Windows: paste in the Explorer address bar
%USERPROFILE%\.claude\skills\

Frequently asked questions

How is this different from a promo report?

A report tells you what a promo did. This decides what it should do next, while it is still running: pause, restrict, expand or hold, with the margin it is currently giving up and the share of orders that were actually incremental.

Which agents does the skill run in?

Any agent that supports the open SKILL.md format: Claude Code, Cursor, Codex CLI, GitHub Copilot, Gemini CLI, Manus, Grok and others load it unmodified. The format is portable, the location is not. Each agent scans its own skills directory, so you drop the same folder into whichever one yours uses. There is no config file to edit and no API key to provision.

What does it need connected to work?

Orders with discount detail, product margin, stock on hand, and the configured promotions. Customer history improves the incrementality estimate and is not strictly required.

How confident is the incrementality number?

Confident enough to pause on, not confident enough to publish. It compares the discounted period against baseline conversion for the same segments, which catches the large errors. A holdout is what settles it, and the skill says when one is worth running.

Why restrict rather than just cancel a stacking code?

Because the code itself is working: 88% of its orders were incremental. The problem is the combination, not the offer. Restricting it to first-time customers keeps the part that earns and removes the part that was never intended.

What is included with the skill?

The skill itself, the promo rules reference, the live check format, and the stacking detection logic. It is free and security scanned. We re-publish the ZIP when the rules change, so download it again if your checks start shifting.

Every promo decision needs the margin underneath the discount.

Polar folds product cost, shipping and returns into contribution margin, so launching or pulling a promo rests on what it leaves behind rather than on top-line lift.

Book a demo

Popular in E-commerce

<script type="application/ld+json">{"@context":"https://schema.org","@type":"FAQPage","mainEntity":[{"@type":"Question","name":"How is this different from a promo report?","acceptedAnswer":{"@type":"Answer","text":"A report tells you what a promo did. This decides what it should do next, while it is still running: pause, restrict, expand or hold, with the margin it is currently giving up and the share of orders that were actually incremental."}},{"@type":"Question","name":"Which agents does the skill run in?","acceptedAnswer":{"@type":"Answer","text":"Any agent that supports the open SKILL.md format: Claude Code, Cursor, Codex CLI, GitHub Copilot, Gemini CLI, Manus, Grok and others load it unmodified. The format is portable, the location is not. Each agent scans its own skills directory, so you drop the same folder into whichever one yours uses. There is no config file to edit and no API key to provision."}},{"@type":"Question","name":"What does it need connected to work?","acceptedAnswer":{"@type":"Answer","text":"Orders with discount detail, product margin, stock on hand, and the configured promotions. Customer history improves the incrementality estimate and is not strictly required."}},{"@type":"Question","name":"How confident is the incrementality number?","acceptedAnswer":{"@type":"Answer","text":"Confident enough to pause on, not confident enough to publish. It compares the discounted period against baseline conversion for the same segments, which catches the large errors. A holdout is what settles it, and the skill says when one is worth running."}},{"@type":"Question","name":"Why restrict rather than just cancel a stacking code?","acceptedAnswer":{"@type":"Answer","text":"Because the code itself is working: 88% of its orders were incremental. The problem is the combination, not the offer. Restricting it to first-time customers keeps the part that earns and removes the part that was never intended."}},{"@type":"Question","name":"What is included with the skill?","acceptedAnswer":{"@type":"Answer","text":"The skill itself, the promo rules reference, the live check format, and the stacking detection logic. It is free and security scanned. We re-publish the ZIP when the rules change, so download it again if your checks start shifting."}}]}</script>