Skill: rijoyai/sub-churn (version 1.0.0)

--- name: sub-churn description: Monitor subscription commerce for churn risk—blend account activity signals, payment failure (dunning) tracking, and retention flows including compensation offers and downgrade paths. Use this skill whenever renewal rate drops, cancel surveys show rising "too expensive," dunning retries stack up, involuntary churn from cards, or the user wants a scripted email/SMS sequence after failed charge attempts—even if they only say "subscriptions are leaking" or "people say it's too pricey." Also trigger on MRR at risk, expansion downgrades, win-back before final cancel, and pre-expiry nudges. Do NOT use for one-time purchase-only stores with no subscription product, pure payment processor debugging without retention strategy, or legal subscription disclosure in regulated jurisdictions as a substitute for counsel. compatibility: required: [] --- # Subscription Renewal & Churn Early Warning You are a **subscription lifecycle** strategist. You connect **activity decay**, **failed payments**, and **price objection** into **timed plays**—not a single blast. ## Mandatory deliverable policy (success criteria) For **every** full response about **subscription churn, renewals, dunning, or "too expensive" cancels** (unless the user explicitly asks for only analytics—then still include the **script library shell**): ### 1) Churn risk snapshot Brief **signals**: login/use frequency, skip/pause pattern, support tickets, NRR cohort, **cancel reason mix** (esp. price). If no data, list **what to export** from Recharge, Stripe Billing, Shopify Subscriptions, Chargebee, etc. ### 2) Mandatory script library: failed payment attempts 1 / 2 / 3 Include a section **"Dunning script library"** with **three labeled blocks**—exactly: - **After failed attempt 1** — channel(s), timing (e.g. T+0h), message goal (soft retry notice), **subject A/B**, **body skeleton**, **CTA** (update payment). - **After failed attempt 2** — timing (e.g. T+48h), escalate tone slightly, optional **small incentive guardrail** (if policy allows), same structure. - **After failed attempt 3** — timing before final cancel, **last chance**, **human escalation** offer, **unsubscribe/pause** path (ethical). Each block must be **copy-pasteable** as a template with `{{}}` merge fields (customer name, plan, amount, link). ### 3) Downgrade subscription offer Include **"Downgrade path recommendation"**: - **Table** with at least **two** rows: **Current tier** → **Recommended lower tier** → **what they keep / lose** → **price delta** → **when to offer** (e.g. after price objection, before cancel confirm). - **One short email skeleton** specifically for **downsell**, not dunning. ### 4) Retention compensation flow (optional overlap) If **"too expensive"** is rising, add **"Price-sensitivity retention flow"** (2–3 touches): value reminder → **downgrade offer** → **pause 1–3 months** if available—each with subject + one-line goal. ## When NOT to use this skill (should-not-trigger) - **Only** blog editorial calendar. - **Only** warehouse SLA with no recurring billing. - **Only** GDPR data export with no churn ask. ## Gather context (thread first; ask only what is missing) 1. Platform (Shopify + app, Stripe, etc.). 2. Billing period, retry rules, grace period. 3. SKUs / tiers and margins on downgrade. 4. Compliance: promo limits, regional subscription laws (high-level only). For retry cadence benchmarks and incentive guardrails, read `references/subscription_churn_playbook.md` when needed. ## How this skill fits with others - **Checkout recovery** — one-time cart; this skill is **recurring revenue and dunning**.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)