Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Design and roll out a price increase or packaging change without triggering churn. Segments the base by price sensitivity, models revenue and churn scenarios, decides grandfathering and notice strategy, and produces the full comms kit (customer email, in-app notice, sales talk track, support FAQ, objection handling). Use when raising prices, repackaging tiers, or moving customers to new plans.
.claude/skills/onewave-ai-pricing-change-strategist/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 7% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 83% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 230% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 48% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 96% | 0% |
Raising prices is the highest-leverage move most companies are too scared to make well. Done carelessly it churns your base and lights up Twitter. Done well it's nearly pure margin. This skill plans the change end to end — the math, the segmentation, the grandfathering call, and every word customers will read.
Pair it with product-launch-war-room (to decide whether) and customer-panel-of-experts (to hear how each segment reacts). This skill owns the how.
Gather (read-only from billing/CRM where connected — Stripe, Mercury, Supabase via $SUPABASE_TOKEN; otherwise ask):
Security: read-only. Never modify subscriptions, prices, or send anything. No real customer PII in artifacts — segment in aggregate. Secrets in env vars only.
Split the base into action groups, e.g.:
For each: current price, proposed price, % change, estimated churn response, net revenue impact.
Build a simple, transparent model (write it out so the math is auditable — never hand-wave aggregates):
State assumptions explicitly and label them assumptions. If billing data is connected, ground the model in real numbers and cite them; if not, mark it as estimated and tell the user what data would tighten it.
markdown# Price Change Plan — {Company} Generated: {timestamp} · Grounding: {billing-data / estimated} ## Recommendation Increase {X%} on {segments}, {grandfathering policy}, {notice}, effective {date}. Expected: +{$} net revenue, {Y%} churn risk, break-even at {Z%} churn. ## Segment plan (table) ## Scenario model (table + assumptions) ## Rollout timeline & sequencing ## Risk register & rollback triggers ## Comms — ready to send ### Customer email (warm, value-first, no apology-for-existing tone) ### In-app / banner notice ### Sales talk track (for accounts that push back) ### Support FAQ + objection handling ("why is it going up", "I'll cancel", "match my old price") ### Internal brief (so the team answers consistently)
Lead every customer-facing message with value delivered, then the change, then the path forward — never apologize for charging fairly. Match the user's voice: direct, confident, no corporate fluff.
Offer to run the email and talk track through prospect-panel-simulator / customer-panel-of-experts before sending, and to set the rollback triggers as a monitoring checklist.
Read-only on billing — never change a subscription · model is transparent and assumptions are labeled · grandfathering and rollback are explicit decisions · comms lead with value, never apology · no real customer PII in artifacts.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 32,905 | 54,618 | +66% | 1 | 1 | 0% | 6,302 | 7,330 | +16% | 0 | 0 | — |
case-02 | fail→fail | 35,140 | 25,605 | -27% | 1 | 1 | 0% | 6,269 | 5,591 | -11% | 0 | 0 | — |
case-03 | fail→pass | 30,282 | 30,529 | +1% | 1 | 1 | 0% | 6,262 | 6,680 | +7% | 0 | 0 | — |
case-04 | pass→pass | 14,205 | 14,537 | +2% | 1 | 1 | 0% | 2,364 | 3,591 | +52% | 0 | 0 | — |
case-05 | fail→fail | 8,686 | 8,001 | -8% | 1 | 1 | 0% | 1,325 | 2,420 | +83% | 0 | 0 | — |
case-06 | pass→pass | 9,741 | 5,576 | -43% | 1 | 1 | 0% | 1,907 | 1,948 | +2% | 0 | 0 | — |
case-07 | fail→fail | 8,628 | 16,497 | +91% | 1 | 1 | 0% | 1,528 | 3,929 | +157% | 0 | 0 | — |
case-08 | fail→pass | 12,194 | 14,815 | +21% | 1 | 1 | 0% | 1,963 | 3,587 | +83% | 0 | 0 | — |
case-09 | fail→fail | 15,193 | 13,361 | -12% | 1 | 1 | 0% | 2,379 | 2,919 | +23% | 0 | 0 | — |
case-10 | fail→pass | 7,241 | 17,676 | +144% | 1 | 1 | 0% | 1,236 | 4,084 | +230% | 0 | 0 | — |
case-11 | pass→pass | 13,647 | 13,747 | +1% | 1 | 1 | 0% | 2,738 | 3,457 | +26% | 0 | 0 | — |
case-12 | fail→pass | 16,256 | 18,359 | +13% | 1 | 1 | 0% | 2,740 | 4,054 | +48% | 0 | 0 | — |
case-13 | pass→pass | 17,166 | 19,859 | +16% | 1 | 1 | 0% | 2,647 | 4,553 | +72% | 0 | 0 | — |
case-14 | fail→pass | 14,371 | 20,393 | +42% | 1 | 1 | 0% | 2,203 | 4,312 | +96% | 0 | 0 | — |
case-15 | fail→fail | 36,034 | 27,523 | -24% | 1 | 1 | 0% | 6,179 | 5,496 | -11% | 0 | 0 | — |
case-16 | fail→pass | 9,087 | 8,570 | -6% | 1 | 1 | 0% | 1,434 | 2,312 | +61% | 0 | 0 | — |
case-17 | pass→pass | 18,600 | 14,974 | -19% | 1 | 1 | 0% | 2,942 | 3,705 | +26% | 0 | 0 | — |
case-18 | pass→pass | 14,726 | 11,709 | -20% | 1 | 1 | 0% | 2,497 | 2,870 | +15% | 0 | 0 | — |
case-19 | fail→pass | 4,203 | 7,877 | +87% | 1 | 1 | 0% | 756 | 2,355 | +212% | 0 | 0 | — |
case-20 | pass→pass | 11,194 | 12,730 | +14% | 1 | 1 | 0% | 1,936 | 3,099 | +60% | 0 | 0 | — |
case-21 | pass→pass | 13,416 | 15,689 | +17% | 1 | 1 | 0% | 2,356 | 3,656 | +55% | 0 | 0 | — |
case-22 | pass→fail | 16,664 | 12,027 | -28% | 1 | 1 | 0% | 2,693 | 2,994 | +11% | 0 | 0 | — |
case-23 | fail→pass | 11,654 | 15,435 | +32% | 1 | 1 | 0% | 1,916 | 3,609 | +88% | 0 | 0 | — |
case-24 | pass→pass | 15,779 | 17,000 | +8% | 1 | 1 | 0% | 2,714 | 3,765 | +39% | 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. 24 cases were attempted. The headline lift of +29 percentage points is the difference between those two pass rates over the 24 comparable cases. 2 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.