Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Build a structured sales forecast framework for any business or team. Use when asked to build a sales forecast, create a revenue model, project pipeline, or build a bottom-up forecast. Produces a forecast methodology, pipeline model, scenario analysis, and assumption log.
.claude/skills/mohitagw15856-sales-forecasting-model/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -37% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -38% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 127% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 33% | 0% |
Produces a structured sales forecast framework — from pipeline conversion modelling to scenario analysis. Built for revenue and sales leaders who need a defensible forecast, not a spreadsheet guess.
Ask the user for these if not provided:
Forecast type: Bottom-up pipeline / Top-down quota / Capacity-based / Hybrid] Period: Month / Quarter / Year] Created: Date] Forecast owner: Name]
Chosen approach: Bottom-up / Top-down / Hybrid] — and why for this context.
Bottom-up (recommended when pipeline data exists): > Start from real deals in the pipeline. Apply stage-by-stage conversion rates. Sum to a revenue number.
Top-down (useful for planning, not for calling a number): > Start from market or quota. Work backwards to activity targets.
Define the sales stages and the expected conversion rate between each:
| Stage | Description | % of deals that advance | Avg time in stage | |---|---|---|---| | Prospect | Identified, not contacted | — | — | | Qualified | Discovery done, confirmed fit | X%] | N days] | | Proposal | Proposal sent | X%] | N days] | | Negotiation | Commercial terms being agreed | X%] | N days] | | Closed Won | Contract signed | X%] | — |
Overall pipeline conversion rate: X%] (Qualified → Closed Won) Average sales cycle: N days from Qualified to Close]
| Stage | Number of deals | Total value | Expected close (weighted) | |---|---|---|---| | Qualified | N] | £X] | £X × conversion %] | | Proposal | N] | £X] | £X × conversion %] | | Negotiation | N] | £X] | £X × conversion %] | | Total | | £X] | £weighted total] |
Coverage ratio: Weighted pipeline ÷ target = X×] Rule of thumb: 3× pipeline coverage is needed for confident forecast; 2× is tight; below 1.5× is at risk.
| Scenario | Assumption | Revenue | Probability | |---|---|---|---| | Upside | All Negotiation + top 50% of Proposal close | £X] | %] | | Base | Weighted pipeline conversion at historical rates | £X] | %] | | Downside | Conversion rates drop 20% from historical | £X] | %] |
Committed forecast: £X] — The number the forecast owner is willing to call. Between base and downside.]
Every forecast is a set of assumptions. Name them explicitly so they can be updated:
| Assumption | Value | Confidence | Source | Last updated | |---|---|---|---|---| | Avg deal size | £X] | High/Med/Low | Last N deals] | Date] | | Sales cycle | N days] | | | | | Close rate from Proposal | X%] | | | | | Seasonal factor | e.g. Q4 +20%] | | | | | Churn/contraction | X% of ARR at risk] | | | |
Work backwards from the forecast to check if the required activity is achievable:
To hit £target]:
Does the team have capacity to generate this? Yes / No — flag if not]
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 42,274 | 22,681 | -46% | 1 | 1 | 0% | 7,392 | 4,633 | -37% | 0 | 0 | — |
case-02 | fail→pass | 41,564 | 21,274 | -49% | 1 | 1 | 0% | 7,212 | 4,461 | -38% | 0 | 0 | — |
case-03 | fail→fail | 23,219 | 20,541 | -12% | 1 | 1 | 0% | 3,424 | 4,532 | +32% | 0 | 0 | — |
case-04 | pass→pass | 15,737 | 25,219 | +60% | 1 | 1 | 0% | 2,867 | 4,289 | +50% | 0 | 0 | — |
case-05 | fail→pass | 14,921 | 22,309 | +50% | 1 | 1 | 0% | 1,999 | 4,528 | +127% | 0 | 0 | — |
case-06 | fail→fail | 19,789 | 22,915 | +16% | 1 | 1 | 0% | 1,914 | 4,145 | +117% | 0 | 0 | — |
case-07 | fail→fail | 21,055 | 26,744 | +27% | 1 | 1 | 0% | 3,918 | 5,457 | +39% | 0 | 0 | — |
case-08 | pass→pass | 19,554 | 16,474 | -16% | 1 | 1 | 0% | 2,747 | 4,546 | +65% | 0 | 0 | — |
case-09 | fail→fail | 16,166 | 14,246 | -12% | 1 | 1 | 0% | 2,385 | 4,000 | +68% | 0 | 0 | — |
case-10 | fail→pass | 23,898 | 29,118 | +22% | 1 | 1 | 0% | 5,000 | 4,360 | -13% | 0 | 0 | — |
case-11 | fail→fail | 14,602 | 15,058 | +3% | 1 | 1 | 0% | 2,699 | 4,046 | +50% | 0 | 0 | — |
case-12 | fail→fail | 27,328 | 24,625 | -10% | 1 | 1 | 0% | 3,962 | 4,908 | +24% | 0 | 0 | — |
case-13 | fail→pass | 21,188 | 19,678 | -7% | 1 | 1 | 0% | 3,167 | 4,227 | +33% | 0 | 0 | — |
case-14 | fail→pass | 15,854 | 21,477 | +35% | 1 | 1 | 0% | 2,752 | 4,007 | +46% | 0 | 0 | — |
case-15 | fail→fail | 20,413 | 30,857 | +51% | 1 | 1 | 0% | 2,920 | 5,075 | +74% | 0 | 0 | — |
case-16 | fail→fail | 20,129 | 23,322 | +16% | 1 | 1 | 0% | 2,792 | 4,819 | +73% | 0 | 0 | — |
case-17 | fail→fail | 13,295 | 17,995 | +35% | 1 | 1 | 0% | 2,560 | 4,050 | +58% | 0 | 0 | — |
case-18 | fail→fail | 26,210 | 28,324 | +8% | 1 | 1 | 0% | 4,727 | 5,444 | +15% | 0 | 0 | — |
case-19 | fail→fail | 18,950 | 17,305 | -9% | 1 | 1 | 0% | 3,233 | 4,664 | +44% | 0 | 0 | — |
case-20 | pass→pass | 17,315 | 19,478 | +12% | 1 | 1 | 0% | 3,056 | 4,264 | +40% | 0 | 0 | — |
case-21 | pass→pass | 30,382 | 34,644 | +14% | 1 | 1 | 0% | 4,797 | 5,813 | +21% | 0 | 0 | — |
case-22 | pass→pass | 19,077 | 21,622 | +13% | 1 | 1 | 0% | 2,890 | 4,214 | +46% | 0 | 0 | — |
case-23 | pass→pass | 21,985 | 28,483 | +30% | 1 | 1 | 0% | 3,273 | 4,997 | +53% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +26 percentage points is the difference between those two pass rates over the 23 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.