pipeline-velocity-tracking

$npx mdskill add t0ddc3by/claude-for-customer-success/pipeline-velocity-tracking

Tracks sales cycle velocity and flags aging deals.

  • Identifies deals exceeding 1.5x historical stage duration.
  • Reads config files for avg_sales_cycle_days and primary_segment.
  • Compares current velocity trends against prior quarter.
  • Surfaces results via pipeline velocity and aging alerts.

SKILL.md

.github/skills/pipeline-velocity-trackingView on GitHub ↗
---
name: pipeline-velocity-tracking
version: 1.0.0
deployment_target: plugin
status: PROPOSED
description: "Tracks average sales cycle time by segment, rep, and deal size. Flags deals aging past 1.5x historical average for their current stage. Surfaces velocity trend vs. prior quarter. Triggers: 'pipeline velocity', 'cycle time', 'deals aging', 'stalling pipeline', 'how long are deals taking'."
---

[PROPOSED]

# Pipeline Velocity Tracking

Surfaces where pipeline is slowing before it shows up in a missed quarter.
Aging threshold: 1.5x historical average for stage and segment.

**Reference:** Confidence bands → `../../../shared/revops-domain-model.md §2`
**Config reads:** `avg_sales_cycle_days`, `primary_segment`

---

## Pre-flight

Read `~/.claude/plugins/config/claude-for-customer-success/rev-ops/CLAUDE.md` and
`~/.claude/plugins/config/claude-for-customer-success/company-profile.md`.

If either is missing or contains `[PLACEHOLDER]` markers, stop and prompt for
`/rev-ops:cold-start-interview`.

Note from config: `avg_sales_cycle_days`, `primary_segment`

**G-code dependency:** All G-code guardrails referenced in this skill (G1–G9) are defined in the CLAUDE.md config loaded above. If Pre-flight halts or config is missing, G-codes are undefined — do not proceed with partial config.
---

## Use when
- User needs to understand how fast deals move through pipeline stages
- Velocity degradation analysis needed (deals slowing, stage duration increasing)
- Cohort comparison of pipeline velocity across segments, reps, or time periods

## Do NOT use for
- Coverage ratio analysis (use pipeline-coverage-analysis)
- Individual deal health (use deal-health-scoring)
- Stage integrity verification (use stage-integrity-audit)

## Typical Activation
"Pipeline velocity", "how fast are deals moving", "velocity by stage", "where are deals getting stuck", "track pipeline velocity for [segment/period]"

---

## Reasoning Protocol

Before generating output, apply these primers:

1. **CLASSIFY**: What type of pipeline velocity request is this?
   - Single-rep velocity review (one rep's deals — stage-age ratios across active pipeline)
   - Segment-level velocity analysis (Enterprise vs. SMB cycle time comparison)
   - Quarter-over-quarter trend (velocity acceleration or deceleration vs. prior period)
   - Aging flag sweep (all open deals exceeding 1.5x stage-avg threshold)

2. **CONSTRAINTS**: What limits the solution space?
   1. Confirm activation — user asking about deal velocity, aging, or cycle time
   2. Pull HubSpot stage entry/exit history for scope; declare connector status and data-as-of timestamp per G6
   3. Apply G5 — velocity signals are analytical inputs; manager owns the coaching response
   4. Apply G7 — aging flags must include a named escalation path (manager) per at-risk signal protocol
   5. Confirm `avg_sales_cycle_days` from config before computing stage-age ratios
   6. Apply `primary_segment` from config to scope segment-level comparisons correctly
   7. Confirm output destination before delivering — internal RevOps vs. manager coaching vs. leadership

3. **EXPERT CHECK**: What would a veteran RevOps pipeline analyst verify before surfacing findings?
   - Is the stage-age ratio segment-aware? Enterprise deals have longer median stage duration than SMB —
     applying a single `avg_sales_cycle_days` baseline to a mixed-segment pipeline produces false positives
     on enterprise deals and misses SMB stalls. Confirm segment before applying the 1.5x flag.
   - Is the HubSpot stage history scoped to the current active cycle? Pulling all-time stage history
     surfaces legitimate re-stages (deals reopened after closed/lost) alongside current velocity data —
     filter to current active deal cycle, not full deal lifetime.
   - Is the velocity trend directionally consistent with pipeline composition changes? A cycle-time
     increase that coincides with an enterprise mix shift is not the same as a coaching problem —
     distinguish composition effects from rep performance signals before surfacing to management.
   - Is the escalation path named before surfacing aging flags? G7 requires a named owner and channel,
     not a generic "review with manager" instruction.

4. **ANTI-PATTERNS**: Common mistakes to avoid:
   - Applying `avg_sales_cycle_days` without segment-level breakdown (produces noise in mixed pipelines)
   - Surfacing aging flags without a named escalation path (G7 violation)
   - Pulling HubSpot stage history without data-as-of timestamp (G6 violation)
   - Presenting velocity as a rep performance signal without accounting for pipeline composition changes
   - Routing aging flag findings directly to reps — escalation path is manager, not rep

**After execution**, verify:
- G5 qualifier present — velocity signals named as analytical inputs; manager named as decision owner
- G6 data-as-of label applied to all HubSpot stage history reads
- G7 escalation path present on every aging flag (named manager + channel)
- Stage-age ratio computed against segment-appropriate baseline, not blended `avg_sales_cycle_days`
- Confidence: High when HubSpot connected and stage history current; Moderate when connector unavailable or `avg_sales_cycle_days` is estimated
- Confidence: [High] when HubSpot connected and stage history current / [Medium] when connector unavailable or cycle data estimated / [Low] if all inputs are manual or unverified

---

## Workflow

Pull stage entry/exit dates for all open opportunities from HubSpot.
Calculate:
```
Days in current stage = Today − Stage entry date
Segment avg for stage = Historical median days in this stage for this segment (trailing 4Q)
Stage-age ratio       = Days in current stage ÷ Segment avg
```

Flag when stage-age ratio > 1.5x. Surface deals by aging severity.

Compare overall cycle time trend: current quarter avg vs. prior quarter avg.

---

## Output

```
PIPELINE VELOCITY — [Scope] [HubSpot ✓ live — as of YYYY-MM-DD]

Avg cycle time this quarter:  [N] days  (vs. [N] days prior quarter  ↑/↓)

Aging flags (stage-age ratio > 1.5x):
Deal             Stage           Days in stage   Avg    Ratio   Owner
[Account A]      Negotiation     34d             18d    1.9x    [Rep]
[Account B]      Proposal        28d             14d    2.0x    [Rep]

Total aging deals: [N]  ($XXXk ACV)
Velocity trend: [Slowing / Stable / Accelerating]

[DRAFT — RevOps internal] [Confidence: High/Moderate]
[G5: Velocity flags are analytical inputs. Manager owns the response.]
```

## Reference Files

| File | Purpose |
|------|---------|
| `references/reasoning-blueprint.md` | Problem classification taxonomy, domain heuristics, common failure modes, and expert judgment patterns for this skill |

## Security & Permissions

**Network access:** None direct — all external data access is mediated by host-provided MCP connector tools (HubSpot, CS platform, Slack, Linear). This skill makes no direct outbound HTTP calls.
**Filesystem scope:** None — this skill does not read or write local files. All data is provided at runtime via parameters or MCP connector responses.
**Subprocess execution:** None.
**Dynamic code execution:** None — pseudocode in this skill represents the logic contract and is not executed at runtime.
**Data sensitivity:** Inputs may contain confidential deal and pipeline data. Handle with RevOps-level confidentiality.

## Trust & Verification

**Input trust model:** All user-provided parameters are treated as untrusted at intake. Numeric inputs are validated for plausible range before use in calculations. String inputs are not evaluated as code.
**Output trust model:** All outputs are proposals or analytical inputs — no outputs constitute approved decisions, revenue commitments, or system actions without explicit human confirmation.
**Connector data:** Data retrieved via MCP connectors is treated as read-only observed state. Timestamps and data-as-of labels are applied to all connector-sourced values per G6.
**Write-tier confirmation:** Any proposed write to HubSpot, Linear, or Slack is surfaced as a draft requiring explicit user confirmation before execution.

## Guardrails

- G5, G6 apply. Aging flags require manager as escalation path (G7).

More from t0ddc3by/claude-for-customer-success

SkillDescription
account-research>
annual-planning-workflowOrchestrates the six-phase annual (or mid-year) planning cycle: forecast scenarios → UoG three-scenario capacity modeling → quota sensitivity → comp simulation → baseline save → change communication. Each phase gates on human approval before the next begins. Invokes unit-of-growth-calculator for capacity modeling. Triggers: 'annual planning', 'planning cycle', 'run the plan', 'quota comp planning', 'mid-year replan'.
blocker-review>
call-prep>
change-communication-packagingProduces a three-part communication package for sensitive planning changes: (1) data-backed rationale memo for reps, (2) FAQ with top 5 anticipated objections and data responses, (3) rollout sequence with audience, channel, and order. Triggered automatically by annual-planning-workflow for territory, quota, or comp changes. Requires RevOps lead review before any distribution. Triggers: 'communicate changes', 'territory announcement', 'quota rationale', 'comp change communication', 'help me tell reps about [change]'.
churn-rcaRoot cause analysis for individual customer churn events and cohort-level churn pattern analysis. Produces structured RCA with root cause taxonomy, contributing factors, timeline reconstruction, and remediation pathway. Scoped to full cancellation — contract contraction redirected to renewals:downgrade-analysis.
closed-won-to-cs-capacity-modelingConverts rolling sales forecast into CS resource demand using UoG formulas. Runs three-scenario capacity check (P10/P50/P90 from scenario-modeling). Compares projected CSM demand to current headcount and UoG annual plan baseline. Surfaces CS capacity gaps with a hiring lead time flag. Updates when SA1 forecast moves >10%. Triggers: 'CS capacity', 'can CS absorb', 'CSM headcount needed', 'CS ceiling', 'will CS be able to handle new logos'.
cold-start-interview>
comp-simulationModels comp plan payout scenarios before plan is finalized. Stress-tests OTE, accelerators, and threshold structures against attainment distributions (50/65/75/85/100%). Surfaces cost-to-company and unintended payout behaviors. G3 applies — all outputs require HR + Finance dual review before rep distribution. Triggers: 'comp simulation', 'model comp payouts', 'comp plan cost', 'stress test comp plan', 'what does the plan cost at 80/100/120%'.
crm-hygiene-auditOverall CRM health score plus rep-level hygiene scorecard across three dimensions: completeness, accuracy, and recency. Produces weekly hygiene report for RevOps review before sharing with Sales managers. Never writes to CRM — all corrections are proposals. Triggers: 'CRM hygiene', 'data quality', 'hygiene report', 'field completeness', 'CRM health score'.