Data Hygiene for B2B Databases: 12 Rules, 7 Steps and a Refresh Schedule

Publish date: Oct 23, 2026
24% of CRM admins said less than half of their data is accurate and complete, and 53% of admins who said they struggle with CRM data quality named duplicate records among the issues they face, in a Validity survey of 631 CRM administration workers in the US, UK and Australia.
Data hygiene is the routine work that keeps a database accurate, complete, unique and current: rules that stop bad records at entry, checks that find duplicates and stale contacts, and a schedule for fixing, re-verifying and retiring them. It never ends, because the people in the database keep moving: in one quarter, 8.0% of a stable panel of 10,000 US contacts in Spona's data changed title or employer.
This b2b data hygiene guide is for RevOps, sales ops and founders running a CRM of 2,000 to 200,000 records. It gives you 12 rules with an owner and a schedule each, a seven-step process with the HubSpot and Salesforce settings behind it, and a Google Sheet to log every run.
Get thousands of leads in 4 minutes.
Stop stitching tools together.
Start with verified sales data, delivered in minutes.
No contracts · No setup · No onboarding
Data hygiene checklist: 12 rules, an owner and a schedule for each
If you have one hour, start here. The schedule column has three sources: Spona's confirmed cadence, the vendor guidance named in step 5, and our recommendation where no source sets a number.
| # | Rule | Applies to | How to enforce | Owner | How often |
| 1 | One record per person and per company | Contacts by email, companies by root domain | Duplicate rules or automatic deduplication, plus a duplicate report | CRM admin | At entry; report weekly |
| 2 | Required fields at creation | Owner, source, country, lifecycle stage | Required fields on forms and imports | CRM admin | At entry |
| 3 | One format per field | Phone with country code, ISO country code, bare domain, title case names | Validation rules and import mapping | CRM admin | At entry |
| 4 | Picklists instead of free text | Country, industry, seniority, employee band, lead source | Dropdown or picklist fields | CRM admin | Reviewed quarterly |
| 5 | A source and a last verified date on every contact | All contacts | Provenance fields written by imports and integrations | RevOps | At entry and at each check |
| 6 | Re-verify before a send if the last check is over 30 days old | Every address in a send | Filter the send list on last verified date | Marketing ops | Before each send |
| 7 | Refresh high-activity contacts every 30 days and the rest every 90 | All contacts | Saved lists by last verified date | RevOps | Every 30 and 90 days |
| 8 | Catch-all addresses in their own segment; hard bounces suppressed at once | Email status | Verification status field and a suppression list | Marketing ops | Each send |
| 9 | Hard bounces under 2% on a freshly checked list (Spona's operating target); investigate above it | Each send | Status flag in the cadence log | Marketing ops | Each send |
| 10 | An employer change gets a new record at the new company, with history kept; a title change at the same employer updates the title and last verified date | Contacts | Mark the old record as left; create and associate the new one | Account owner | When found |
| 11 | One system of record per field, and an acceptance check before any connector writes | Integrations | Written field ownership; sandbox test on 100 records | RevOps | Each new connector; reviewed quarterly |
| 12 | A retention policy with a periodic delete-or-anonymize review | All personal data | Retention period per record type | Data protection lead | Yearly (our recommendation) |
Copy the data hygiene checklist (Google Sheets). The first tab holds 24 field rules with pass and fail examples, dropdowns for owner and frequency, and the value that wins when records merge. The second tab is the cadence log, which flags any run with hard bounces above 2%.
What data hygiene covers in a B2B database: the seven-step process, and what is not part of it
Deep Sync calls data hygiene "the process of keeping databases clean and error-free"; Twilio calls it "the ongoing process of maintaining the accuracy, consistency, and integrity of your data". Neither page covers B2B contacts in a CRM, where people change roles and employers.
Gartner's nine data quality dimensions make a better yardstick: accessibility, accuracy, completeness, consistency, precision, relevancy, timeliness, uniqueness and validity. Hygiene work in a B2B database moves five of them most: accuracy, completeness, uniqueness, validity and timeliness. The data hygiene process below does that in seven steps that prevent, find, fix, refresh and retire bad records.

Four jobs sit next to data hygiene but are not part of it:
| Not data hygiene | What it is | Where it is covered |
| Security hygiene | Keeping threat data clean, the meaning some ranking pages use | Security teams, not the CRM |
| Enrichment | Adding fields you do not have yet | CRM data enrichment |
| List validation | Checking a bought or uploaded list against outside sources before import | B2B data validation |
| Pre-send list cleaning | Verifying an email list right before a campaign | Your email verifier and sending tool |
1. Database hygiene audit: count duplicates, blanks and stale records before you change anything
According to Gartner surveys, "59% of organizations do not measure data quality". Measure first, so every later step has a number to beat. Export the database, change nothing yet, and take five baseline numbers:
| Baseline number | How to count it |
| Duplicate rate | Contacts sharing an email, companies sharing a root domain, and contacts with the same name at the same company, divided by all records |
| Blank rate per required field | Records with an empty owner, source, country or lifecycle stage, counted per field |
| Verified in the last 90 days | Contacts whose last verified date is inside 90 days, divided by all contacts |
| Hard bounce rate | Permanent delivery failures divided by attempted sends in your last campaign |
| Records with no owner | Contacts and companies with no owner, or an owner who has left |
Expect the numbers to be worse than the team believes. In the Validity survey, "over half of this study's respondents reported using manual processes" to find and fix data issues. Validity sells CRM data tools, so read it as a survey of admins, not an audit. Log the five numbers as the first row of the cadence log and repeat the audit every quarter: the trend shows whether steps 2 to 7 work.
2. Data hygiene rules by field: formats, required values and who may edit them
A rule at entry costs less than a cleanup. Both large CRMs can block a bad value as it is typed or imported, with gaps worth knowing.
HubSpot validation rules cover text, date, phone number and number properties: no leading or trailing spaces, length limits, numbers only, title case, unique values, phone format with a default country code, and date limits. Custom regex rules need Professional or Enterprise. "All validation rules apply when editing or importing data", but not to workflows, chatflows, meeting scheduling pages or legacy-editor forms, and a new rule does not reformat values already stored.
A Salesforce validation rule is a formula that returns True when the data is wrong and then shows an error. It applies to new and updated records "even if the fields referenced in the validation rule aren't included in a page layout or an API call", and Salesforce warns: "If your organization has any integrations that use this object, verify that the validation rule works for each integration."
Add two provenance fields to every contact, data source and last verified date, so you can filter a send by the age of its check. Do not count on history instead: Salesforce "retains field history data for up to 18 months", or 24 months through the API, unless Field Audit Trail is on.
| Field | Rule | Pass | Fail | Where to enforce |
| Unique, lower case, no spaces | ana.ruiz@example.com | Ana.Ruiz@example.com on a second record | Deduplication on email; duplicate rule | |
| Root domain | Bare domain, one company per domain | example.com | https://www.example.com/about | Deduplication on domain; duplicate rule |
| Phone | International format with country code | +44 20 7946 0018 | 020 7946 0018 | HubSpot phone validation; Salesforce formula rule |
| Country | ISO two-letter code from a picklist | DE | Germany, GER, Deutschland | Dropdown or picklist |
| Job title | Required, dated by the last verified date | Head of Revenue Operations | Blank | Required field; 30 or 90 day refresh |
| Opt-out | Locked: never overwritten by an import, sync or merge | Opted out 2026-09-02 | Cleared by a re-import | Left out of every import and sync mapping |
Then name owners. In the Validity survey, "35 percent of respondents said they were unsure who holds responsibility for data accuracy." ZoomInfo's split gives field standards to CRM admins, routing to RevOps and enrichment survivorship to marketing ops; our sheet adds a data protection lead for opt-outs and retention.
3. CRM data cleansing: deduplicate and merge without losing history
CRM data cleansing is the fixing part of data hygiene: merging duplicates, correcting formats and filling or flagging blanks in records already in the CRM. Start with duplicates, because every other count is wrong while they exist.
Choose the match keys first: email for contacts, root domain for companies, name plus company for contacts without an email. Then set a survivorship rule for the value that wins when two records disagree. Ours: the most recently verified value wins for email, phone and title, and owner-entered fields and opt-out flags are never overwritten. Export both records before each merge and log the counts.

Salesforce data hygiene: duplicate rules and matching rules
A matching rule decides when two records are the same; a duplicate rule decides what happens "when a record is created or edited": it can "block or alert sales reps", and its Allow and Report options let a duplicate save and log it in a report. You get "up to five active duplicate rules per object" and "up to three matching rules in each duplicate rule". The standard contact matching rule, active by default, needs a first and last name match plus one more signal, such as email, phone, or title and account name. Email must match exactly; first names can also match on initials or name variants.
HubSpot CRM data hygiene: email and domain deduplication and merges
"HubSpot automatically deduplicates contacts using email addresses, and companies using domain names". The gap is integrations: "companies created through API will not be deduplicated by the Company domain name property", and that includes third-party sync apps. Merges keep the primary record's values and use the secondary value only where the primary is blank, so choose the primary with your survivorship rule in mind. Lifecycle stage keeps "the stage furthest down the funnel" and a new Record ID is created by default. Records that are part of "a combined total of 250+ merges" cannot be merged, and "It's not possible to unmerge records."
4. Data hygiene best practices for contact records: title and employer changes, bounces and catch-all addresses
Contact records go stale because people move. The median US wage and salary worker has been with their current employer 4.1 years, 3.0 years for ages 25 to 34, and 20.6% have a year or less of tenure. In one month alone, separations reached 5.1 million, 3.2% of US employment. The causes are covered in what data decay is; this step is what to do about them.
For email, ZeroBounce reports that "On average, at least 23% of an email list decays within just one year", that "Only 62% of all emails submitted to ZeroBounce in 2025 were valid" and that "more than 9% of all the emails it checked were catch-all emails". "That broader population is not a Spona benchmark or a country comparison." Candidate addresses checked by Spona returned:
| Country | Pass | Catch-all | Other rejected | Hard bounce on sends | Checked / sent |
| US | 78.0% | 14.0% | 8.0% | 1.5% | 10,000 / 5,000 |
| UK | 80.0% | 12.0% | 8.0% | 1.2% | 10,000 / 5,000 |
| DE | 76.0% | 16.0% | 8.0% | 1.8% | 10,000 / 5,000 |
| FR | 77.0% | 15.0% | 8.0% | 1.6% | 10,000 / 5,000 |
| Pooled | 77.75% | 14.25% | 8.0% | 1.525% | 40,000 / 20,000 |
In Spona's words: "We count pass and catch all against all unique candidate addresses checked. Other rejected includes invalid, unknown, disposable and suppressed addresses. These categories are mutually exclusive." "Hard bounce means permanent delivery failures divided by attempted sends to the verified subset, excluding catch all addresses." "Inbox placement is a separate metric."
| Result | What to do with the record |
| Valid | Keep it and stamp the last verified date |
| Catch-all | The domain accepts every address, so the mailbox is unconfirmed: keep a separate segment and send in small, watched batches |
| Invalid, unknown or disposable | Suppress the address at once; keep the contact if it holds deal history |
| Hard bounce | Suppress the address and queue the contact for a title and employer check |
| Title or employer changed | Employer changed: create a new contact at the new company and mark the old one as left, so history stays with the account. Title changed only: update the title and last verified date |
Spona's "Recommended operating target: hard bounces below 2% on a freshly checked list. Recheck and investigate when exceeded. Role and vertical splits remain unmeasured." It is a target, not a guarantee.
5. Data hygiene schedule: what changed in Spona's panel in one quarter, and the weekly, monthly and quarterly tasks
Set the schedule by how fast records change. Spona measured that on a stable panel of 10,000 records per country, comparing each record at the start and end of a quarter:
| Country | Title or employer changed | Email changed or became invalid |
| US | 8.0% (800 of 10,000) | 6.5% (650 of 10,000) |
| UK | 7.0% (700 of 10,000) | 6.0% (600 of 10,000) |
| DE | 5.5% (550 of 10,000) | 5.0% (500 of 10,000) |
| FR | 6.0% (600 of 10,000) | 5.5% (550 of 10,000) |
Spona's method note reads: "We compare the same records at the beginning and end of the quarter, retain evidence timestamps and report job and email changes separately because they can overlap." Read the panel by its column labels: a title or employer change, and an email that changed or became invalid. The two columns are never added, and they describe one quarter in four countries, not a yearly rate. The method note also states: "The published report does not establish how often Spona contacts change jobs." For outside context, ZeroBounce's 23% a year converts to about 6.3% a quarter under a constant decay model; "This external calculation is a modeled quarterly equivalent, separate from the Spona country measurements above."

In these panels, from one email in 20 (Germany, 5.0%) to about one in 15 (US, 6.5%) changed or became invalid within a single quarter, so do not rely on a check older than 90 days. Spona's own cadence: "verify email before delivery and again before a send if the check is over 30 days old, refresh high activity contacts every 30 days and the wider inventory every 90 days. The cadence is confirmed by Spona." Spona's 280 million unique contacts are not all verified: 65% have a verified email and 35% a business phone, the two can overlap, and "Phone presence does not mean a verified direct dial." The full inventory refresh is listed as "90 days" and described as a "confirmed cadence", not a freshness guarantee.
| When | Task | Basis |
| At entry | Field rules, required fields and a duplicate check on every new record | HubSpot and Salesforce rules, steps 2 and 3 |
| Weekly | Duplicate report, records with no owner, new blanks | Our recommendation |
| Before each send | Re-verify any address whose last check is over 30 days old; suppress hard bounces at once | Spona cadence |
| Every 30 days | Refresh high-activity contacts: email, title and employer | Spona cadence; ZeroBounce suggests monthly checks for fast-growing databases |
| Every 90 days | Refresh all other contacts | Spona cadence; ZeroBounce says clean "at least once a quarter" |
| Quarterly | Database hygiene audit and connector review | Our recommendation |
| Yearly | Retention review: delete or anonymize what you no longer need | Our recommendation; the ICO sets no frequency |
Log each run in the Cadence log tab of the data hygiene checklist; it computes the hard bounce rate and marks a run Recheck above 2%.
6. CRM data hygiene for synced tools and lead sources: set the rules before data flows in
Most bad records arrive through a connector, not a keyboard, and connectors skip some of the step 2 rules: HubSpot's validation rules do not run on workflows, API-created companies are not deduplicated by domain, and Salesforce asks you to test each validation rule against each integration. CRM data hygiene best practices for synced tools start with one system of record per field: which tool may write email, title, phone, lifecycle stage and opt-out, and which may only read. Trailhead's advice for Marketing Cloud fits any sync: "Only sync contacts or information that will be used in sends or personalization."
Before any connector writes to the CRM, run Spona's acceptance check: "Acceptance check for each named connector: authentication, supported objects, field mapping, duplicate rules, sync direction, retry behavior and plan eligibility." Test it on 100 records in a sandbox and compare duplicate counts before and after.
The same check applies to Spona. CRM synchronization is confirmed at capability level: "Premium advertises real time CRM sync. Expert advertises integrations, API access and campaign automation." No list of named native CRM connectors is confirmed, and Spona's CSV and API delivery do not settle it either: "Neither proves a specific native connector or bidirectional sync." Treat Spona like any other source: your field and duplicate rules decide what enters the CRM. For which empty fields a sync should fill, see CRM data enrichment.
7. Data hygiene under GDPR: accuracy, storage limitation and when to delete
For personal data on people in the EU or UK, data hygiene is partly a legal duty. GDPR Article 5(1)(d) requires personal data to be "accurate and, where necessary, kept up to date", with "every reasonable step" taken to erase or rectify inaccurate data "without delay". Article 5(1)(e) limits storage to "no longer than is necessary for the purposes for which the personal data are processed", and Article 5(2) makes the controller responsible for, and "able to demonstrate compliance" with, the GDPR Article 5 principles.
The ICO reads accuracy against purpose: keeping data current "depends on what you use the information for", and its checklist asks for "a process in place to identify when we need to keep the data updated". An organization keeping past customers' details for marketing does not have to use data matching or tracing services, but should update a record when a customer gives a new address. On retention, "The UK GDPR does not set specific time limits for different types of data"; you need a policy setting standard retention periods "wherever possible" and should "periodically review the data you hold, and erase or anonymise it when you no longer need it". Moving data offline is not deleting it. Both ICO pages are under review after the Data (Use and Access) Act, so check them before you set policy.
Set a retention period per record type, review it yearly (our recommendation; the ICO sets no frequency) and log what you deleted or anonymized. Clean data is still not permission: "Buying a B2B list does not grant permission to email it; establish a lawful basis for personal data processing, meet transparency and objection duties, and follow the recipient country's electronic marketing rules, including prior consent where required."
Get thousands of leads in 4 minutes.
Stop stitching tools together.
Start with verified sales data, delivered in minutes.
No contracts · No setup · No onboarding
Data hygiene FAQ
What is data hygiene and why is it important?
Data hygiene is the ongoing work of keeping records accurate, complete, unique and current. It matters because every list, report and send is built on those records: Gartner research found that poor data quality costs organizations an average of $12.9 million a year.
What is another word for data hygiene?
Data cleansing, data cleaning and data scrubbing. Strictly, those describe the fixing step; data hygiene also covers the rules that stop bad records at entry and the schedule that keeps good ones current.
What is an example of data scrubbing?
A country field holds "Germany", "DE" and "Deutschland", two records share ana.ruiz@example.com, and 40 phone numbers lack a country code. Scrubbing maps every country value to DE, merges the two records under one primary and rewrites the numbers in international format.
What does CRM hygiene mean?
CRM hygiene, or CRM data hygiene, is data hygiene inside the CRM: field rules, duplicate and matching rules, an owner for every record and a refresh schedule. The 12 rules at the top of this page are a working version.
How do you automate data hygiene in HubSpot and Salesforce?
Turn on the built-in rules first: validation rules and automatic email and domain deduplication in HubSpot, and validation, duplicate and matching rules in Salesforce. Then schedule what they cannot do: reports of records past their last verified date, a weekly duplicate report and re-verification before sends. Keep a person on merges, because HubSpot merges cannot be undone.
What is the impact of AI on CRM data hygiene?
AI tools act on whatever records they read, so they inherit the errors. In Validity's survey, 99% of admins considered their AI tools at least somewhat accurate, while 24% said less than half of their data was accurate and complete, and "Forty-eight percent of admins surveyed have noticed an acceleration in customer data decay in the last 12 months." Clean the inputs before you automate decisions on them.
Share this article
GET FREE LEADS





