GTMStack
All playbooks
Playbook RevOps Manager

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:

FieldRequired?% CompleteTargetStatus
EmailYes{{X}}%> 99%
First NameYes{{X}}%> 99%
Last NameYes{{X}}%> 99%
Job TitleYes{{X}}%> 90%
Phone NumberRecommended{{X}}%> 70%
Company (association)Yes{{X}}%> 95%
Lead SourceYes{{X}}%> 95%
Lead StatusYes{{X}}%> 99%
OwnerYes{{X}}%100%
Last Activity DateAuto-tracked{{X}}%100%

Companies:

FieldRequired?% CompleteTargetStatus
Company NameYes{{X}}%100%
DomainYes{{X}}%> 95%
IndustryYes{{X}}%> 85%
Employee CountYes{{X}}%> 80%
Annual RevenueRecommended{{X}}%> 60%
CountryYes{{X}}%> 90%
OwnerYes{{X}}%100%
ICP TierRecommended{{X}}%> 70%

Opportunities:

FieldRequired?% CompleteTargetStatus
Opportunity NameYes{{X}}%100%
AmountYes{{X}}%100%
Close DateYes{{X}}%100%
StageYes{{X}}%100%
Contact AssociationYes{{X}}%100%
Company AssociationYes{{X}}%100%
Source / CampaignYes{{X}}%> 90%
Next StepRecommended{{X}}%> 80%
CompetitorRecommended{{X}}%> 60%

Duplicate Detection

ObjectTotal RecordsEstimated DuplicatesDuplicate RateTarget
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:

  1. Companies (dedupe these first — they anchor contact records)
  2. Contacts (after company dedup, some contact dupes resolve automatically)
  3. Opportunities (rarely duplicated, but check)

Step 2: Field Standardization

Standardize free-text fields that should be picklists:

FieldCurrent StateStandardized ValuesAction
IndustryFree text, 200+ variations15 standard values + “Other”Map existing values to standard list, convert to picklist
Job TitleFree textKeep as free text but add a Job Level picklist: C-Level, VP, Director, Manager, ICCreate mapping rules
CountryMix of codes and namesISO 2-letter codes (US, GB, DE)Bulk update + validation rule
Lead Source40+ values, many unusedConsolidate to 10 primary sourcesMap and merge, add validation
Lead StatusInconsistent useOpen, Working, Qualified, Unqualified, Nurture, DisqualifiedReset 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:

CheckTriggerAction
New lead missing required fieldsLead created with empty Title, Company, or SourceNotify owner via Slack; hold from routing until fields complete
Duplicate detected on createNew record matches existing on email or company domainFlag for review; do not auto-merge
Opportunity past close dateClose date < today AND stage is not Closed Won/LostNotify AE and manager; require stage update
Contact bouncedEmail bounce recordedUpdate status to “Invalid Email”; remove from active sequences
Company data changedEnrichment detects company size or industry changeUpdate 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

MetricThis MonthLast MonthTargetTrend
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

RuleDetails
No manual company creation without checking for existing record firstSearch by domain, not name
All contacts must be associated with a companyNo orphan contacts
Lead Source is set at creation and never changedFirst source wins
Lead Status must be updated within 48 hours of any outreachNo leads stuck in “Open” for more than 2 days

Field Update Rules

RuleDetails
Opportunity Amount must reflect actual expected value, not aspirationalUpdated at every stage change
Close Date can only move forward (to a later date) with manager approval loggedPrevents sandbagging
Stage changes require a logged activity within 24 hours explaining the changeAccountability for pipeline movement
Contact job title updates from enrichment override manual entryEnrichment data is more current

Data Ownership

ObjectPrimary OwnerResponsible For
Contact/Lead recordsSDR or AE assignedKeeping activity logs current, updating status
Company recordsAccount ownerEnsuring firmographic data is accurate
Opportunity recordsAEAmount, stage, close date, next steps
Data quality rules & enforcementRevOpsValidation 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 Enrichment

Stop copy-pasting. Start automating.

GTMStack turns playbooks into live workflows. Book a demo to see how.

Get GTM insights delivered weekly

Join operators who get actionable playbooks, benchmarks, and product updates every week.