Pulse - Value Added
FRACTIONAL CRO · MARYLAND-BASED, NATIONWIDE · $0→$200M

Kory White

RevOps & Revenue Leadership

Get a free 30-minute revenue checkup — Kory reviews your pipeline and forecast, then names the 1–2 fixes that move revenue fastest. 25 yrs scaling teams $0→$200M.

Free 30-min revenue checkup →
Hire a Fractional CROHow We Help?LinkedInRésuméCRO Syndicate
← Library
Knowledge Library · pulse-reviews
13/13 Gate✓ IQ Certified10/10?

How do I build a real bottom-up forecast in a 50-rep org?

KnowledgeHow do I build a real bottom-up forecast in a 50-rep org?
📖 3,870 words🗓️ Published Jul 20, 2026
Direct Answer

To build a real bottom-up forecast in a 50-rep org, do not ask AEs for a number. Ask them for facts about each deal — name, company, amount, stage, close date, next step, and last activity — then build the forecast yourself by applying probabilities you derived from your own historical close rates. A true bottom-up forecast is the sum of every open opportunity weighted by the stage-conversion rate that stage has actually produced in your business over the last 12 months, reconciled weekly against your top-down board target and presented as three numbers (conservative / realistic / upside) rather than one.

The whole thing lives in your CRM, not in a manager's gut. Run it on a weekly Friday cadence, not monthly, because a month is long enough for a quarter to quietly die before you notice. The seven-step loop is: (1) export a clean one-row-per-deal report of all open opportunities; (2) validate the data (amount set, stage filled, next step present, last activity under ~21 days); (3) assign each stage a probability from *your* history, dollar-weighted; (4) segment by rep, deal age, and size so big deals get individual review; (5) compute conservative, realistic, and upside totals; (6) reconcile the realistic number against the top-down target and treat any gap over ~15% as pipeline work you owe this quarter; (7) flag every large, over-age deal for a one-on-one that ends in "update it or close it."

If you have just changed your sales process, entered a new segment, moved pricing materially, or churned a big chunk of your sales team, your historical stage rates are no longer predictive — pause the stage-weighted model and run a run-rate forecast off booked ARR and new-logo velocity for a quarter while you rebuild the baseline. That caveat is the difference between a forecast that's honest and one that's confidently wrong. Everything below is the detailed version of these steps, with the trade-offs, the numbers to watch, and the failure modes that sink most first attempts.

Why Your Reps Can't Be the Forecast

The single most common mistake in a growing org is treating the rep's stated number as the forecast. It isn't data — it's a blend of optimism, memory, and whatever they think you want to hear on a Friday call. This isn't a character flaw. Salespeople are selected and trained to believe every deal will close; that belief is what gets them through a hard quarter. But the same optimism that makes someone a good closer makes them a poor statistician about their own book.

Two structural biases show up in nearly every AE-submitted forecast. The first is recency and salience bias: the deal they talked to yesterday feels closer than the one that's been quietly stalled for three weeks, so it gets weighted higher regardless of the actual evidence. The second is the anchor of the ask — if you asked for a number last week and they missed, they'll shade this week's number to make the trend look better. Neither bias is correctable by asking harder. You correct it by not asking for the number at all.

The alternative is to collect *facts* and do the arithmetic yourself. A fact is checkable: "Acme, $85K, Negotiation stage, close date March 14, next step is a redlined MSA back from their legal team, last activity two days ago." That either matches reality or it doesn't, and you can spot-check it against a call recording or an email thread. An opinion ("I feel good about Acme") is not checkable and should never enter a model. Your job as the RevOps owner is to be the layer that turns facts into a probability-weighted number, and to keep that layer independent of the people whose comp depends on the answer.

There's a second-order benefit that shows up after a few weeks. Once reps understand that you pull and grade the data yourself every Friday — that the forecast is built from the CRM, not from what they say on the call — the incentive to sandbag or inflate on the call disappears, because the call isn't where the number is decided. The CRM becomes the source of truth, and the behavior that improves the forecast (logging real next steps, keeping activity current, closing dead deals) is exactly the behavior that improves the actual sales motion. The forecast stops being a reporting ritual and starts being a hygiene engine.

The caution here — and it matters — is that the moment reps learn *which fields you grade*, some will mechanically tick those boxes without doing the underlying work. A "next step" field gets filled with a placeholder; an activity gets logged that was really just a no-reply email. This is Goodhart's Law: a measure that becomes a target stops being a good measure. The counter is a small, consistent audit — pull five deals a week at random and check the logged next step against the last real customer interaction. If the file says "sent proposal, awaiting signature" and the last actual touch was a one-line "just checking in" email with no reply, that's not a forecasting error, it's bad data, and you treat the deal as unqualified until proven otherwise.

How do I build a real bottom-up forecast in a 50-rep org — figure 1

The Weekly Build: Seven Steps From CRM Export to Board Number

Here is the operational loop. In a 50-rep org this takes about two hours by hand the first few times and drops to 30–45 minutes once you've templated the reports; a fully automated version (scheduled CRM report piped into a BI tool) runs in the background and you just review the output.

Step 1 — Data pull. Export one row per open deal with these columns: deal name, company, amount, stage, close date, next step, owner, last activity date, and the rep's own confidence if you capture it. In Salesforce this is a single Opportunities report filtered to IsClosed = FALSE with those columns. In HubSpot it's a Deals export with the same fields. If you cannot produce this view in a couple of clicks, stop and fix that first — every downstream step assumes clean, one-click access to deal-level data, and a forecast built on a report you can't reproduce next week is theater.

Step 2 — Clean and validate. Before you weight anything, check four things on every row:

Step 3 — Assign stage probability from your own history (detailed in the next section). Do not use rep confidence. Do not use generic internet percentages as anything but a placeholder.

Step 4 — Segment. Build a pivot that shows, per rep: count of deals at each stage, how many are over the age threshold, total dollars by stage, and a separate line for every deal over a size threshold you care about (say $50K). Large deals do not get aggregate math — they get named, individual review, because one $500K deal slipping moves your whole number more than fifty $10K deals combined. As a sanity check on hygiene, a 50-rep org typically carries somewhere in the mid-hundreds to under a thousand open opportunities depending on ACV and cycle length; a count wildly outside your normal band usually means dead deals aren't being closed or new pipeline isn't being logged.

How do I build a real bottom-up forecast in a 50-rep org — figure 2

Step 5 — Compute three forecasts.

ForecastWhat it includesFormula
ConservativeOnly late-stage, high-probability deals(Late-stage $ × its rate) + (Commit $ × its rate)
RealisticMid-stage and later(Mid $ × rate) + (Late $ × rate) + (Commit $ × rate)
UpsideAll open deals at stage probabilityΣ (deal amount × that deal's stage rate)

Step 6 — Reconcile against top-down (detailed later). The gap between your realistic number and the board target *is* your pipeline-generation task for the quarter.

Step 7 — Flag red deals. Every deal over your size threshold that is over-age for its stage gets pulled into a one-on-one. The question is specific: "This is 40 days old in a stage that averages 21. What's changed since day 20? Is it still real?" The deal gets updated with new evidence or it gets closed. It does not stay in the forecast on hope.

Run this every Friday. The consistency is the point: a forecast you run once is a snapshot; a forecast you run weekly is a trend line, and trend lines are what let you catch a quarter going sideways in week four instead of week eleven.

Setting Stage Probabilities From Your Own History

This is the step people get wrong, and it's the step that determines whether the whole exercise produces a real number or a comforting fiction. The temptation is to grab stage probabilities from a blog post — "proposal stage is 40%" — and apply them. Don't. Those numbers describe someone else's product, price point, buyer, and sales motion. Yours will be different, sometimes by a lot.

The correct method is to measure your own conversion. Pull the last 12 months of opportunities (four quarters smooths out seasonal noise) and, for each stage, answer one question: *of the deals that ever entered this stage, what fraction eventually closed-won?* That fraction is your stage probability. A deal that entered "Proposal" and later closed counts as a win for Proposal even if it passed through Negotiation on the way — you're measuring the historical outcome of reaching a stage, not the outcome of currently sitting in it.

Two refinements matter enormously:

Weight by dollars, not deal count. A 30% deal-count win rate in a given stage can hide a 15% dollar-weighted rate if your large deals slip more often than your small ones — which is common, because big deals have more stakeholders, more procurement friction, and more ways to die. If you forecast on the deal-count rate, you'll systematically over-forecast, because your biggest deals (the ones that move the number) are exactly the ones the average is lying about. Compute the rate as *dollars closed from a stage ÷ dollars that entered that stage.*

Capture cycle time per stage too. Alongside the win rate, record how long deals typically sit in each stage. This gives you the age thresholds you use in Step 2 and Step 7. If your Proposal stage averages three weeks, a proposal-stage deal sitting untouched at five weeks is measurably off-pattern and belongs in the flag pile.

How do I build a real bottom-up forecast in a 50-rep org — figure 4

As a *starting scaffold only* — to be replaced the moment you have your own data — a typical early-to-late funnel runs from single-digit or low-double-digit probability at first qualification, up through the twenties and thirties in the middle, into the fifties and sixties in negotiation, and into the high eighties or nineties once you have a signed order or contract in hand. But treat those as illustrative shape, not your numbers. The cap rule is real and worth enforcing regardless of source: never let any open deal sit above ~90% until it is closed-won. Verbal commits and "done" deals do slip and die in the final week — procurement freezes, a champion leaves, a budget gets pulled — and a model that treats a verbal as 100% will overstate your commit number and burn your credibility the one time it matters.

Re-derive these rates at least quarterly. They drift. A pricing change, a new competitor, a shift in your lead mix, or a change in who's carrying the quota all move stage conversion, and a probability table you set last year is a probability table that's slowly becoming fiction.

The Confidence-Gap Review and the Three-Number Forecast

Once you have a weighted pipeline built from stage probabilities, you have a powerful diagnostic available for free: the confidence gap. For each rep, compare two numbers — the weighted pipeline value you computed, and the personal forecast they give you in the one-on-one. The difference tells you exactly where to spend your coaching time.

The confidence gap is most useful in aggregate: a disproportionate share of forecast misses in most orgs traces back to a small number of reps carrying the largest positive gaps. Find those reps, deflate their pipeline with stage probability before it rolls up, and you've removed most of the org-level forecast error in one move.

How do I build a real bottom-up forecast in a 50-rep org — figure 5

The output you present to leadership should never be a single number. Present three, and use precise language:

The framing sentence buys you more credibility than any spreadsheet: *"Commit is $2.4M, realistic is $3.1M, upside is $4.2M. Realistic is the number we hit if this quarter's mid-stage cohort converts like last quarter's; upside assumes both of our large stage-four deals close."* That sentence tells leadership exactly what has to be true for each number, which is the whole job of a forecast. Building it in the CRM is simple: add a "Forecast Category" field (Commit / Upside / Pipeline), define a hard entry test for Commit ("signed doc, authorized buyer, confirmed date — yes to all three"), and group your weekly report by it.

Reconciling Bottom-Up With the Top-Down Board Target, and When Bottom-Up Fails

A bottom-up forecast that never meets the top-down number is only half a forecast. Your CFO or board carries a top-down target — usually the annual ARR goal divided across quarters, adjusted for seasonality. Your realistic bottom-up number and that top-down target need to be reconciled every week, because the *gap between them is the most actionable number you produce.*

Read the gap directionally:

How do I build a real bottom-up forecast in a 50-rep org — figure 6

The failure to reconcile is one of the most common reasons revenue leaders miss their number: the bottom-up and top-down views are maintained by different people, in different tools, and never forced to agree until the quarter closes and the gap becomes a miss. Reconciling weekly turns that end-of-quarter surprise into a mid-quarter to-do list.

Now the bear case — when bottom-up forecasting is the wrong tool. The entire stage-weighted method rests on two assumptions: that your stage definitions are stable, and that your historical close rates are still predictive. Break either and the forecast becomes confidently wrong, which is worse than obviously uncertain. Specifically, distrust your historical rates if in the last six months you have:

In any of those situations, run a run-rate forecast for a quarter instead: project off booked ARR plus your recent new-logo and expansion velocity, and rebuild the stage baseline in parallel using only post-change deals. Two other structural cases: if your sales cycles are very short (PLG or transactional SMB, cycles under a couple of weeks), stage-weighted forecasting adds noise rather than signal — use a cohort run-rate model keyed to signups or trials instead. And never let leadership adopt your conservative/commit number as the new *target*; the instant the floor becomes the goal, reps learn to hide deals from you to keep the floor low, and your data quality collapses. The commit number and the stretch target must stay separate, owned by different conversations.

FAQ

Why can't I just ask my AEs for their forecast numbers?

Because AE-submitted numbers blend optimism, recency bias, and the pressure of last week's ask — they're opinions, not data. Salespeople are selected for the belief that every deal closes, which makes them poor statisticians about their own book. Collect checkable facts per deal (amount, stage, next step, last activity) and apply your own historical stage probabilities. The rep's number is still useful — but as a *diagnostic* against your weighted pipeline (the confidence gap), not as the forecast itself.

What is the minimum data I need from each deal?

Deal name, company, amount, stage, close date, next step, owner, and last activity date. That's enough to weight and validate. If your CRM can't export those fields in a couple of clicks, fix that before anything else — a forecast built on a report you can't cheaply reproduce every week won't survive contact with a busy quarter.

How often should I run a bottom-up forecast?

Weekly, on a fixed day. Monthly is too slow — a month is long enough for a quarter to quietly derail before the data shows it. Weekly runs turn the forecast from a one-off snapshot into a trend line, which is what lets you catch a slipping quarter in week four instead of at the close. In a 50-rep org the weekly build is roughly 30 minutes to two hours depending on how much you've automated.

How do I set stage probabilities without guessing?

Measure your own history. Pull the last 12 months of opportunities and, per stage, compute the fraction of deals that entered that stage and eventually closed-won — weighted by dollars, not deal count, because big deals slip more and skew the count-based rate. Generic online percentages are fine as a temporary placeholder but describe someone else's business; replace them with your numbers and re-derive at least quarterly, since pricing, competition, and team changes all move the rates.

What should I do with $0-amount deals, blank stages, or stale deals?

Exclude and route them back for correction before they touch the forecast. A zero-amount or blank-stage deal is unqualified data; a deal untouched past your activity threshold (commonly ~21 days) is a deal you're forecasting on hope. Keep stale, large deals visible on an "at risk" line and out of your conservative and realistic totals until the rep produces fresh evidence that the deal is real.

When is bottom-up forecasting the wrong approach entirely?

When your historical stage rates are no longer predictive — right after a process change, a new-segment entry, a pricing move over ~10%, or heavy sales-team turnover — or when cycles are so short (PLG/SMB under a couple of weeks) that stage-weighting adds noise. In those cases run a run-rate forecast off booked ARR and recent new-logo velocity, or a cohort model, for a quarter while you rebuild the stage baseline from post-change deals only.

Sources

flowchart TD A[Export open deals] --> B[Validate amount, stage, next step, activity] B --> C[Assign stage probability from own history] C --> D[Segment by rep, age, deal size] D --> E{Deal over age target for its stage?} E -->|Yes| F["Flag for 1:1 review"] E -->|No| G[Keep in forecast] F --> H[Update with evidence or close-lost] G --> I["Compute conservative / realistic / upside"] H --> I I --> J[Reconcile vs top-down target] J --> K[Present three numbers + gap to leadership] ![How do I build a real bottom-up forecast in a 50-rep org — figure 3](/assets/qa/q49-b3.jpg)
flowchart TD A[Weighted pipeline per rep] --> B[Compare to rep's stated forecast] B --> C{Size of confidence gap} C -->|Large positive| D["Overconfident: deal-by-deal justification"] C -->|Normal band| E["Variance: light coaching"] C -->|Flat or negative| F["Sandbag or zombies: activity filter"] D --> G[Adjusted weighted number] E --> G F --> G G --> H["Conservative / Commit"] G --> I[Realistic] G --> J[Upside] H --> K[Present three numbers with the 'what must be true' sentence] I --> K J --> K

Related on PULSE

Download:
Was this helpful?  
Sources cited
clari.comhttps://www.clari.com/gartner.comhttps://www.gartner.com/en/documents/sales-forecastingbvp.comhttps://www.bvp.com/atlas/state-of-the-cloud-2026joinpavilion.comhttps://www.joinpavilion.com/compensation-reportbridgegroupinc.comhttps://www.bridgegroupinc.com/blog/sales-development-reportgartner.comhttps://www.gartner.com/en/sales/research
⌬ Apply this in PULSE
Gross Profit CalculatorModel margin per deal, per rep, per territory