mcpbeat

Subscription Management

claude-office-skills/subscription-management

SaaS subscription lifecycle management - billing, upgrades, downgrades, churn prevention, and revenue optimization

3k tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
353
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/claude-office-skills/skills --skill subscription-management

The instruction itself

18 sections, as written by the author

Subscription Management

Comprehensive SaaS subscription lifecycle management including billing operations, upgrade/downgrade flows, churn prevention strategies, and revenue optimization.

Overview

This skill covers:

  • Subscription lifecycle management
  • Pricing and packaging strategies
  • Upgrade/downgrade workflows
  • Churn prevention automation
  • Billing operations and dunning

Subscription Lifecycle

Lifecycle Stages

┌─────────────────────────────────────────────────────────────────┐
│                    SUBSCRIPTION LIFECYCLE                        │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  Trial ──▶ Conversion ──▶ Active ──▶ Expansion ──▶ Renewal     │
│    │           │            │           │            │          │
│    ▼           ▼            ▼           ▼            ▼          │
│  [Drop]    [Churn]     [Downgrade]  [Churn]     [Churn]        │
│                            │                        │           │
│                            ▼                        ▼           │
│                       [Win-back] ◀──────────── [Win-back]      │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Stage Definitions

lifecycle_stages:
  trial:
    duration: 14_days
    goal: activation + conversion
    key_metrics:
      - trial_starts
      - activation_rate
      - trial_to_paid_conversion
    automation:
      - onboarding_emails
      - in_app_guidance
      - sales_touch (if qualified)
      
  active:
    goal: value_delivery + expansion
    key_metrics:
      - feature_adoption
      - nps_score
      - expansion_revenue
    automation:
      - health_scoring
      - usage_alerts
      - upsell_triggers
      
  at_risk:
    trigger: health_score < 40 OR usage_drop > 50%
    goal: retention
    key_metrics:
      - save_rate
      - churn_reason
    automation:
      - csm_alert
      - retention_offer
      - executive_escalation
      
  churned:
    goal: win_back
    key_metrics:
      - reactivation_rate
      - time_to_reactivate
    automation:
      - exit_survey
      - win_back_campaigns
      - competitive_monitoring

Pricing & Packaging

Pricing Strategy Template

pricing_tiers:
  starter:
    price: $29/month
    billing: monthly or annual (2 months free)
    target: solopreneurs, small teams
    limits:
      users: 5
      storage: 10GB
      features: core_only
    positioning: "Get started"
    
  professional:
    price: $79/month
    billing: monthly or annual
    target: growing teams
    limits:
      users: 25
      storage: 100GB
      features: core + advanced
    positioning: "Most popular"
    highlight: true
    
  business:
    price: $199/month
    billing: monthly or annual
    target: scaling companies
    limits:
      users: unlimited
      storage: 500GB
      features: all + priority_support
    positioning: "For growth"
    
  enterprise:
    price: custom
    billing: annual only
    target: large organizations
    limits:
      users: unlimited
      storage: unlimited
      features: all + sso + api + sla
    positioning: "Contact sales"
    
add_ons:
  - extra_storage: $10/50GB
  - api_access: $50/month
  - priority_support: $100/month
  - dedicated_csm: $500/month

Value Metrics

value_metric_options:
  per_seat:
    charge: per_active_user
    pros: predictable, aligns with growth
    cons: may limit adoption
    best_for: collaboration tools
    
  usage_based:
    charge: per_api_call, per_GB, per_transaction
    pros: low barrier, scales with value
    cons: unpredictable revenue
    best_for: infrastructure, APIs
    
  feature_tiered:
    charge: based_on_features_used
    pros: clear upsell path
    cons: may feel restrictive
    best_for: software with distinct use cases
    
  hybrid:
    charge: base_fee + usage_overage
    pros: predictable base + upside
    cons: complex to explain
    best_for: mature products

Upgrade/Downgrade Flows

Upgrade Automation

upgrade_triggers:
  usage_based:
    - trigger: approaching_user_limit (80%)
      action:
        - in_app_notification: "You're almost at your limit"
        - email: upgrade_suggestion
        - if_ignored: soft_limit_warning
        
    - trigger: feature_blocked (tried advanced feature)
      action:
        - in_app_modal: feature_preview + upgrade_cta
        - track: feature_interest
        
    - trigger: consistent_overage (3+ months)
      action:
        - csm_outreach: proactive_upgrade_discussion
        
  behavior_based:
    - trigger: power_user_behavior
      condition: >5h/week usage AND >10 team members invited
      action:
        - flag_as: expansion_opportunity
        - assign: csm_for_outreach
        
  time_based:
    - trigger: 90_days_on_same_plan
      action:
        - email: "Are you getting the most out of {Product}?"
        - include: feature_comparison

upgrade_flow:
  steps:
    1. show_comparison: current_vs_recommended
    2. highlight_value: features_they've_tried_to_use
    3. offer_discount: if_annual (optional)
    4. prorate_billing: charge_difference_immediately
    5. unlock_features: immediately
    6. send_confirmation: email + in_app
    7. trigger_onboarding: for_new_features

Downgrade Prevention

downgrade_flow:
  steps:
    1. intercept_request:
        show: "Before you go..."
        offer: 
          - pause_subscription: 1-3_months
          - discount: 20%_for_3_months
          - free_month: if_annual
          
    2. collect_reason:
        options:
          - too_expensive
          - not_using_features
          - switching_to_competitor
          - company_downsizing
          - temporary_pause
          
    3. tailored_response:
        too_expensive:
          - offer: lower_tier_suggestion
          - show: cost_per_user_value
          
        not_using_features:
          - offer: training_session
          - show: quick_wins_tutorial
          
        switching_to_competitor:
          - ask: which_competitor
          - offer: competitive_discount
          - flag: for_win_back_later
          
    4. if_proceeds:
        - schedule_downgrade: end_of_billing_cycle
        - preserve_data: for_potential_return
        - send_survey: detailed_feedback
        
    5. track:
        - reason
        - offers_presented
        - offers_accepted/declined
        - revenue_impact

Churn Prevention

Health Scoring

customer_health_score:
  components:
    product_usage: 40%
      signals:
        - daily_active_users: vs_licensed_seats
        - feature_adoption: core_features_used
        - login_frequency: weekly_active
        - depth_of_use: actions_per_session
        
    engagement: 30%
      signals:
        - email_opens: last_30_days
        - support_sentiment: positive_vs_negative
        - nps_score: latest
        - community_participation: if_applicable
        
    relationship: 20%
      signals:
        - csm_touchpoints: recent_calls
        - executive_sponsor: identified
        - contract_length: multi_year_bonus
        
    financial: 10%
      signals:
        - payment_history: on_time_payments
        - expansion_history: upgrades_vs_downgrades
        - invoice_disputes: count
        
  scoring:
    90-100: healthy (green)
    70-89: stable (yellow)
    40-69: at_risk (orange)
    0-39: critical (red)
    
  automation:
    critical:
      - immediate: csm_alert + call_scheduled
      - if_no_response: manager_escalation
      
    at_risk:
      - same_day: csm_notification
      - action: health_check_call
      
    stable:
      - weekly: review_in_team_meeting
      
    healthy:
      - monthly: expansion_opportunity_review

Dunning Management

dunning_sequence:
  payment_failed:
    day_0:
      - retry_payment: automatic
      - email: "Payment failed - please update"
      - in_app: banner_notification
      
    day_3:
      - retry_payment: automatic
      - email: "Action needed: Update payment"
      - include: direct_update_link
      
    day_7:
      - retry_payment: automatic
      - email: "Your account is at risk"
      - sms: if_enabled
      - downgrade_warning: true
      
    day_14:
      - final_retry: automatic
      - email: "Final notice before suspension"
      - csm_call: for_high_value_accounts
      
    day_21:
      - suspend_account: read_only_access
      - email: "Account suspended"
      - preserve_data: 90_days
      
    day_90:
      - delete_data: after_warning
      - final_email: account_closure
      
  recovery_metrics:
    track:
      - involuntary_churn_rate
      - recovery_rate_by_day
      - avg_days_to_recovery
      - revenue_recovered

Revenue Operations

Billing Automation

billing_operations:
  invoice_generation:
    timing: 7_days_before_renewal
    include:
      - usage_summary
      - upcoming_charges
      - payment_method
      
  proration:
    upgrades: charge_immediately (prorated)
    downgrades: credit_at_next_billing
    mid_cycle_changes: calculate_daily
    
  discounts:
    types:
      - percentage: 10%, 20%, 30%
      - fixed: $X off
      - free_months: 1-3 months
    controls:
      - approval_required: >30%
      - expiration: always_set
      - one_per_customer: unless_approved
      
  revenue_recognition:
    method: ratable
    timing: monthly
    deferred_revenue: track_separately

Reporting Dashboard

# Subscription Metrics Dashboard

## MRR Summary
| Metric | Value | MoM Change |
|--------|-------|------------|
| Total MRR | $500K | +8% |
| New MRR | $50K | +15% |
| Expansion MRR | $30K | +12% |
| Churn MRR | $20K | -5% |
| Net New MRR | $60K | +20% |

## Subscription Health
| Tier | Customers | MRR | Avg Health |
|------|-----------|-----|------------|
| Enterprise | 50 | $200K | 85 |
| Business | 150 | $180K | 78 |
| Professional | 400 | $100K | 72 |
| Starter | 800 | $20K | 65 |

## At-Risk Accounts (Action Needed)
| Company | MRR | Health | Risk Reason |
|---------|-----|--------|-------------|
| Acme Co | $5K | 35 | Usage drop 60% |
| Tech Inc | $3K | 42 | Payment failed |
| StartupX | $2K | 38 | No login 30 days |

## Churn Analysis
- Voluntary: 1.5% (target: <2%) ✅
- Involuntary: 0.8% (target: <1%) ✅
- Top reason: Price (35%)
- Save rate: 25%

Output Example

Request: "Create a churn prevention workflow for a SaaS product"

Output:

# Churn Prevention Workflow

## Early Warning System

### Health Score Triggers

triggers:

critical_alert: # Health < 40

  • immediate: slack_alert_to_csm
  • same_day: schedule_call
  • email: "We noticed you haven't logged in..."
  • offer: free_training_session

usage_drop: # >50% decrease

  • email: "Everything okay?"
  • in_app: help_resources
  • csm_task: check_in_call

support_escalation: # Negative sentiment

  • flag: at_risk
  • csm_notification: with_context
  • executive_apology: if_major_issue

## Intervention Playbook

### Scenario: Low Usage

Day 1: Automated email

"Hi {name}, we noticed {Product} usage is down.

Everything okay? Here are 3 quick wins to get value fast:"

Day 3: In-app message

"Need help? Book a free 15-min session with our team."

Day 7: CSM call

Agenda: Understand blockers, offer solutions

Day 14: Manager escalation

If no response, escalate internally


### Scenario: Payment Failed

Hour 0: Retry payment automatically

Hour 1: Email with update link

Day 3: Second email + SMS

Day 7: CSM call for high-value accounts

Day 14: Final warning

Day 21: Suspend (preserve data 90 days)


### Save Offer Matrix

| Churn Reason | Offer |
|--------------|-------|
| Too expensive | 20% off 3 months |
| Not using | Free training + pause option |
| Competitor | Match pricing + migration help |
| Downsizing | Downgrade to lower tier |
| Temporary | Pause 1-3 months free |

## Metrics to Track

- Save rate: Target >25%
- Time to intervention: <24h for critical
- Churn reason distribution
- Offer acceptance rate
- Recovered revenue

*Subscription Management Skill - Part of Claude Office Skills*

How to use it

Copy the folder

Take claude-office-skills/subscription-management from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.