本文へ移動
cccskills
無料GitHub で公開

revenue-forecaster

Revenue forecast from pipeline data with stage-weighted probability and sensitivity analysis

インストール方法を見る

含まれるファイル(2)

  • SKILL.md9.0 KB
  • skill.meta.json437 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Revenue Forecaster

Generates revenue forecasts from pipeline data using stage-weighted probability. Projects monthly and quarterly revenue, compares forecasts to targets, and runs sensitivity analysis across best, expected, and worst case scenarios. Designed for agencies and B2B businesses with a stage-based sales pipeline.

Prerequisites

  • agency.config.json in the project root
  • Pipeline data: deals by stage with values and expected close dates
  • Optional: historical close rates for model calibration
  • Optional: revenue targets for comparison
  • Optional: crm-writer integration for pulling live pipeline data

Phase 0: Read Config

  1. Read agency.config.json from the project root.
  2. Extract pipeline configuration:
    • crm.stages[] -- pipeline stages with names and order
    • crm.stage_probabilities -- conversion probability per stage (if defined)
    • pricing.minimum_retainer -- minimum deal size
    • pricing.average_deal_size -- for gap-filling estimates
  3. Extract tools.crm for data access method.
  4. Extract targets.revenue.monthly and targets.revenue.quarterly if defined.
  5. If crm.stage_probabilities is not defined, use defaults:
    New Lead: 5%
    Qualified: 15%
    Discovery Call: 30%
    Proposal Sent: 50%
    Negotiation: 70%
    Verbal Commit: 85%
    Closed Won: 100%
    Closed Lost: 0%
    

Phase 1: Gather Pipeline Data

Collect or retrieve current pipeline. Each deal needs:

{
  "deal_id": "deal_001",
  "company": "Acme Corp",
  "deal_value": 75000,
  "recurring": true,
  "billing_cycle": "monthly",
  "stage": "Proposal Sent",
  "expected_close_date": "2024-04-15",
  "days_in_stage": 12,
  "owner": "sales_rep_1",
  "notes": "Waiting on budget approval"
}

Data sources:

  • CRM pull via crm-writer
  • Manual input (user provides deal list)
  • Spreadsheet import (CSV/JSON)

Validate the data:

  • Flag deals with missing close dates (estimate based on average cycle)
  • Flag deals with no value (use pricing.average_deal_size)
  • Flag stale deals (in same stage for over 30 days)
  • Flag deals past their expected close date

Phase 2: Stage-Weighted Pipeline Calculation

Apply stage probability to each deal:

WEIGHTED PIPELINE
===
Deal              | Stage           | Value    | Probability | Weighted Value
------------------|-----------------|----------|-------------|---------------
Acme Corp         | Proposal Sent   | $75,000  | 50%         | $37,500
Beta Inc          | Discovery Call  | $50,000  | 30%         | $15,000
Gamma Ltd         | Negotiation     | $100,000 | 70%         | $70,000
Delta Co          | Qualified       | $40,000  | 15%         | $6,000
                  |                 |          |             |
TOTAL PIPELINE    |                 | $265,000 |             | $128,500

Summary metrics:

  • Total pipeline value: sum of all deal values
  • Weighted pipeline value: sum of all weighted values
  • Pipeline coverage ratio: weighted pipeline / monthly target (aim for 3x+)
  • Average deal size: mean deal value
  • Deal count by stage: distribution across stages

Phase 3: Monthly and Quarterly Projections

Project revenue by expected close date:

MONTHLY REVENUE PROJECTION
===
Month     | Deals Expected | Weighted Revenue | Cumulative
----------|---------------|------------------|----------
April     | 5             | $52,500          | $52,500
May       | 8             | $78,000          | $130,500
June      | 3             | $31,000          | $161,500

Q2 TOTAL  | 16            | $161,500         |

For each month:

  1. Filter deals with expected close date in that month
  2. Apply stage-weighted probability
  3. Sum weighted values

For recurring revenue deals:

  • Include the recurring amount in all subsequent months after close
  • Track MRR (monthly recurring revenue) growth separately
MRR TRAJECTORY
===
Month     | New MRR  | Churned MRR | Net MRR  | Total MRR
----------|----------|-------------|----------|----------
April     | $15,000  | $0          | $15,000  | $45,000
May       | $20,000  | $5,000      | $15,000  | $60,000
June      | $8,000   | $0          | $8,000   | $68,000

Phase 4: Compare to Targets

If revenue targets are defined:

FORECAST vs TARGET
===
Period    | Target    | Forecast  | Gap       | On Track?
----------|-----------|-----------|-----------|----------
April     | $60,000   | $52,500   | -$7,500   | AT RISK
May       | $60,000   | $78,000   | +$18,000  | AHEAD
June      | $60,000   | $31,000   | -$29,000  | BEHIND
Q2 Total  | $180,000  | $161,500  | -$18,500  | AT RISK

Calculate:

  • Forecast accuracy: weighted pipeline / target
  • Gap to target: additional pipeline needed
  • Deals needed to close gap: gap / average deal size
  • Leads needed: deals needed / average conversion rate

Phase 5: Sensitivity Analysis

Run three scenarios:

Best Case:

  • Stage probabilities increased by 20% (capped at 100%)
  • All deals close on time
  • No deals move to Closed Lost

Expected Case:

  • Stage probabilities as configured
  • Historical win rate applied
  • Average slip of 2 weeks for deals in early stages

Worst Case:

  • Stage probabilities decreased by 30%
  • 20% of deals slip by one month
  • Highest-value deal in each month removed (largest deal risk)
SENSITIVITY ANALYSIS
===
Scenario     | Q2 Revenue  | vs Target  | Confidence
-------------|-------------|------------|----------
Best Case    | $210,000    | +$30,000   | 15% likely
Expected     | $161,500    | -$18,500   | 55% likely
Worst Case   | $95,000     | -$85,000   | 30% likely

Run a single-deal risk analysis:

  • What happens if the largest deal is lost?
  • What percentage of the forecast depends on the top 3 deals?
  • Is revenue concentrated or distributed?
CONCENTRATION RISK
===
Top 1 deal: $100,000 (38% of pipeline)  -- HIGH concentration risk
Top 3 deals: $225,000 (85% of pipeline) -- CRITICAL concentration risk
Remaining 13 deals: $40,000 (15% of pipeline)

Phase 6: Velocity Analysis

Calculate pipeline velocity metrics:

PIPELINE VELOCITY
===
Metric                        | Value    | Trend
------------------------------|----------|------
Average days to close         | 34 days  | Improving (was 42)
Average days per stage        | 8 days   | Stable
Fastest close (last 90 days)  | 12 days  |
Slowest close (last 90 days)  | 78 days  |
Stale deals (30+ days)        | 4 deals  | Action needed

Identify bottleneck stages:

  • Which stage has the longest average duration?
  • Which stage has the highest drop-off rate?
  • Recommendations for accelerating each bottleneck

Phase 7: Output

Return structured JSON:

{
  "revenue_forecast": {
    "generated_date": "2024-03-15",
    "pipeline_summary": {
      "total_deals": 16,
      "total_pipeline_value": 265000,
      "weighted_pipeline_value": 128500,
      "average_deal_size": 16563,
      "pipeline_coverage_ratio": 2.1
    },
    "stage_distribution": [
      { "stage": "Qualified", "deals": 4, "value": 80000 },
      { "stage": "Discovery Call", "deals": 5, "value": 75000 }
    ],
    "monthly_projection": [
      {
        "month": "2024-04",
        "deals_expected": 5,
        "weighted_revenue": 52500,
        "target": 60000,
        "gap": -7500,
        "status": "at_risk"
      }
    ],
    "quarterly_projection": {
      "quarter": "Q2 2024",
      "forecast": 161500,
      "target": 180000,
      "gap": -18500,
      "status": "at_risk"
    },
    "sensitivity": {
      "best_case": { "revenue": 210000, "probability": 0.15 },
      "expected": { "revenue": 161500, "probability": 0.55 },
      "worst_case": { "revenue": 95000, "probability": 0.30 }
    },
    "concentration_risk": {
      "top_deal_pct": 0.38,
      "top_3_deals_pct": 0.85,
      "risk_level": "critical"
    },
    "velocity": {
      "avg_days_to_close": 34,
      "avg_days_per_stage": 8,
      "stale_deals": 4,
      "bottleneck_stage": "Proposal Sent"
    },
    "recommendations": [
      "Close the $7,500 April gap by accelerating 2 Discovery Call deals",
      "Reduce concentration risk by adding 5+ smaller deals to pipeline",
      "Address 4 stale deals: either advance or disqualify"
    ]
  }
}

Example Usage

Trigger phrases:

  • "Forecast revenue for next quarter"
  • "What does our pipeline look like for April?"
  • "Run a revenue forecast from our CRM data"
  • "Will we hit our Q2 target?"
  • "Show me pipeline coverage and forecast"
  • "What's our worst-case revenue scenario?"
User: Forecast Q2 revenue from our pipeline
Assistant: [pulls pipeline data, applies stage weights, projects $161K against $180K target, flags $18.5K gap, identifies concentration risk in top 3 deals, recommends pipeline-building actions]
User: Are we going to hit target this month?
Assistant: [filters to current month deals, runs weighted forecast, compares to monthly target, runs sensitivity showing 55% likely to miss by $7.5K, suggests specific deals to accelerate]

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Analyze A/B test results for statistical significance with ship, extend, or kill recommendations

日本語の概要は準備中です。原文の説明を表示しています。

ekatasingh1107/b2b-gtm-skills22026年4月12日 更新

Reallocate ad budget across campaigns and channels using ROAS and marginal return analysis

日本語の概要は準備中です。原文の説明を表示しています。

ekatasingh1107/b2b-gtm-skills22026年4月12日 更新

Generate structured creative briefs for ad designers with brand-consistent direction

日本語の概要は準備中です。原文の説明を表示しています。

ekatasingh1107/b2b-gtm-skills22026年4月12日 更新

Mine winning ad angles, hooks, and creative patterns from top-performing ads

日本語の概要は準備中です。原文の説明を表示しています。

ekatasingh1107/b2b-gtm-skills22026年4月12日 更新

ad-spy

無料

Monitor competitor ads across Meta, Google, and LinkedIn with strategic analysis

日本語の概要は準備中です。原文の説明を表示しています。

ekatasingh1107/b2b-gtm-skills22026年4月12日 更新

Interactive onboarding wizard that generates agency.config.json for any B2B agency. Asks structured questions about the agency, services, ICP, tools, outreach preferences, and CRM setup. Outputs a complete config file.

日本語の概要は準備中です。原文の説明を表示しています。

ekatasingh1107/b2b-gtm-skills22026年4月12日 更新

ekatasingh1107 のスキルをすべて見る

このスキルの問題を報告する