Skip to content
FunCoding

Search

Search docs, Skills and MCP

customer-success-manager

Monitors customer health, predicts churn risk, and identifies expansion opportunities using weighted scoring models for SaaS customer success

文档与办公883business-growth/customer-success-manager/SKILL.md

Install

Send this to Claude Code, Codex or Cursor. The agent checks the Skill for safety first and installs it only after you confirm.

读取 https://funcoding.ai/skills/borghei/claude-skills/customer-success-manager/install.md ,按里面的步骤帮我安装这个 Skill。

SKILL.md

Customer Success Manager

Production-grade customer success analytics with multi-dimensional health scoring, churn risk prediction, and expansion opportunity identification. Three Python CLI tools provide deterministic, repeatable analysis using standard library only -- no external dependencies, no API calls, no ML models.


Table of Contents


Capabilities

  • Customer Health Scoring: Multi-dimensional weighted scoring across usage, engagement, support, and relationship dimensions with Red/Yellow/Green classification
  • Churn Risk Analysis: Behavioral signal detection with tier-based intervention playbooks and time-to-renewal urgency multipliers
  • Expansion Opportunity Scoring: Adoption depth analysis, whitespace mapping, and revenue opportunity estimation with effort-vs-impact prioritization
  • Segment-Aware Benchmarking: Configurable thresholds for Enterprise, Mid-Market, and SMB customer segments
  • Trend Analysis: Period-over-period comparison to detect improving or declining trajectories
  • Executive Reporting: QBR templates, success plans, and executive business review templates

Input Requirements

All scripts accept a JSON file as positional input argument. See assets/sample_customer_data.json for complete examples.

Health Score Calculator

{
  "customers": [
    {
      "customer_id": "CUST-001",
      "name": "Acme Corp",
      "segment": "enterprise",
      "arr": 120000,
      "usage": {
        "login_frequency": 85,
        "feature_adoption": 72,
        "dau_mau_ratio": 0.45
      },
      "engagement": {
        "support_ticket_volume": 3,
        "meeting_attendance": 90,
        "nps_score": 8,
        "csat_score": 4.2
      },
      "support": {
        "open_tickets": 2,
        "escalation_rate": 0.05,
        "avg_resolution_hours": 18
      },
      "relationship": {
        "executive_sponsor_engagement": 80,
        "multi_threading_depth": 4,
        "renewal_sentiment": "positive"
      },
      "previous_period": {
        "usage_score": 70,
        "engagement_score": 65,
        "support_score": 75,
        "relationship_score": 60
      }
    }
  ]
}

Churn Risk Analyzer

{
  "customers": [
    {
      "customer_id": "CUST-001",
      "name": "Acme Corp",
      "segment": "enterprise",
      "arr": 120000,
      "contract_end_date": "2026-06-30",
      "usage_decline": {
        "login_trend": -15,
        "feature_adoption_change": -10,
        "dau_mau_change": -0.08
      },
      "engagement_drop": {
        "meeting_cancellations": 2,
        "response_time_days": 5,
        "nps_change": -3
      },
      "support_issues": {
        "open_escalations": 1,
        "unresolved_critical": 0,
        "satisfaction_trend": "declining"
      },
      "relationship_signals": {
        "champion_left": false,
        "sponsor_change": false,
        "competitor_mentions": 1
      },
      "commercial_factors": {
        "contract_type": "annual",
        "pricing_complaints": false,
        "budget_cuts_mentioned": false
      }
    }
  ]
}

Expansion Opportunity Scorer

{
  "customers": [
    {
      "customer_id": "CUST-001",
      "name": "Acme Corp",
      "segment": "enterprise",
      "arr": 120000,
      "contract": {
        "licensed_seats": 100,
        "active_seats": 95,
        "plan_tier": "professional",
        "available_tiers": ["professional", "enterprise", "enterprise_plus"]
      },
      "product_usage": {
        "core_platform": {"adopted": true, "usage_pct": 85},
        "analytics_module": {"adopted": true, "usage_pct": 60},
        "integrations_module": {"adopted": false, "usage_pct": 0},
        "api_access": {"adopted": true, "usage_pct": 40},
        "advanced_reporting": {"adopted": false, "usage_pct": 0}
      },
      "departments": {
        "current": ["engineering", "product"],
        "potential": ["marketing", "sales", "support"]
      }
    }
  ]
}

Output Formats

All scripts support two output formats via the --format flag:

  • text (default): Human-readable formatted output for terminal viewing
  • json: Machine-readable JSON output for integrations and pipelines

Clarify First

Before running the analysis, confirm these inputs. If any is unknown or vague, ASK — do not assume:

  • Which analysis — health score, churn risk, or expansion opportunity (selects which of the three scripts and its input schema)
  • Customer segment — Enterprise / Mid-Market / SMB (segment-aware thresholds change every Red/Yellow/Green and risk-tier cutoff)
  • Previous-period data availability — without it, trend analysis (declining vs improving) cannot run
  • Renewal date / contract end — drives the time-to-renewal urgency multiplier in churn scoring

Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the output.

How to Use

Quick Start

# Health scoring
python scripts/health_score_calculator.py assets/sample_customer_data.json
python scripts/health_score_calculator.py assets/sample_customer_data.json --format json

# Churn risk analysis
python scripts/churn_risk_analyzer.py assets/sample_customer_data.json
python scripts/churn_risk_analyzer.py assets/sample_customer_data.json --format json

# Expansion opportunity scoring
python scripts/expansion_opportunity_scorer.py assets/sample_customer_data.json
python scripts/expansion_opportunity_scorer.py assets/sample_customer_data.json --format json

Workflow Integration

# 1. Score customer health across portfolio
python scripts/health_score_calculator.py customer_portfolio.json --format json > health_results.json

# 2. Identify at-risk accounts
python scripts/churn_risk_analyzer.py customer_portfolio.json --format json > risk_results.json

# 3. Find expansion opportunities in healthy accounts
python scripts/expansion_opportunity_scorer.py customer_portfolio.json --format json > expansion_results.json

# 4. Prepare QBR using templates
# Reference: assets/qbr_template.md

Scripts

1. health_score_calculator.py

Purpose: Multi-dimensional customer health scoring with trend analysis and segment-aware benchmarking.

Dimensions and Weights:

DimensionWeightMetrics
Usage30%Login frequency, feature adoption, DAU/MAU ratio
Engagement25%Support ticket volume, meeting attendance, NPS/CSAT
Support20%Open tickets, escalation rate, avg resolution time
Relationship25%Executive sponsor engagement, multi-threading depth, renewal sentiment

Classification:

  • Green (75-100): Healthy -- customer achieving value
  • Yellow (50-74): Needs attention -- monitor closely
  • Red (0-49): At risk -- immediate intervention required

Usage:

python scripts/health_score_calculator.py customer_data.json
python scripts/health_score_calculator.py customer_data.json --format json

2. churn_risk_analyzer.py

Purpose: Identify at-risk accounts with behavioral signal detection and tier-based intervention recommendations.

Risk Signal Weights:

Signal CategoryWeightIndicators
Usage Decline30%Login trend, feature adoption change, DAU/MAU change
Engagement Drop25%Meeting cancellations, response time, NPS change
Support Issues20%Open escalations, unresolved critical, satisfaction trend
Relationship Signals15%Champion left, sponsor change, competitor mentions
Commercial Factors10%Contract type, pricing complaints, budget cuts

Risk Tiers:

  • Critical (80-100): Immediate executive escalation
  • High (60-79): Urgent CSM intervention
  • Medium (40-59): Proactive outreach
  • Low (0-39): Standard monitoring

Usage:

python scripts/churn_risk_analyzer.py customer_data.json
python scripts/churn_risk_analyzer.py customer_data.json --format json

3. expansion_opportunity_scorer.py

Purpose: Identify upsell, cross-sell, and expansion opportunities with revenue estimation and priority ranking.

Expansion Types:

  • Upsell: Upgrade to higher tier or more of existing product
  • Cross-sell: Add new product modules
  • Expansion: Additional seats or departments

Usage:

python scripts/expansion_opportunity_scorer.py customer_data.json
python scripts/expansion_opportunity_scorer.py customer_data.json --format json

Reference Guides

ReferenceDescription
references/health-scoring-framework.mdComplete health scoring methodology, dimension definitions, weighting rationale, threshold calibration
references/cs-playbooks.mdIntervention playbooks for each risk tier, onboarding, renewal, expansion, and escalation procedures
references/cs-metrics-benchmarks.mdIndustry benchmarks for NRR, GRR, churn rates, health scores, expansion rates by segment and industry

Templates

TemplatePurpose
assets/qbr_template.mdQuarterly Business Review presentation structure
assets/success_plan_template.mdCustomer success plan with goals, milestones, and metrics
assets/onboarding_checklist_template.md90-day onboarding checklist with phase gates
assets/executive_business_review_template.mdExecutive stakeholder review for strategic accounts

Best Practices

  1. Score regularly: Run health scoring weekly for Enterprise, bi-weekly for Mid-Market, monthly for SMB
  2. Act on trends, not snapshots: A declining Green is more urgent than a stable Yellow
  3. Combine signals: Use all three scripts together for a complete customer picture
  4. Calibrate thresholds: Adjust segment benchmarks based on your product and industry
  5. Document interventions: Track what actions you took and outcomes for playbook refinement
  6. Prepare with data: Run scripts before every QBR and executive meeting

Limitations

  • No real-time data: Scripts analyze point-in-time snapshots from JSON input files
  • No CRM integration: Data must be exported manually from your CRM/CS platform
  • Deterministic only: No predictive ML -- scoring is algorithmic based on weighted signals
  • Threshold tuning: Default thresholds are industry-standard but may need calibration for your business
  • Revenue estimates: Expansion revenue estimates are approximations based on usage patterns


Tool Reference

1. health_score_calculator.py

Purpose: Multi-dimensional customer health scoring with trend analysis and segment-aware benchmarking.

python scripts/health_score_calculator.py customer_data.json
python scripts/health_score_calculator.py customer_data.json --format json
FlagRequiredDescription
customer_data.jsonYesJSON file with customer health data (usage, engagement, support, relationship metrics)
--formatNoOutput format: text (default) or json

Dimensions and Weights: Usage (30%), Engagement (25%), Support (20%), Relationship (25%)

Classification: Green (75-100), Yellow (50-74), Red (0-49) -- thresholds adjust by segment (Enterprise, Mid-Market, SMB)

2. churn_risk_analyzer.py

Purpose: Identify at-risk accounts with behavioral signal detection and tier-based intervention recommendations.

python scripts/churn_risk_analyzer.py customer_data.json
python scripts/churn_risk_analyzer.py customer_data.json --format json
FlagRequiredDescription
customer_data.jsonYesJSON file with churn risk signals (usage decline, engagement drop, support issues, relationship signals, commercial factors)
--formatNoOutput format: text (default) or json

Risk Tiers: Critical (80-100), High (60-79), Medium (40-59), Low (0-39)

Signal Weights: Usage Decline (30%), Engagement Drop (25%), Support Issues (20%), Relationship Signals (15%), Commercial Factors (10%)

3. expansion_opportunity_scorer.py

Purpose: Identify upsell, cross-sell, and expansion opportunities with revenue estimation and priority ranking.

python scripts/expansion_opportunity_scorer.py customer_data.json
python scripts/expansion_opportunity_scorer.py customer_data.json --format json
FlagRequiredDescription
customer_data.jsonYesJSON file with customer contract, product usage, and department data
--formatNoOutput format: text (default) or json

Expansion Types: Upsell (tier upgrade), Cross-sell (new modules), Expansion (seats/departments)


Troubleshooting

ProblemLikely CauseSolution
Health scores do not correlate with actual churnDefault thresholds do not match your productCalibrate segment thresholds using historical churn data; compare 90-day retained vs churned cohorts
All accounts show as YellowThresholds too strict or data quality issuesReview input data completeness; adjust benchmarks in health_score_calculator.py constants for your industry
Churn risk scores are uniformly lowMissing key signals (champion left, competitor mentions)Ensure all signal categories have data; missing data defaults to low risk, which understates actual risk
Expansion scores do not reflect realityProduct usage data is incomplete or staleVerify product_usage fields cover all modules; run with fresh data exports from your product analytics
Scripts error on input dataJSON format does not match expected schemaReference the Input Requirements section for exact JSON structure; validate JSON before running
Trend analysis shows no changePrevious period data not providedInclude the previous_period block in health score input for meaningful trend comparison
Intervention recommendations feel genericSegment is not specifiedAlways include the segment field (enterprise, mid-market, smb) for segment-appropriate playbooks

Success Criteria

  • Health scores run weekly for Enterprise, bi-weekly for Mid-Market, monthly for SMB accounts
  • Portfolio health distribution: 60%+ Green, less than 15% Red
  • Churn risk critical accounts have executive escalation within 48 hours
  • Expansion pipeline generated covers 20%+ of net retention target
  • Health score trends (improving/declining) drive proactive outreach before renewal window
  • QBR preparation includes health score, risk assessment, and expansion opportunities for every strategic account
  • Intervention playbooks followed for all High and Critical risk accounts

Scope & Limitations

  • In scope: Customer health scoring, churn risk analysis, expansion opportunity identification, segment benchmarking, trend analysis, QBR preparation
  • Out of scope: CRM integration, real-time monitoring, predictive ML modeling, automated outreach
  • Data dependency: Scripts analyze point-in-time JSON snapshots; data must be exported manually from your CRM/CS platform
  • Deterministic scoring: All analysis is algorithmic based on weighted signals -- no machine learning predictions
  • Threshold tuning: Default thresholds are industry-standard benchmarks; calibrate for your specific product and customer base
  • Revenue estimates: Expansion revenue estimates are approximations based on usage patterns, not binding forecasts

Integration Points

  • churn-prevention -- High-risk accounts from churn_risk_analyzer.py should trigger cancel flow optimization and save offer review
  • revenue-operations -- Expansion opportunities feed into pipeline forecasting; health scores inform forecast confidence
  • onboarding-cro -- When health scores show low usage in early lifecycle, the root cause is often poor activation
  • pricing-strategy -- When expansion analysis reveals pricing as a barrier to upsell, feed into pricing-strategy for packaging review
  • competitive-teardown -- When churn risk signals include competitor mentions, use teardown data to build counter-positioning

Last Updated: March 2026 Tools: 3 Python CLI tools Dependencies: Python 3.7+ standard library only

Similar Skills

pdf
anthropics/skills180k

pdf

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

Docs & office

discernment-nudge
anthropics/skills180k

discernment-nudge

After you give a substantive answer or draft that the user may act on — advice or recommendations, drafted artifacts such as goals, plans, pitches, proposals, or emails, estimates or projections, analysis or interpretation of data, factual claims they may rely on, or a multi-step argument — invoke this skill BEFORE finalizing your reply and then, if it applies, append 2-3 short follow-up questions, each tied to something specific in what you just produced, that help the user check key facts, probe the reasoning or assumptions, and notice missing context. Do this at most once per conversation. Skip it when the user asked a trivial how-to or simple lookup, wants a purely educational explanation, asked you only to format, convert, or assemble a file from content they provided, is writing code they will run, is doing creative writing or casual chat, or already asked you to double-check, cite, or review — the skill file explains these boundaries and the exact output format.

Docs & office

doc-coauthoring
anthropics/skills180k

doc-coauthoring

Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.

Docs & office

docx
anthropics/skills180k

docx

Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files) or Word templates (.dotx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', '.dotx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx or .dotx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.

Docs & office

pptx
anthropics/skills180k

pptx

Use this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates (.potx), layouts, speaker notes, or comments. Trigger whenever the user mentions "deck," "slides," "presentation," or references a .pptx or .potx filename, regardless of what they plan to do with the content afterward. If a .pptx or .potx file needs to be opened, created, or touched, use this skill.

Docs & office

canvas-design
anthropics/skills180k

canvas-design

Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.

Docs & office