Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Plan a sale or promotion that drives revenue without wrecking margin. Use when asked to plan a promotion, a discount/sale campaign, a BFCM/holiday promo, or a product launch offer. Produces a promo plan — objective, the offer mechanic, margin math, audience & channels, timing, messaging, and how you'll measure it — so the discount is a strategy, not a reflex.
.claude/skills/mohitagw15856-promotion-plan/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -14% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -11% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 49% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 29% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 43% | 0% |
A promotion is easy to run and easy to lose money on. The difference is knowing what the offer is for (acquire, clear stock, reward loyalty, raise AOV), picking a mechanic that serves that, and checking the margin before you hit send. This skill turns "let's do 20% off" into a plan with the math, the audience, and a way to tell if it worked.
Given "plan a Black Friday sale", produce the full plan anyway — infer a sensible objective, mechanic, and channel mix for the context, and label assumptions. Where you don't have margin numbers, show the formula and a worked example with placeholder figures (replace with your numbers) rather than inventing a result.
Ask for these only if they aren't already provided (else infer and label):
1. Objective & success metric — the one goal, and the number that says it worked.
2. The offer — the mechanic and why it fits the goal:
| Mechanic | Best for | Watch-out | |---|---|---| | % or $ off | urgency, acquisition | margin hit, discount-trained buyers | | BOGO / bundle | AOV, stock clearance | margin on the free unit | | Free shipping threshold | AOV | shipping cost | | Gift with purchase | perceived value, loyalty | GWP cost | | Tiered (spend more, save more) | AOV | complexity |
3. Margin check — the math: discounted price, margin after discount, and the break-even uplift (how many more units you must sell to come out ahead). Show the formula + a worked example with placeholders.
4. Audience & segments — who gets it (all, new, lapsed, VIP) and any exclusions.
5. Channels & assets — where it runs and what's needed (email, on-site banner, ads, marketplace), with the core message per channel.
6. Timeline — teaser → launch → reminder → last-chance → end, with dates and owners.
7. Messaging — the hook/headline and the urgency/scarcity angle (honest, not fake).
8. Measurement — what to track (revenue, units, new customers, margin, redemption) and the read-out after.
Retail promotion & pricing practice — objective-led offer design, margin/break-even analysis, segmentation, and measurement.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 45,328 | 132,842 | +193% | 1 | 1 | 0% | 6,094 | 5,252 | -14% | 0 | 0 | — |
case-02 | fail→fail | 41,549 | 24,977 | -40% | 1 | 1 | 0% | 3,509 | 4,850 | +38% | 0 | 0 | — |
case-03 | fail→pass | 50,445 | 30,031 | -40% | 1 | 1 | 0% | 6,124 | 5,424 | -11% | 0 | 0 | — |
case-04 | pass→fail | 26,297 | 28,109 | +7% | 1 | 1 | 0% | 2,998 | 4,433 | +48% | 0 | 0 | — |
case-05 | pass→fail | 18,691 | 36,197 | +94% | 1 | 1 | 0% | 2,298 | 5,910 | +157% | 0 | 0 | — |
case-06 | pass→fail | 25,705 | 39,292 | +53% | 1 | 1 | 0% | 3,876 | 5,881 | +52% | 0 | 0 | — |
case-07 | fail→pass | 28,985 | 36,801 | +27% | 1 | 1 | 0% | 3,221 | 4,802 | +49% | 0 | 0 | — |
case-08 | pass→pass | 28,197 | 52,346 | +86% | 1 | 1 | 0% | 3,522 | 4,816 | +37% | 0 | 0 | — |
case-09 | pass→pass | 27,154 | 32,996 | +22% | 1 | 1 | 0% | 3,432 | 4,708 | +37% | 0 | 0 | — |
case-10 | fail→pass | 22,550 | 25,518 | +13% | 1 | 1 | 0% | 2,906 | 3,739 | +29% | 0 | 0 | — |
case-11 | fail→pass | 40,960 | 25,243 | -38% | 1 | 1 | 0% | 3,274 | 4,684 | +43% | 0 | 0 | — |
case-12 | fail→pass | 36,283 | 46,490 | +28% | 1 | 1 | 0% | 5,698 | 4,984 | -13% | 0 | 0 | — |
case-13 | fail→pass | 26,563 | 32,168 | +21% | 1 | 1 | 0% | 3,828 | 4,723 | +23% | 0 | 0 | — |
case-14 | fail→pass | 53,450 | 25,329 | -53% | 1 | 1 | 0% | 7,403 | 4,888 | -34% | 0 | 0 | — |
case-15 | fail→pass | 30,475 | 39,400 | +29% | 1 | 1 | 0% | 4,175 | 4,740 | +14% | 0 | 0 | — |
case-16 | fail→pass | 22,427 | 43,837 | +95% | 1 | 1 | 0% | 3,587 | 5,050 | +41% | 0 | 0 | — |
case-17 | fail→pass | 24,136 | 27,264 | +13% | 1 | 1 | 0% | 3,111 | 5,465 | +76% | 0 | 0 | — |
case-18 | pass→pass | 26,798 | 34,713 | +30% | 1 | 1 | 0% | 4,274 | 6,146 | +44% | 0 | 0 | — |
case-19 | fail→fail | 24,878 | 27,964 | +12% | 1 | 1 | 0% | 3,806 | 4,707 | +24% | 0 | 0 | — |
case-20 | pass→pass | 27,240 | 30,213 | +11% | 1 | 1 | 0% | 3,815 | 4,949 | +30% | 0 | 0 | — |
case-21 | pass→pass | 32,248 | 27,803 | -14% | 1 | 1 | 0% | 4,527 | 4,590 | +1% | 0 | 0 | — |
case-22 | fail→fail | 46,778 | 37,885 | -19% | 1 | 1 | 0% | 6,659 | 5,193 | -22% | 0 | 0 | — |
case-23 | pass→pass | 26,153 | 23,363 | -11% | 1 | 1 | 0% | 3,409 | 4,641 | +36% | 0 | 0 | — |
case-24 | pass→pass | 17,997 | 26,613 | +48% | 1 | 1 | 0% | 3,201 | 4,756 | +49% | 0 | 0 | — |
case-25 | pass→pass | 37,620 | 29,596 | -21% | 1 | 1 | 0% | 5,820 | 5,091 | -13% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 25 cases were attempted. The headline lift of +32 percentage points is the difference between those two pass rates over the 25 comparable cases. 3 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.