Your Salesforce pipeline shows $400K. Your actual closeable pipeline is probably closer to $180K.
That difference is not a forecasting error. It is a structural problem that most SaaS teams at the 20 to 50 person stage have — and most do not catch it until a board meeting goes badly.
There are three specific patterns that create what we call phantom pipeline. They are not exotic edge cases. They show up in almost every SaaS org we look at between 20 and 50 people. Here is what they are.
What your dashboard shows
$400K
Pipeline total across all open opportunities
What you are actually working with
$180K
Active, contactable, closeable this quarter
1. Dead deals that nobody closed
There are opportunities in your Salesforce right now that have not moved in 90 days. They are still sitting at Stage 3 or Stage 4, still counting toward the pipeline total, and nobody is touching them.
Reps do not close them because closing a deal as lost hurts their quota attainment number. Managers do not push because the conversation is uncomfortable. So the deal sits there, neither alive nor dead, just inflating the number.
In practice, this means your pipeline report is showing revenue from opportunities that have a near-zero probability of closing this quarter. The reps know it. The managers suspect it. The dashboard does not.
A deal with no activity in 30 days and no reply in 14 days is not in your pipeline. It is in your wish list. Those are different things.
2. Renewals that are not tracked at all
At a SaaS company, renewal revenue is often more predictable than new business — but only if someone is actually tracking it. Most orgs at this stage have no renewal opportunity objects, no renewal stage, and no alert when a contract is 60 days out.
What happens instead: the CS team finds out it is renewal time when the client asks why they were auto-charged. Or worse, the client reaches out to say they want to cancel, and that is the first time anyone internally knew the renewal was approaching.
That is not a process. That is luck. And it means that a significant portion of your actual annual recurring revenue — the revenue that should be the most predictable number in your business — is completely invisible in the tool you use to run sales.
When renewal ARR is not in the pipeline, two things happen. Forecasts are wrong. And at-risk accounts are not identified in time to do anything about them.
3. Product data that never reaches the CRM
Your product knows who is logging in every day. It knows who activated three core features last week and who has not touched the app in six weeks. That information exists somewhere in your stack — in Mixpanel, Amplitude, Pendo, or whatever analytics tool you use.
Your CRM has no idea.
Consequently, reps spend time calling accounts that are completely disengaged, because those accounts have an open opportunity at Stage 2. Meanwhile, accounts that are thriving, using the product heavily, and expanding their team are getting no expansion outreach because nothing in Salesforce flags them as a priority.
The most valuable signal in a SaaS business — actual product behavior — is entirely absent from the tool where selling happens. So the pipeline that shows up in your forecast is built on CRM activity and deal stages, not on what your customers are actually doing.
Dead deals nobody closed
Opportunities stalled for 90 days are still in the pipeline because closing them hurts quota. Reps avoid it. Managers avoid it. The dashboard keeps counting them.
No activity in 30+ days = not in your pipelineRenewals with no opportunity object
No renewal stage, no contract expiry alert, no tracking. The CS team finds out it is renewal time when the client asks about the auto-charge. That is not a process.
No renewal object = invisible ARR riskProduct data that never reaches the CRM
Who logs in daily, who activated core features, who has not touched the app in six weeks — all of this exists in your analytics stack and none of it is in Salesforce.
Product behavior invisible to reps = wrong prioritiesThe question worth asking today
Pull up your pipeline right now. Then apply three filters:
Remove every deal with no activity logged in the last 30 days. Remove every deal where no contact has responded in the last 14 days. Remove every account expiring in the next 90 days that does not have a renewal opportunity attached.
What number are you left with?
For most SaaS teams at this stage, the answer is significantly lower than what the dashboard shows. And knowing the real number — even if it is uncomfortable — is always better than being optimistic about the wrong one. You cannot fix a problem you cannot see.
The pipeline reality check
Pull up your pipeline right now and apply these three filters
Remove every deal with no activity logged in the last 30 days
Remove every deal where no contact has responded in the last 14 days
Remove every account expiring in 90 days with no renewal opportunity attached
What number are you left with?
For most SaaS teams at 20–50 people, the answer is significantly lower than the dashboard. Knowing the real number is always better than being optimistic about the wrong one.
Phantom pipeline is not a Salesforce problem. It is a process problem that Salesforce happens to be hiding very effectively.
These three patterns show up in almost every SaaS org we talk to between 20 and 50 people. If you want to stress-test your pipeline and figure out what the real number is, reach out through truesolv.com. Follow us on LinkedIn for honest takes on SaaS revenue operations every week.



