CRM Hygiene Playbook
A CRM hygiene playbook for RevOps teams. Covers data quality rules, deduplication, field standardization, and ongoing maintenance processes.
Use this playbook to establish and maintain CRM data quality standards. Bad CRM data breaks everything downstream: reporting is wrong, routing fails, sequences go to the wrong people, and leadership loses trust in the numbers. This playbook covers both the initial cleanup and the ongoing maintenance process that keeps data clean.
CRM Data Quality Assessment
Before fixing anything, measure how bad the problem is. Run these checks against your current CRM data.
Data Completeness Audit
For each object (Contacts, Companies, Opportunities), check what percentage of records have the required fields filled in:
Contacts:
| Field | Required? | % Complete | Target | Status |
|---|---|---|---|---|
| Yes | {{X}}% | > 99% | ||
| First Name | Yes | {{X}}% | > 99% | |
| Last Name | Yes | {{X}}% | > 99% | |
| Job Title | Yes | {{X}}% | > 90% | |
| Phone Number | Recommended | {{X}}% | > 70% | |
| Company (association) | Yes | {{X}}% | > 95% | |
| Lead Source | Yes | {{X}}% | > 95% | |
| Lead Status | Yes | {{X}}% | > 99% | |
| Owner | Yes | {{X}}% | 100% | |
| Last Activity Date | Auto-tracked | {{X}}% | 100% |
Companies:
| Field | Required? | % Complete | Target | Status |
|---|---|---|---|---|
| Company Name | Yes | {{X}}% | 100% | |
| Domain | Yes | {{X}}% | > 95% | |
| Industry | Yes | {{X}}% | > 85% | |
| Employee Count | Yes | {{X}}% | > 80% | |
| Annual Revenue | Recommended | {{X}}% | > 60% | |
| Country | Yes | {{X}}% | > 90% | |
| Owner | Yes | {{X}}% | 100% | |
| ICP Tier | Recommended | {{X}}% | > 70% |
Opportunities:
| Field | Required? | % Complete | Target | Status |
|---|---|---|---|---|
| Opportunity Name | Yes | {{X}}% | 100% | |
| Amount | Yes | {{X}}% | 100% | |
| Close Date | Yes | {{X}}% | 100% | |
| Stage | Yes | {{X}}% | 100% | |
| Contact Association | Yes | {{X}}% | 100% | |
| Company Association | Yes | {{X}}% | 100% | |
| Source / Campaign | Yes | {{X}}% | > 90% | |
| Next Step | Recommended | {{X}}% | > 80% | |
| Competitor | Recommended | {{X}}% | > 60% |
Duplicate Detection
| Object | Total Records | Estimated Duplicates | Duplicate Rate | Target |
|---|---|---|---|---|
| Contacts | {{X}} | {{X}} | {{X}}% | < 3% |
| Companies | {{X}} | {{X}} | {{X}}% | < 2% |
Common duplication causes:
- Same person entered by marketing form and SDR manual entry
- Company name variations (e.g., “Salesforce” vs “Salesforce, Inc.” vs “salesforce.com”)
- Import files with records that already exist
- Integrations creating duplicates on sync errors
Data Accuracy Spot Check
Randomly sample 50 contact records and 50 company records. Check:
- Is the email address valid and deliverable? (Run through a verification tool like NeverBounce or ZeroBounce)
- Does the job title match what shows on LinkedIn?
- Is the person still at the company listed?
- Is the company still in business?
- Is the employee count roughly accurate?
Accuracy rate: {{X}}% — Target: > 85%
Phase 1: Initial Cleanup
Step 1: Deduplication
- Run deduplication tool (Salesforce Duplicate Management, HubSpot dedup, Dedupely, or Ringlead)
- Set merge rules: most recent data wins, except for Lead Source (keep the first)
- Review auto-detected duplicates before merging — spot-check 20 records
- Merge confirmed duplicates
- Document merge rules for ongoing use
Deduplication priority order:
- Companies (dedupe these first — they anchor contact records)
- Contacts (after company dedup, some contact dupes resolve automatically)
- Opportunities (rarely duplicated, but check)
Step 2: Field Standardization
Standardize free-text fields that should be picklists:
| Field | Current State | Standardized Values | Action |
|---|---|---|---|
| Industry | Free text, 200+ variations | 15 standard values + “Other” | Map existing values to standard list, convert to picklist |
| Job Title | Free text | Keep as free text but add a Job Level picklist: C-Level, VP, Director, Manager, IC | Create mapping rules |
| Country | Mix of codes and names | ISO 2-letter codes (US, GB, DE) | Bulk update + validation rule |
| Lead Source | 40+ values, many unused | Consolidate to 10 primary sources | Map and merge, add validation |
| Lead Status | Inconsistent use | Open, Working, Qualified, Unqualified, Nurture, Disqualified | Reset and enforce |
Step 3: Enrich Missing Data
For records missing critical fields (title, company size, industry), use data enrichment tools:
- Run enrichment on all contacts missing Job Title (batch update)
- Run enrichment on all companies missing Employee Count and Industry
- Verify enrichment accuracy on a 50-record sample before applying to full database
- Set up ongoing auto-enrichment for new records entering the CRM
Step 4: Archive Stale Data
- Identify contacts with no activity in the last 12 months AND no open opportunity
- Verify they have not recently visited your website (check marketing automation data)
- Move confirmed stale contacts to an “Archived” status — do not delete
- Identify companies with no associated contacts or opportunities — flag for review
- Remove test records, internal employee records used for testing, and obviously fake entries
Phase 2: Ongoing Maintenance
Daily Automated Checks
Set up these automations in your CRM or workflow tool:
| Check | Trigger | Action |
|---|---|---|
| New lead missing required fields | Lead created with empty Title, Company, or Source | Notify owner via Slack; hold from routing until fields complete |
| Duplicate detected on create | New record matches existing on email or company domain | Flag for review; do not auto-merge |
| Opportunity past close date | Close date < today AND stage is not Closed Won/Lost | Notify AE and manager; require stage update |
| Contact bounced | Email bounce recorded | Update status to “Invalid Email”; remove from active sequences |
| Company data changed | Enrichment detects company size or industry change | Update record; notify account owner if material change |
Weekly Manual Checks (15 minutes)
- Review new leads created this week — spot-check 10 records for completeness
- Check for opportunities stuck in the same stage for 30+ days
- Review and merge any flagged duplicates from the automated detection
- Check integration sync logs for errors (CRM ↔ MAP, CRM ↔ Sequencing tool)
Monthly Data Health Report
| Metric | This Month | Last Month | Target | Trend |
|---|---|---|---|---|
| Overall field completeness (contacts) | {{X}}% | {{X}}% | > 90% | |
| Overall field completeness (companies) | {{X}}% | {{X}}% | > 85% | |
| Duplicate rate (contacts) | {{X}}% | {{X}}% | < 3% | |
| Stale records (no activity 12+ months) | {{X}} | {{X}} | Decreasing | |
| Integration error count | {{X}} | {{X}} | < 10 | |
| Records enriched this month | {{X}} | {{X}} |
Include this health report in the Operational Health section of your GTM metrics dashboard.
Quarterly Deep Clean
- Re-run the full Data Completeness Audit from Phase 1
- Verify email deliverability on contacts used in active sequences (batch verification)
- Audit picklist values for new entries that do not match standards
- Review and update ICP scoring criteria based on recent closed-won data
- Check that all integrations are still syncing correctly
- Update enrichment rules if ICP or target market has changed
CRM Governance Rules
Document these rules and share with every CRM user:
Record Creation Rules
| Rule | Details |
|---|---|
| No manual company creation without checking for existing record first | Search by domain, not name |
| All contacts must be associated with a company | No orphan contacts |
| Lead Source is set at creation and never changed | First source wins |
| Lead Status must be updated within 48 hours of any outreach | No leads stuck in “Open” for more than 2 days |
Field Update Rules
| Rule | Details |
|---|---|
| Opportunity Amount must reflect actual expected value, not aspirational | Updated at every stage change |
| Close Date can only move forward (to a later date) with manager approval logged | Prevents sandbagging |
| Stage changes require a logged activity within 24 hours explaining the change | Accountability for pipeline movement |
| Contact job title updates from enrichment override manual entry | Enrichment data is more current |
Data Ownership
| Object | Primary Owner | Responsible For |
|---|---|---|
| Contact/Lead records | SDR or AE assigned | Keeping activity logs current, updating status |
| Company records | Account owner | Ensuring firmographic data is accurate |
| Opportunity records | AE | Amount, stage, close date, next steps |
| Data quality rules & enforcement | RevOps | Validation rules, automation, reporting |
How to Customize
- For teams using Salesforce, set up validation rules that prevent records from being saved without required fields. This is more effective than relying on people to fill in data after the fact. Also use Salesforce’s built-in Duplicate Management rules rather than third-party tools for the first pass.
- For teams on HubSpot, use required properties on forms and in deal pipelines. HubSpot’s Operations Hub (Professional or Enterprise) includes data quality automation that can fix formatting issues automatically (capitalize names, format phone numbers, standardize country fields).
- For teams with large databases (100K+ contacts), prioritize cleanup by segment. Start with contacts associated with active opportunities and target accounts. Then clean contacts in active nurture sequences. Leave archived/inactive contacts for last. The biggest business impact comes from cleaning the data your team actually uses daily. Connect your cleanup efforts to the broader workflow automation to prevent future data quality issues.
Automate this playbook
GTMStack can turn this manual process into an automated workflow.
See Data EnrichmentRelated playbooks
Cross-Functional Alignment Playbook
A playbook for aligning Sales, Marketing, and Customer Success teams around shared GTM goals and processes.
ChecklistGTM Launch Checklist
A complete GTM launch checklist for new products and features. Covers positioning, sales enablement, marketing campaigns, and post-launch measurement.
ChecklistGTM Tech Stack Audit Checklist
A GTM tech stack audit checklist for RevOps teams. Evaluate tool utilization, integration health, overlap, and cost efficiency across your stack.
Stop copy-pasting. Start automating.
GTMStack turns playbooks into live workflows. Book a demo to see how.