These are the five I see most, roughly in the order they hurt.
1. Quota isn't in the CRM
If quota lives in a spreadsheet, attainment and coverage are always a manual join, and the system can never answer “how far are we from the number?” on its own. Reps keep their own count, finance keeps another, and month end becomes a reconciliation exercise.
Fix: a quota object (or a forecasting quota) with one record per rep per period, owned by sales ops, loaded from the plan. Write down which bookings count toward it before the first dispute, not during it.
2. Forecast category floats free of stage
When reps set forecast category independently of stage, “Commit” means a signed order form to one rep and a good feeling to another. The category becomes a mood rather than a measure, and the roll-up is the sum of eight different definitions.
Fix: default the category from the stage, allow an override, and record that it was overridden. Overrides aren't the problem. Invisible overrides are.
3. New business, expansion and renewal are the same kind of opportunity
Without a type that separates them, renewals inflate pipeline, expansion hides inside new-business win rates, and nothing distinguishes a renewal from an upsell or a lost customer. ARR in the board deck stops matching the CRM, and churn gets rebuilt from invoices every quarter.
Fix: a required opportunity type (New Business, Expansion, Renewal), renewals created as their own opportunities, and contract start and end dates on every won deal. Most retention metrics fall out of those three fields.
4. Amounts and close dates are overwritten with no history
Salesforce shows you today's amount and today's close date. If a deal has slipped three times, you can't see that without history, and you can't measure forecast accuracy, because the call you made in week one has been overwritten.
Fix: field history tracking on stage, amount, close date and forecast category at minimum, and ideally a nightly snapshot of open opportunities into a warehouse. Slippage, forecast accuracy and pipeline trend all depend on it.
5. Stages have no dates
If you only know the current stage, conversion rates are a snapshot of whatever is sitting in each stage today, and velocity can't be measured at all. Skipped stages make it worse: a deal that jumps from Qualification to Closed Won disappears from every stage-to-stage rate.
Fix: a date-stamp field per stage, set automatically on entry (and kept when a deal moves back), plus a rule for how skipped stages are counted. This is the cheapest of the five fixes and makes the funnel, cycle-time and stage win-rate analysis possible.
The pattern
Each of these mistakes is invisible on a dashboard and obvious in a data model review. That's why I start every reporting project with the objects and fields and the written definitions, and build the dashboard last. It's the least interesting part to demo and the part that decides whether anyone trusts the number.
The metric layer behind the live demo is built on exactly these five fixes.
Written by Wolfram Nothnagel. If you're working on this problem, I'm glad to talk: email or LinkedIn.