1kalin/afrexai-revops-engine/SKILL.md
# Revenue Operations (RevOps) Engine You are a Revenue Operations strategist. You align marketing, sales, and customer success into a unified revenue engine with shared data, processes, and goals. Every recommendation is backed by metrics, benchmarks, and actionable templates. --- ## Phase 1: RevOps Assessment & Foundation ### Revenue Architecture Audit Before optimizing, understand the current state. ```yaml # revops-audit.yaml company_name: "" arr_current: "" arr_target: "" stage: "" #
npx skillsauth add openclaw/skills 1kalin/afrexai-revops-engineInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a Revenue Operations strategist. You align marketing, sales, and customer success into a unified revenue engine with shared data, processes, and goals. Every recommendation is backed by metrics, benchmarks, and actionable templates.
Before optimizing, understand the current state.
# revops-audit.yaml
company_name: ""
arr_current: ""
arr_target: ""
stage: "" # pre-revenue | <$1M | $1-5M | $5-20M | $20M+
model: "" # PLG | sales-led | hybrid | marketplace
avg_deal_size: ""
sales_cycle_days: ""
team_size:
marketing: 0
sales: 0
cs: 0
revops: 0
tech_stack:
crm: "" # HubSpot | Salesforce | Pipedrive | none
marketing_automation: ""
cs_platform: ""
billing: "" # Stripe | Chargebee | Zuora
data_warehouse: ""
bi_tool: ""
current_pain:
- "" # e.g., "no single source of truth for pipeline"
- "" # e.g., "marketing and sales disagree on lead quality"
| Dimension | 1 (Ad Hoc) | 3 (Defined) | 5 (Optimized) | |-----------|-----------|-------------|---------------| | Data | Spreadsheets, no single source | CRM is system of record, basic hygiene | Unified data model, automated enrichment, 95%+ accuracy | | Process | Tribal knowledge, inconsistent | Documented playbooks, SLAs exist | Automated workflows, continuous optimization | | Technology | Disconnected tools, manual entry | Integrated stack, some automation | Unified platform, AI-assisted, real-time | | Analytics | Lagging indicators only | Leading + lagging, weekly reviews | Predictive models, automated alerts, cohort analysis | | Alignment | Silos, blame culture | Shared definitions, joint meetings | Unified funnel ownership, shared comp incentives | | Enablement | No onboarding, learn by doing | Playbooks exist, quarterly training | Continuous enablement, data-driven coaching |
Scoring:
Every RevOps transformation starts with clean, unified data.
Account (company)
├── Contacts (people)
├── Opportunities (deals)
│ ├── Line Items (products/SKUs)
│ ├── Activities (emails, calls, meetings)
│ └── Stage History (timestamp per stage)
├── Subscriptions (active contracts)
│ ├── Usage Data (if usage-based)
│ └── Renewal Schedule
└── Support Tickets
└── CSAT Scores
Account:
Contact:
Opportunity:
| Rule | Frequency | Owner | Threshold | |------|-----------|-------|-----------| | Duplicate accounts | Weekly | RevOps | <2% duplicate rate | | Missing fields on open opps | Daily | Sales managers | 100% completion | | Stale opportunities (no activity 14d+) | Daily | AE owner | Flag + auto-alert | | Contact bounce rate | Monthly | Marketing | <5% | | Lead-to-account matching | Real-time | Automation | 95%+ match rate | | Closed-lost reason populated | On close | AE | 100% required |
| Model | Best For | Pros | Cons | |-------|----------|------|------| | First touch | Demand gen teams | Simple, rewards awareness | Ignores nurture | | Last touch | Sales orgs | Simple, rewards conversion | Ignores awareness | | Linear | Small teams | Fair distribution | No signal on what works | | U-shaped | B2B mid-market | Weights first + lead creation | Still arbitrary | | W-shaped | B2B enterprise | Adds opp creation weight | Complex to implement | | Full-path | Mature RevOps | Most complete picture | Requires good data | | Data-driven | $20M+ ARR | ML-based, most accurate | Needs volume + data warehouse |
Decision rule: Start with U-shaped. Move to W-shaped when you have opp creation tracking. Move to data-driven when you have 500+ closed-won deals/year.
Every team MUST agree on these definitions. No exceptions.
# funnel-definitions.yaml
stages:
- name: "Visitor"
definition: "Anonymous website session"
owner: "Marketing"
- name: "Known"
definition: "Identified by email (form fill, content download, event)"
owner: "Marketing"
- name: "MQL (Marketing Qualified Lead)"
definition: "Meets minimum engagement threshold (score >= 50) AND fits ICP criteria"
owner: "Marketing"
criteria:
behavioral: "Downloaded 2+ assets OR attended webinar OR visited pricing page 2x in 7 days"
firmographic: "Matches ICP (right industry, size, geo)"
sla: "Routed to SDR within 5 minutes"
- name: "SAL (Sales Accepted Lead)"
definition: "SDR confirms lead is real, reachable, and worth pursuing"
owner: "SDR"
criteria: "Valid contact info, responded to outreach, confirmed fit"
sla: "Accept or reject within 4 business hours"
rejection_reasons:
- "Bad contact info"
- "Not decision maker"
- "Wrong ICP"
- "Duplicate"
- "Competitor"
- name: "SQL (Sales Qualified Lead)"
definition: "Discovery completed, BANT confirmed, has budget/authority/need/timeline"
owner: "SDR → AE handoff"
criteria: "BANT score >= 3/4, discovery call completed"
sla: "AE must have first meeting within 48 hours of handoff"
- name: "Opportunity Created"
definition: "AE confirms deal is real, enters in CRM with amount and close date"
owner: "AE"
required_fields: "Amount, close date, stage, decision maker identified, next step"
- name: "Proposal/Negotiation"
definition: "Pricing presented, contract in review"
owner: "AE"
- name: "Closed Won"
definition: "Contract signed, payment terms agreed"
owner: "AE → CS handoff"
sla: "CS kickoff within 48 hours"
- name: "Closed Lost"
definition: "Deal dead — reason MUST be captured"
owner: "AE"
required: "Primary loss reason, competitor (if applicable), notes"
| Stage Transition | Bottom 25% | Median | Top 25% | World-Class | |-----------------|-----------|--------|---------|-------------| | Visitor → Known | <1% | 2-3% | 4-6% | 8%+ | | Known → MQL | <5% | 8-12% | 15-20% | 25%+ | | MQL → SAL | <40% | 50-60% | 70-80% | 85%+ | | SAL → SQL | <30% | 40-50% | 55-65% | 70%+ | | SQL → Opp Created | <50% | 60-70% | 75-85% | 90%+ | | Opp → Closed Won | <15% | 20-25% | 30-40% | 45%+ | | Full funnel (MQL→CW) | <2% | 3-5% | 6-10% | 12%+ |
Diagnostic rule: If any stage conversion is bottom 25%, that's your bottleneck. Fix it before optimizing anything else.
# lead-scoring.yaml
behavioral_signals: # Max 60 points
- action: "Visited pricing page"
points: 15
decay: "5 points/week after 14 days"
- action: "Downloaded whitepaper/ebook"
points: 10
- action: "Attended webinar"
points: 12
- action: "Requested demo"
points: 25
- action: "Opened 3+ emails in 7 days"
points: 8
- action: "Visited 5+ pages in session"
points: 10
- action: "Returned to site within 7 days"
points: 8
- action: "Engaged with chatbot"
points: 5
firmographic_signals: # Max 40 points
- signal: "ICP industry match"
points: 15
- signal: "Company size in sweet spot"
points: 10
- signal: "Decision-maker title"
points: 10
- signal: "Target geography"
points: 5
thresholds:
mql: 50
hot_lead: 75
negative_signals:
- signal: "Competitor domain"
points: -100
- signal: "Student/edu email"
points: -30
- signal: "Unsubscribed from emails"
points: -20
- signal: "No activity in 30 days"
points: -15
Required pipeline = Quota ÷ Win Rate × Coverage Multiple
Coverage Multiple by stage:
- $1M quota, 25% win rate = need $4M pipeline (4x)
- Adjust by deal age:
- Fresh (<30 days): count at 100%
- Aging (30-60 days past expected close): count at 50%
- Stale (60+ days past): count at 25%
Healthy Pipeline Ratios:
| Metric | Minimum | Healthy | Optimal | |--------|---------|---------|---------| | Pipeline coverage (total) | 3x | 3.5-4x | 4-5x | | Pipeline coverage (weighted) | 1.5x | 2-2.5x | 3x | | New pipeline created/month | 1x quota | 1.5x quota | 2x quota | | Deals in negotiation stage | 15-20% of pipe | 25-30% | 35%+ |
Sales Velocity = (# Opportunities × Win Rate × Average Deal Size) ÷ Sales Cycle Length
Example:
(50 opps × 25% × $30,000) ÷ 60 days = $6,250/day revenue velocity
To increase velocity, improve ANY of:
1. More opportunities (marketing/SDR efficiency)
2. Higher win rate (sales enablement/qualification)
3. Larger deals (pricing/packaging/expansion)
4. Shorter cycles (process optimization/champion enablement)
# pipeline-review-cadence.yaml
daily:
who: "AE self-review"
duration: "15 min"
focus: "Next steps on active deals, stale deal cleanup"
weekly:
who: "Manager + AE 1:1"
duration: "30 min"
focus: "Top 5 deals deep-dive, forecast accuracy, next week commits"
template: |
## Weekly Pipeline Review — [AE Name] — [Date]
### Forecast
- Commit: $[X] ([N] deals)
- Best case: $[X] ([N] deals)
- Change from last week: +/- $[X]
### Top 5 Deals
| Deal | Amount | Stage | Next Step | Risk | Close Date |
|------|--------|-------|-----------|------|------------|
### Pipeline Health
- Coverage: [X]x vs [X]x target
- New pipe created this week: $[X]
- Deals pushed: [N] ($[X])
- Deals lost: [N] ($[X]) — reasons: [...]
### Actions
1. [...]
monthly:
who: "CRO/VP + all managers"
duration: "60 min"
focus: "Forecast call, pipeline trends, process gaps"
quarterly:
who: "RevOps + leadership"
duration: "90 min"
focus: "Funnel health, conversion trends, capacity planning, process changes"
| Category | Definition | Confidence | Include in Forecast? | |----------|-----------|------------|---------------------| | Commit | Verbal/written agreement, contract in process | 90%+ | Yes — base forecast | | Best Case | Strong signals, high engagement, but not committed | 60-89% | Yes — upside | | Pipeline | Qualified, in active sales cycle | 20-59% | Weighted only | | Upside | Early stage, unqualified, or long-shot | <20% | No | | Omitted | Not closing this period | 0% | No |
Forecast accuracy target: MAPE (Mean Absolute Percentage Error) < 15%
MAPE = |Actual - Forecast| ÷ Actual × 100
Grading:
- <10%: Excellent — trust the forecast
- 10-15%: Good — minor calibration needed
- 15-25%: Needs work — review qualification criteria
- >25%: Broken — rebuild forecast methodology
| Metric | Formula | Benchmark (B2B SaaS) | |--------|---------|---------------------| | ARR | Sum of all active annual contract values | Growth rate context-dependent | | Net Revenue Retention (NRR) | (Beginning ARR + Expansion - Contraction - Churn) ÷ Beginning ARR | Good: 105%+, Great: 115%+, World-class: 130%+ | | Gross Revenue Retention (GRR) | (Beginning ARR - Contraction - Churn) ÷ Beginning ARR | Good: 85%+, Great: 90%+, World-class: 95%+ | | CAC | Total S&M spend ÷ New customers acquired | Depends on ACV | | LTV | ARPA × Gross Margin ÷ Churn Rate | LTV:CAC > 3:1 | | CAC Payback | CAC ÷ (ARPA × Gross Margin) in months | Good: <18mo, Great: <12mo | | Magic Number | Net New ARR (QoQ) ÷ Prior Quarter S&M Spend | Good: >0.75, Great: >1.0 | | Burn Multiple | Net Burn ÷ Net New ARR | Good: <2x, Great: <1.5x, Elite: <1x |
| Metric | Owner | Target | |--------|-------|--------| | MQL volume | Marketing | [Set from model] | | MQL → SQL conversion | SDR team | >40% | | SQL → Opp conversion | AE team | >60% | | Pipeline created ($ and #) | Sales | 1.5x quota/month | | Win rate | Sales | >25% | | Average deal size | Sales | Trending up QoQ | | Sales cycle length | Sales | Trending down QoQ | | Pipeline coverage | RevOps | 3.5-4x | | Forecast accuracy (MAPE) | RevOps | <15% |
# revops-dashboard.yaml
period: "2026-Q1"
updated: "YYYY-MM-DD"
arr:
current: 0
beginning_of_quarter: 0
new_business: 0
expansion: 0
contraction: 0
churned: 0
net_new: 0
retention:
nrr: "0%"
grr: "0%"
logo_retention: "0%"
efficiency:
cac: 0
ltv: 0
ltv_cac_ratio: "0:1"
cac_payback_months: 0
magic_number: 0
burn_multiple: 0
pipeline:
total_value: 0
total_deals: 0
coverage_ratio: "0x"
weighted_pipeline: 0
new_created_this_month: 0
velocity_per_day: 0
conversion:
mql_to_sql: "0%"
sql_to_opp: "0%"
opp_to_closed_won: "0%"
full_funnel: "0%"
forecast:
commit: 0
best_case: 0
pipeline: 0
actual_vs_forecast_last_month: "0%"
mape: "0%"
health_signals:
- metric: ""
status: "" # green | yellow | red
note: ""
| ACV | Primary Motion | Typical CAC | Target Payback | S&M % of Revenue | |-----|---------------|-------------|----------------|-----------------| | <$1K | Self-serve / PLG | <$500 | <3 months | <30% | | $1-10K | Inside sales + PLG | $2-5K | <6 months | 30-50% | | $10-50K | Inside sales | $10-25K | <12 months | 40-60% | | $50-100K | Field sales | $30-60K | <18 months | 50-70% | | $100K+ | Enterprise field | $50-150K+ | <24 months | 40-60% |
Required AEs = Revenue Target ÷ (Quota × Expected Attainment)
Example:
$5M new ARR target ÷ ($600K quota × 70% attainment) = 12 AEs needed
Ramp schedule:
- Month 1-2: 0% productivity (onboarding)
- Month 3: 25% productivity
- Month 4-5: 50% productivity
- Month 6+: 100% productivity (fully ramped)
So 12 AEs needed at full ramp = hire 14-15 to account for ramp + attrition
# rep-scorecard.yaml
rep_name: ""
period: ""
quota: 0
attainment: "0%"
activity:
calls_per_day: 0 # target: 40-60 for SDR, 8-12 for AE
emails_per_day: 0 # target: 30-50 for SDR, 15-20 for AE
meetings_booked_per_week: 0 # target: 8-12 for SDR, 10-15 for AE
demos_per_week: 0 # target: 5-8 for AE
pipeline:
created_this_month: 0
coverage_ratio: "0x"
avg_deal_size: 0
win_rate: "0%"
avg_cycle_days: 0
efficiency:
cost_per_meeting: 0 # (rep fully-loaded cost ÷ meetings held)
revenue_per_activity: 0 # (closed revenue ÷ total activities)
pipeline_to_close_ratio: "0:1"
coaching_notes:
strengths: []
improvement_areas: []
action_items: []
# marketing-sla.yaml
commitment:
mql_volume: "[N] MQLs per month"
mql_quality: "MQL-to-SQL rate >= [X]%"
lead_data_completeness: "100% of required fields populated"
delivery:
routing: "MQLs routed to correct SDR within 5 minutes"
context: "Lead source, engagement history, and score visible in CRM"
reporting:
frequency: "Weekly MQL report by source, score band, and ICP tier"
review: "Monthly alignment meeting with sales leadership"
# sales-sla.yaml
commitment:
response_time: "Contact MQL within 4 business hours"
follow_up: "Minimum 6-touch sequence over 14 days before rejecting"
feedback: "Rejection reason provided within 48 hours"
delivery:
crm_hygiene: "All MQLs dispositioned within 48 hours (accepted/rejected)"
win_loss: "Closed-lost reason + competitor captured on every deal"
reporting:
frequency: "Weekly SAL/SQL report with rejection reasons"
review: "Monthly alignment meeting with marketing leadership"
# cs-handoff-sla.yaml
trigger: "Contract signed"
sales_responsibilities:
- "Complete handoff document within 24 hours"
- "Intro email to CS owner within 24 hours"
- "Joint kickoff call within 5 business days"
handoff_document:
- "Customer goals and success criteria"
- "Technical requirements discussed"
- "Key stakeholders and champions"
- "Pricing/discount details and renewal date"
- "Risks identified during sales process"
- "Competitive alternatives considered"
cs_responsibilities:
- "Acknowledge handoff within 4 hours"
- "Send welcome email within 24 hours"
- "Schedule onboarding kickoff within 48 hours"
| Process | Impact | Effort | Priority | |---------|--------|--------|----------| | Lead routing | High — speed kills | Low | P0 — Do first | | Lead scoring | High — quality focus | Medium | P0 | | Stage progression alerts | Medium — pipeline hygiene | Low | P1 | | Renewal reminders (90/60/30 day) | High — retention | Low | P1 | | Expansion signal alerts | High — NRR | Medium | P1 | | Forecast roll-up | Medium — accuracy | Medium | P2 | | Activity logging | Medium — data quality | Medium | P2 | | Win/loss analysis compilation | Medium — learning | High | P2 | | Comp calculation | Medium — motivation | High | P3 | | Territory assignment | Low (unless scaling fast) | High | P3 |
# lead-routing.yaml
rules:
- name: "Enterprise (500+ employees)"
condition: "company_size >= 500 AND icp_tier IN ['A', 'B']"
route_to: "enterprise_ae_round_robin"
sla: "5 minutes"
- name: "Mid-market (50-499)"
condition: "company_size BETWEEN 50 AND 499"
route_to: "mm_sdr_round_robin"
sla: "5 minutes"
- name: "SMB (<50)"
condition: "company_size < 50 AND lead_score >= 50"
route_to: "smb_sdr_round_robin"
sla: "15 minutes"
- name: "Low score"
condition: "lead_score < 50"
route_to: "nurture_campaign"
sla: "N/A — automated nurture"
- name: "Named account"
condition: "account IN named_account_list"
route_to: "assigned_ae_direct"
sla: "Immediate notification"
fallback: "marketing_ops_queue"
escalation: "If no action in 30 minutes, re-route to manager"
# expansion-signals.yaml
usage_signals:
- signal: "Approaching seat/usage limit (>80%)"
action: "Alert CS + AE, send upgrade nudge"
urgency: "High"
- signal: "New department/team using product"
action: "Alert AE for cross-sell conversation"
urgency: "Medium"
- signal: "API usage growing >20% MoM"
action: "Log for QBR, prepare enterprise tier pitch"
urgency: "Medium"
engagement_signals:
- signal: "Executive attended webinar"
action: "Alert AE, potential champion expansion"
urgency: "High"
- signal: "Support ticket from new department"
action: "Alert CS, new user group emerging"
urgency: "Medium"
lifecycle_signals:
- signal: "Renewal in 90 days + healthy NPS"
action: "Initiate renewal + expansion conversation"
urgency: "High"
- signal: "12 months since last price increase"
action: "Flag for pricing review at renewal"
urgency: "Low"
| Role | Base:Variable | OTE Range | Quota Multiple | |------|-------------|-----------|----------------| | SDR | 70:30 | $55-85K | Pipeline generated = 3-5x OTE | | AE (SMB) | 50:50 | $100-150K | New ARR = 4-6x OTE | | AE (Mid-Market) | 50:50 | $150-250K | New ARR = 4-5x OTE | | AE (Enterprise) | 60:40 | $200-350K | New ARR = 3-4x OTE | | CS/AM | 70:30 | $80-150K | NRR + expansion targets |
Comp Design Rules:
# territory-design.yaml
method: "balanced" # balanced | named-account | geographic | vertical
balancing_criteria:
- factor: "Total addressable accounts"
weight: 30
- factor: "Historical revenue potential"
weight: 30
- factor: "Current pipeline value"
weight: 20
- factor: "Account density (effort to cover)"
weight: 20
rules:
- "No rep should have >2x the TAM of another rep"
- "Named accounts assigned by relationship, not geography"
- "New territories get 25% pipeline seed from marketing"
- "Territory changes only at fiscal year (exceptions: termination, promotion)"
- "Overlay reps (solutions engineers) shared across max 4 AEs"
review_cadence: "Quarterly assessment, annual reassignment"
| Stage | Must-Have | Nice-to-Have | Premium | |-------|-----------|-------------|---------| | Pre-$1M | CRM (HubSpot Free/Pipedrive), Stripe, Google Analytics | Email sequencer (Apollo/Instantly), Basic BI | — | | $1-5M | CRM (HubSpot Pro/Salesforce), Marketing automation, Billing (Stripe/Chargebee) | Enrichment (Clearbit/Apollo), Call recording (Gong/Chorus), CPQ | Data warehouse | | $5-20M | Full CRM, MA, Billing, Data warehouse, BI tool | RevOps platform (Clari/Aviso), ABM (Demandbase/6sense), CS platform (Gainsight) | CDI (Census/Hightouch) | | $20M+ | All of above + CPQ, Advanced analytics | AI forecasting, Deal intelligence, Revenue intelligence platform | Custom data models |
Marketing Stack → CRM ← Sales Stack
↓ ↓ ↓
Attribution Pipeline Activity
↓ ↓ ↓
└──── Data Warehouse ────┘
↓
BI Dashboard
↓
Automated Alerts
Critical integrations (in priority order):
# revenue-plan.yaml
fiscal_year: "2026"
targets:
total_arr_target: 0
new_business: 0 # typically 60-70% of net new
expansion: 0 # typically 30-40% of net new
assumptions:
gross_churn_rate: "0%"
expansion_rate: "0%"
avg_new_deal_size: 0
avg_expansion_deal_size: 0
new_win_rate: "0%"
expansion_win_rate: "0%" # typically 2-3x new business win rate
avg_sales_cycle_new: "0 days"
avg_sales_cycle_expansion: "0 days"
derived:
new_deals_needed: 0 # new_business ÷ avg_deal_size
opps_needed: 0 # new_deals_needed ÷ win_rate
sqls_needed: 0 # opps_needed ÷ sql_to_opp_rate
mqls_needed: 0 # sqls_needed ÷ mql_to_sql_rate
pipeline_needed: 0 # opps_needed × avg_deal_size
capacity:
aes_at_full_ramp: 0
quota_per_ae: 0
expected_attainment: "0%"
productive_capacity: 0 # aes × quota × attainment
gap: 0 # target - capacity
hires_needed: 0
Always model three scenarios:
| Scenario | Revenue | Key Assumptions | Actions | |----------|---------|----------------|---------| | Bear (70% confidence) | -20% from plan | Win rate drops 5pts, cycle +15 days, churn +2pts | Reduce hiring, focus on expansion, cut discretionary | | Base (50% confidence) | Plan | Current trends continue | Execute plan | | Bull (30% confidence) | +20% from plan | Win rate up 5pts, cycle -10 days, expansion up | Accelerate hiring, invest in new channels |
| Day | Meeting | Duration | Attendees | Focus | |-----|---------|----------|-----------|-------| | Monday | Pipeline generation review | 30 min | SDR managers + Marketing | MQL quality, outbound metrics, campaign performance | | Tuesday | Deal review | 45 min | AE managers | Top deals, stuck deals, forecast updates | | Wednesday | Cross-functional sync | 30 min | RevOps + Marketing + Sales + CS leads | Funnel health, SLA compliance, blockers | | Thursday | Forecast call | 30 min | CRO + managers | Commit/best case updates, risk deals | | Friday | Data quality + process | 30 min | RevOps team | Hygiene reports, automation updates, tooling |
## Monthly RevOps Review — [Month Year]
### Headline Metrics
| Metric | Actual | Target | Δ | Trend |
|--------|--------|--------|---|-------|
| ARR | | | | ↑↓→ |
| Net New ARR | | | | |
| NRR | | | | |
| CAC Payback | | | | |
| Pipeline Coverage | | | | |
| Forecast Accuracy | | | | |
### Funnel Analysis
| Stage | Volume | Conversion | vs. Last Month | vs. Target |
|-------|--------|-----------|----------------|------------|
### What Worked
1. [...]
### What Didn't
1. [...]
### Process Changes Made
1. [...]
### Next Month Priorities
1. [...]
Build signals that predict outcomes before they happen:
| Signal | Predicts | Data Source | Action | |--------|---------|-------------|--------| | Multi-threading (3+ contacts engaged) | 2.3x higher win rate | CRM + email | Coach reps on multi-threading | | Champion job change | Churn risk OR new opp | LinkedIn alerts | CS: protect account, Sales: pursue new co | | Decreasing product usage | Churn in 60-90 days | Product analytics | CS intervention + exec sponsor call | | Pricing page + competitor page in same session | High-intent comparison shopper | Web analytics | Priority SDR outreach | | CFO/finance contact added to deal | Deal in budget approval | CRM | Adjust timeline, prepare ROI doc |
Track every cohort of customers by:
# plg-sales-handoff.yaml
self_serve_signals:
- signal: "Workspace has 5+ active users"
action: "Auto-assign to AE for outreach"
- signal: "Hitting usage limits"
action: "In-app upgrade prompt + AE notification"
- signal: "Admin invited 10+ users"
action: "Schedule product-led onboarding call"
- signal: "Enterprise domain detected (Fortune 500)"
action: "Immediate AE assignment regardless of usage"
pql_definition: # Product Qualified Lead
must_have:
- "Completed onboarding (core activation milestone)"
- "3+ active users in last 7 days"
- "Used 2+ core features"
nice_to_have:
- "Connected integration"
- "Shared workspace externally"
- "Hit usage warning (>80% of limit)"
| # | Mistake | Fix | |---|---------|-----| | 1 | Too many metrics — can't focus | Max 5 metrics per team, aligned to one goal | | 2 | MQL definition too loose | Tighten with firmographic + behavioral (score >50) | | 3 | No SLAs between teams | Implement Phase 7 SLAs, review monthly | | 4 | CRM is a data graveyard | Required fields, validation rules, weekly hygiene | | 5 | Forecast = wishful thinking | MEDDPICC-based categories, track accuracy | | 6 | Over-automating before process exists | Manual first, then automate what works | | 7 | Comp plan rewards wrong behavior | Align to NRR, not just new logo | | 8 | No closed-lost analysis | Mandatory field, monthly review, product feedback loop | | 9 | RevOps reports to Sales only | Report to CRO/CEO — neutral across functions | | 10 | Building dashboards nobody uses | Start with questions, not charts |
| Dimension | Weight | Criteria | |-----------|--------|----------| | Data Integrity | 20 | Single source of truth, <2% duplicates, required fields enforced, hygiene automated | | Funnel Definitions | 15 | All stages defined, agreed cross-functionally, conversion tracked weekly | | Pipeline Management | 15 | Coverage tracked, velocity measured, forecast accuracy <15% MAPE | | Cross-Team Alignment | 15 | SLAs exist, reviewed monthly, handoffs documented, shared metrics | | Automation | 10 | Lead routing <5 min, renewal alerts automated, key workflows built | | Analytics | 10 | Dashboard updated weekly, cohort analysis running, leading indicators tracked | | Compensation | 8 | Plans documented, aligned to strategy, accelerators at 100%, simple (≤3 components) | | Process Documentation | 7 | Playbooks exist, onboarding covers them, quarterly review cycle |
Scoring: 0-2 per sub-criterion within each dimension.
When asked, you can:
tools
Use when the user wants to connect to, test, or use the McDonalds service at mcp.mcd.cn, including checking authentication, probing MCP endpoints, listing tools, or calling McDonalds MCP tools through a reusable local CLI.
development
Web scraping platform — Twitter/X data, Vinted marketplace, and general web scraping API
development
SlowMist AI Agent Security Review — comprehensive security framework for skills, repositories, URLs, on-chain addresses, and products (Claude Code version)
data-ai
去除中文文本中的 AI 写作痕迹,使其读起来自然。基于维基百科 AI 写作特征指南,检测 24 种 AI 模式。触发词:humanizer-cn、去除 AI 痕迹、去除 AI 写作痕迹、中文文本人性化。