pipeline-forecasting
Pipeline Forecasting
Pipeline forecasting predicts how much revenue will close in a given period based on the current state of open opportunities. The forecast is never perfect. The goal is to be consistently within 10-15% of actual results, quarter after quarter. A forecast that's off by 50% one quarter and dead-on the next is worse than one that's consistently off by 12%.
The principle: a forecast is a judgment call backed by data, not a math formula applied to CRM. Models set the floor. Human judgment sets the ceiling.
The 3 Forecasting Methods
Every forecast should use at least two of these three methods. When they diverge, the gap is where the risk lives.
Method 1: Weighted Pipeline
Multiply each opportunity's value by its probability of closing based on stage.
| Stage | Default close probability | Adjusted by |
|---|---|---|
| Discovery | 10% | Nothing. 10% is generous for a first meeting |
| Qualified / MEDDPICC passed | 20-25% | Qualification score, multi-threading status |
| Demo / evaluation | 30-40% | Technical validation status, champion engagement |
| Proposal sent | 50-60% | Economic buyer engagement, budget confirmed |
| Negotiation / legal | 70-80% | Procurement timeline, verbal commit |
| Verbal commit | 85-90% | Contract status, signature timeline |
| Closed-won | 100% | - |
Weighted pipeline = sum of (opp value x stage probability) for all open opps
Example:
| Opp | Value | Stage | Probability | Weighted |
|---|---|---|---|---|
| Acme Corp | $120K | Proposal | 55% | $66,000 |
| Beta Inc | $80K | Demo | 35% | $28,000 |
| Gamma Ltd | $200K | Negotiation | 75% | $150,000 |
| Delta Co | $50K | Discovery | 10% | $5,000 |
| Total | $450K | $249,000 |
Weighted pipeline rules:
- Default probabilities are starting points, not gospel. Calibrate quarterly using actual stage-to-close rates from the last 4 quarters
- Never let reps self-assign probability. Probability is tied to stage. Stage is tied to observable exit criteria (champion confirmed, budget discussed, proposal sent). Subjective probability ("I feel good about this one") corrupts the model
- Adjust probability for deal age. An opp in "Demo" stage for 90 days is not a 35% deal. Apply a decay factor for deals that exceed the average stage duration by 2x or more
- Adjust probability for multi-threading. Deals with 3+ engaged contacts close at roughly 2x the rate of single-threaded deals. Increase probability by 10-15% for well-threaded deals
Method 2: Category-Based (Rep Call)
Each rep categorizes their deals into forecast buckets. This layers human judgment on top of the data.
| Category | Definition | Rep criteria |
|---|---|---|
| Commit | Will close this period. Rep stakes their reputation on it | Verbal yes, procurement in motion, no unresolved blockers |
| Best case | Likely to close this period if nothing goes wrong | Strong champion, budget confirmed, timeline aligned, but one variable outstanding |
| Pipeline | Could close this period but significant unknowns remain | In evaluation, interested but not committed, timeline uncertain |
| Omit | Will not close this period | Stalled, pushed, lost, or too early |
Category-based forecast = Commit + (Best Case x 0.5-0.7)
The factor on Best Case depends on historical accuracy. If reps' Best Case deals close at 60%, use 0.6. Calibrate quarterly.
Category rules:
- Commit means "I will resign if this doesn't close." Enforce this standard. If reps commit deals that slip 30%+ of the time, the commit category is meaningless
- Best Case is not "wouldn't it be nice." It's "this closes if one specific thing happens" and the rep can name that thing
- Pipeline is the catch-all. Most open deals are Pipeline. That's fine. Pipeline is where deals live until they earn a higher category
- Review categories weekly in 1:1s and team forecast calls. Reps who never move deals out of Best Case are hiding slippage
- Require reps to justify each Commit deal with observable evidence. "The champion told me they're ready" is not evidence. "Procurement sent the MSA to legal on Tuesday" is evidence
Method 3: Historical Run Rate
Use historical close rates to predict future results based on current pipeline volume.
Formula:
Forecasted revenue = Current pipeline value x Historical close rate
Historical close rate by source:
| Pipeline source | Typical close rate | Notes |
|---|---|---|
| Inbound (demo request) | 15-25% | Highest intent. Prospect self-selected |
| Inbound (content lead, MQL) | 5-12% | Lower intent. Longer nurture cycle |
| Outbound (cold) | 8-15% | Lower than inbound but often higher ACV |
| ABM-sourced | 15-30% | Highly targeted. Smaller denominator |
| Referral / partner | 20-35% | Warm intro. Highest close rate |
| Expansion (existing customer) | 30-50% | Known relationship. Lowest risk |
Run rate rules:
- Use the last 4 quarters of data. One quarter is too noisy. More than 4 quarters includes data from a different growth stage
- Segment by source. Blending inbound and outbound close rates produces a number that's wrong for both
- Adjust for seasonality. Q4 close rates are typically 10-20% higher than Q1 (year-end budget flush). Don't apply Q4 rates to Q1 pipeline
- Run rate assumes pipeline composition stays constant. If the mix shifts (more outbound, less inbound), adjust the blended rate
Pipeline Coverage
Pipeline coverage is the ratio of open pipeline to quota. It answers: "Do we have enough pipeline to hit the number?"
Formula:
Pipeline coverage = Total open pipeline / Revenue target (quota)
Coverage benchmarks
| Coverage ratio | What it means | Action |
|---|---|---|
| < 2x | Critical gap. Not enough pipeline to hit target even with favorable close rates | Emergency pipeline generation. Outbound blitz, accelerate ABM, pull in expansion |
| 2-3x | Below target. Achievable only if close rates are above average | Increase pipeline generation. Evaluate deal quality. Inspect stage progression |
| 3-4x | Healthy. Standard target for most B2B SaaS | Maintain generation pace. Focus on conversion |
| 4-5x | Strong. Comfortable buffer | Focus on deal quality and conversion over generation volume |
| > 5x | Over-piped. Pipeline quality may be low or deals are stale | Audit for zombie deals. Clean pipe. Focus on advancing existing deals |
Coverage rules
- Default target: 3.5x. For every $1 of quota, you need $3.50 in pipeline at the start of the quarter. Adjust based on historical close rates
- Measure coverage at the start of the quarter. Mid-quarter coverage is a different metric (in-quarter pipeline generation). Don't confuse them
- Segment coverage by rep, segment, and source. Blended coverage hides individual gaps. One rep at 5x and another at 1.5x averages to 3.25x but the second rep is in trouble
- Coverage is meaningless without quality. 4x coverage of stale, single-threaded, no-champion deals is worse than 2.5x coverage of well-qualified, multi-threaded deals. Qualify the pipeline before celebrating the ratio
Building the Forecast
Weekly forecast process
| Day | Activity | Who | Output |
|---|---|---|---|
| Monday | Reps update CRM: stage, close date, amount, category (commit/best case/pipeline) | AEs | Updated opportunities |
| Tuesday | Manager reviews each rep's pipeline. Challenges categories. Checks for stale deals | Sales managers | Scrubbed pipeline |
| Wednesday | Forecast rollup. Compare weighted pipeline, category-based, and run rate | RevOps + sales leadership | Three-method forecast |
| Wednesday | Gap analysis: where do the three methods diverge? | Sales leadership | Risk areas identified |
| Thursday | Forecast submitted to leadership with confidence range | VP Sales / CRO | Final forecast |
The three-method comparison
When all three methods converge (within 10%), confidence is high. When they diverge, investigate.
| Scenario | What it means | Action |
|---|---|---|
| All three within 10% | High confidence. Forecast is reliable | Submit with tight confidence range |
| Weighted > Category | Reps are conservative. Good deals not yet committed | Inspect the gap. Are reps sandbagging or are deals genuinely uncertain? |
| Category > Weighted | Reps are optimistic. Deals in early stages being committed | Push back on commit criteria. Demand observable evidence |
| Run rate > Both | Historical performance suggests more closes than current deals indicate | May have late-arriving pipeline not yet in CRM. Or historical mix was different |
| Run rate < Both | Current pipeline overestimates what will close based on history | Likely deal quality issue. Inspect stage progression velocity and deal age |
Confidence ranges
Never submit a single number. Submit a range.
| Confidence level | Range | When to use |
|---|---|---|
| High | ± 10% | All three methods converge. Late in quarter with strong commit |
| Medium | ± 15-20% | Two methods converge, one outlier. Mid-quarter with solid pipeline |
| Low | ± 25-30% | Methods diverge significantly. Early in quarter. Pipeline composition shifting |
Example: "We forecast $850K for Q2, confidence range $720K-$980K (medium confidence). Weighted pipeline says $830K, rep category roll-up says $880K, run rate says $810K. The gap between category and run rate suggests 2-3 Best Case deals are at risk."
Forecast Hygiene
Zombie deals
Zombie deals are opportunities that sit in pipeline without progressing. They inflate coverage and corrupt the forecast.
Zombie detection rules:
| Signal | Threshold | Action |
|---|---|---|
| No activity in CRM | > 21 days with no logged activity | Flag for review. If no update after review, move to Omit |
| Stage unchanged | > 2x the average stage duration | Flag for review. Either advance or push/close |
| Close date pushed | Pushed 2+ times | Downgrade category. If pushed 3+ times, move to Omit |
| Single-threaded | Only 1 contact engaged after 30 days | Flag as at-risk. Multi-thread or downgrade probability |
| Champion went dark | No response in 14+ days | Attempt re-engagement. If no response in 7 more days, downgrade |
Hygiene cadence:
- Weekly: reps review their own pipeline for zombies (Monday CRM update)
- Biweekly: managers audit each rep's pipeline for deals reps won't kill
- Monthly: RevOps runs automated zombie detection and flags deals that meet thresholds
- Quarterly: full pipeline scrub. Every deal reviewed. Stale deals closed-lost or pushed to next quarter with justification
Close date discipline
Close dates are the single most gamed field in CRM. Without discipline, every deal has a close date of "this quarter" until it doesn't.
Close date rules:
- Close date must be based on the buyer's timeline, not the seller's. "I need this for Q2" is a seller close date. "Their procurement process takes 4 weeks and they want to go live by July" is a buyer close date
- Pulling a close date in requires evidence. A rep can't move a close date earlier without citing a specific buyer action (procurement engaged, legal review started, verbal timeline confirmed)
- Pushing a close date requires a reason and a new date. "Pushed to next quarter" is not actionable. "Pushed to May 15 because legal review added 3 weeks" is actionable
- Deals with close dates pushed past the current quarter move to "Pipeline" category regardless of prior category
Forecast Accuracy Measurement
How to measure
Forecast accuracy = 1 - |Actual - Forecast| / Actual
Example: Forecast $850K, actual $790K. Accuracy = 1 - |790-850|/790 = 1 - 0.076 = 92.4%.
Accuracy benchmarks
| Accuracy | Rating | Implication |
|---|---|---|
| > 90% | Excellent | Forecast is reliable for planning. Rare to sustain this consistently |
| 80-90% | Good | Standard for well-run B2B SaaS orgs. Acceptable for resource planning |
| 70-80% | Acceptable | Common in earlier-stage companies. Directionally useful but not precise |
| < 70% | Poor | Forecast is not reliable for planning. Diagnose methodology and pipeline hygiene |
Accuracy tracking rules
- Measure quarterly, not monthly. Monthly accuracy is too volatile for B2B sales cycles
- Track accuracy over 4+ quarters to see trends. One accurate quarter doesn't mean the methodology works. Consistency matters
- Separate forecast accuracy from pipeline generation. A team can generate great pipeline and still forecast poorly if deal qualification is weak
- Track accuracy by method. If weighted pipeline is consistently more accurate than rep category calls, weight the model more heavily in the blended forecast
Forecasting by Stage (Company Maturity)
Pre-$1M ARR
- Method: Founder judgment + deal-by-deal review. Too few deals for statistical models
- Coverage target: Irrelevant. Focus on closing what you have
- Cadence: Weekly deal review with the founding team
- Key metric: Number of qualified opportunities, not forecast accuracy
$1-5M ARR
- Method: Category-based (rep call) + simple weighted pipeline
- Coverage target: 3x. Build the habit even if data is thin
- Cadence: Weekly forecast with sales manager
- Key metric: Forecast accuracy quarter-over-quarter. Establish the baseline
$5-20M ARR
- Method: All three methods. Compare and triangulate
- Coverage target: 3-4x. Segment by rep and source
- Cadence: Weekly forecast with formal rollup. Monthly board-level forecast
- Key metric: Forecast accuracy by method. Identify which method works best for your motion
$20M+ ARR
- Method: All three methods + AI-assisted deal scoring + historical regression
- Coverage target: 3.5-4x. Segment by segment, region, and product line
- Cadence: Weekly team forecast. Monthly exec review. Quarterly board forecast
- Key metric: Weighted forecast accuracy, coverage by segment, pipeline velocity by stage
Common Forecast Failures
| Failure mode | Symptom | Root cause | Fix |
|---|---|---|---|
| Sandbagging | Reps consistently under-forecast. Beat the number by 20%+ | No penalty for under-forecasting. Risk-averse culture | Reward accuracy, not just attainment. Track forecast-to-actual ratio per rep |
| Happy ears | Reps over-forecast. Miss the number by 20%+ every quarter | Commit criteria too loose. Reps hear interest as commitment | Tighten commit definition. Require observable evidence. Manager-level challenge |
| Hockey stick | 50%+ of revenue closes in the last 2 weeks of the quarter | Deals not being advanced steadily. Buyers pushed to quarter-end deadlines | Inspect deal velocity by stage. Incentivize early-quarter closes. Pipeline reviews at week 6 |
| Zombie inflation | Pipeline looks healthy (4x coverage) but nothing closes | Dead deals not being removed. Reps hoarding pipeline for optics | Automated zombie detection. Monthly pipeline scrub. Make cleaning pipe a positive, not a punishment |
| Single-source dependency | Forecast relies on 1-2 whale deals | Not enough qualified pipeline at volume | Diversify pipeline sources. Don't commit whale deals until verbal + procurement |
| Close date fiction | Every deal has an end-of-quarter close date | Close dates based on seller hope, not buyer timeline | Require buyer-timeline evidence for close dates. Audit pushed dates weekly |
Anti-Pattern Check
- Using only one forecasting method. Weighted pipeline alone misses rep judgment. Category alone misses data. Run rate alone misses current pipeline composition. Use at least two methods and compare
- Letting reps self-assign probability. Probability is tied to stage, and stage is tied to exit criteria. "I think this is 70%" with no observable evidence corrupts the model
- Never scrubbing pipeline. Zombie deals accumulate every quarter. If the last pipeline scrub was 6 months ago, the forecast is built on fiction. Monthly scrub minimum
- Submitting a single number with no range. Every forecast should have a confidence range. "We'll do $850K" is a guess. "$720K-$980K with medium confidence" is a forecast
- Celebrating coverage without qualifying it. 5x coverage of garbage deals is worse than 2.5x coverage of well-qualified deals. Qualify before counting
- Changing forecast methodology mid-quarter. Pick a method at the start of the quarter and run it. Changing mid-quarter makes the forecast incomparable to prior periods
- Forecasting expansion revenue in the same model as new business. Expansion has fundamentally different close rates, cycle times, and signals. Forecast it separately
- No historical accuracy tracking. If nobody measures how accurate last quarter's forecast was, there's no feedback loop to improve. Track accuracy every quarter, share it openly