Why missing loss reasons is the most preventable analytics failure
Loss reasons are the highest-leverage data point in your CRM that nobody enforces. The patterns that tell you why deals die — competitor wins, pricing pushback, no budget, internal champion lost, timing wrong — only become visible at scale when you can group lost deals by reason. Without that, every lost deal is anecdotal. With it, you start to see patterns.
A few things you can only learn from loss-reason data:
- Which competitor is winning the deals you're losing. Maybe you're losing 40% to a single competitor. That's a sales-enablement problem you can solve.
- Which products have a pricing problem. If 60% of losses on Product X are "price too high," you have a packaging issue — not a sales execution one.
- Which segments aren't ready to buy. "No budget" losses concentrated in startups under $1M ARR tells you that segment isn't qualified-by-default.
When loss reasons aren't filled in, none of those patterns surface. Sales-ops can't analyze. Product can't make pricing decisions. Marketing can't adjust messaging. Everyone is operating on hunches.
What three filter conditions actually catch
Three filter conditions:
- Deal stage is Closed Lost.
- Closed Lost reason is unknown.
- Closed-lost timestamp is recent enough that the rep can still remember why (typically last 90 days).
Deals lost a year ago with no reason are hopeless to recover the data on. The 90-day window catches deals where the rep can still answer "why?" with reasonable accuracy.
Why required fields don't actually solve the data-quality problem
Required-property enforcement on Closed Lost has a subtle failure mode: reps just pick the first option in the dropdown to bypass the requirement. The data exists, but it's garbage.
To make loss reasons useful, you need three things:
A short, mutually exclusive list of reasons. 30 options means reps pick randomly. 5-7 well-defined options means the data has signal. Standard set: Competitor, Price, Budget, Timing, Lost Champion, No Decision Made, Product Gap. Don't go beyond 10.
A required notes field alongside the reason. Reason is the category. Notes is the texture — which competitor, which feature, what the buyer actually said. Without notes, you know "30% lost to Competitor" but not which competitor.
A periodic audit of how reasons are being used. Reps drift toward whatever option is least uncomfortable. "No Decision Made" gets over-used because it's neutral. "Lost Champion" gets under-used because it sounds like the rep failed. Sales-ops sampling 20 lost deals per month and re-asking the rep "is this really the reason?" is the only way to keep the data honest.
The friction never goes away. Even with required fields, the data quality depends on how seriously the team treats the conversation about why deals die. The rule (missing reasons) catches the obvious cases. The deeper issue (low-quality reasons) needs human review.
The manual HubSpot recipe
Three filters and a recovery conversation. The view is straightforward; sustaining loss-reason data quality is ongoing sales-ops work.
- Open Sales → Deals → Create viewNavigate to Sales → Deals. Click 'Create view' in the top right.
- Add filter: Deal stage is Closed LostFilter by Deal properties →
Deal stage→ 'is any of' → 'Closed Lost'. - Add filter: Closed Lost reason is unknownAND group →
Closed Lost reason→ 'is unknown'. Standard property; if your portal uses a custom name (loss_reason, etc.), substitute. - Add filter: Closed-lost date is in the last 90 daysAND group →
Closed-lost date→ 'is in the last' → 90 days. Recovery window — older losses are usually unrecoverable. - Add columns: Deal owner, Closed-lost date, AmountOwner is who you ask. Amount tells you which losses are worth the recovery effort.
- Save as 'Lost deals — no reason'Pin to your sales-ops dashboard. Re-ask each rep on their losses; the conversation matters more than the data entry.
What Bloated does instead
Missing AND low-quality loss reasons, with rep over-use patterns surfaced.
Bloated catches both missing reasons AND over-concentrated reason patterns — when a single rep is using 'No Decision Made' 70% of the time, the data is worse than missing. Sales-ops gets the conversation queue, not just the data hole. Pair with the suggested action: re-ask the rep, escalate to manager, or accept (some losses really are 'No Decision Made').
closed_lost_reason · HubSpot deal property