You've invested in intent signals. You're tracking hiring events, funding rounds, tech-stack changes. Signals are firing. Routing rules are set.
But your reps keep getting wrong-company alerts. Sequences are going to the wrong contacts. Enrichment is filling fields that already have data — the wrong data.
The problem isn't your signal provider. It's your CRM.
The Hidden Cost of Bad CRM Data
Bad CRM data costs B2B sales teams an average of 12–15% of their potential pipeline — not just from wasted rep time, but from the cascading effect of bad data on every downstream system. Signal routing, lead scoring, enrichment, sequence enrollment — all of it depends on the quality of the underlying records.
Common symptoms:
- Duplicate accounts cause the same signal to fire multiple times, or route to the wrong owner
- Stale contacts mean signals about the right company go to someone who left 18 months ago
- Missing firmographics prevent accurate ICP scoring — companies without headcount or industry sit in a "maybe" bucket forever
- Wrong domain prevents enrichment from matching correctly, so a 200-person company sits with no tech data
The Five Most Damaging CRM Problems
1. Duplicate Accounts
A company with three accounts in your CRM is a company your signal routing system doesn't understand. Whichever account "wins" the dedup might not be the one with the right owner, the right stage, or the right contacts.
Fix: Run a dedup pass based on domain, not just name. acme.com, Acme Inc, and Acme International are the same company. Merge and re-assign ownership explicitly.
2. Orphaned Contacts
Contacts without a parent account — or contacts attached to a stale account — are invisible to account-level signal routing. When a signal fires for Acme Inc, your orphaned VP Sales @ Acme contact never gets enrolled.
Fix: Enrich every contact with their current employer domain, then re-match to account. Any contact whose company domain doesn't match their account's domain is a hygiene risk.
3. Title Staleness
Contact titles change. Someone who was "Sales Manager" when you first captured them may now be "VP Revenue" — or may have left the company entirely. A signal triggered by a VP-level hire at a company where your contact is already VP is noise, not signal.
Fix: Enrich contact titles on a rolling basis — at minimum, quarterly. Flag contacts with no activity in 12+ months for re-verification before sequences run.
4. Missing Domain Field
Enrichment, signal matching, and dedup all rely on the company domain as the primary key. An account without a domain can't be enriched, can't be matched, and can't be deduped.
Fix: Make domain a required field for all new accounts. For existing accounts, run a bulk enrichment pass to fill gaps — most enrichment providers can infer domain from company name + location.
5. Ownership Gaps
Accounts with no owner don't get their signals routed. Or worse, they get routed to a default "catch-all" owner who ignores them. Either way, real intent events die in a queue.
Fix: Define ownership rules and enforce them in the CRM. Any account that matches your ICP but has no owner should be automatically assigned based on territory, segment, or round-robin.
A Practical Hygiene Sprint
Don't try to fix everything at once. Run a two-week hygiene sprint with clear deliverables:
Week 1 — Accounts:
- Dedup by domain
- Fill missing domain fields via enrichment
- Re-assign orphaned accounts
Week 2 — Contacts:
- Re-match contacts to accounts by domain
- Enrich stale titles (> 12 months since update)
- Remove or archive contacts at companies that have churned, been acquired, or are outside ICP
Ongoing:
- Set enrichment to run on create for all new records
- Quarterly rolling enrichment for contacts active in sequences
- Alert on accounts with no owner that match ICP
Measuring Hygiene Health
Track these metrics monthly:
- % accounts with domain populated (target: 95%+)
- % contacts with title updated < 12 months (target: 80%+)
- Duplicate account rate (target: < 2%)
- Orphaned contact rate (target: < 5%)
- % ICP accounts with an owner (target: 100%)
Signal accuracy is only as good as the data it runs on. Clean your CRM, and your signals start working. Don't, and you're paying for intent data that routes to ghosts.