CRM data quality: what to measure and what to fix first
Data quality is vague until you break it into things you can check. The six dimensions, the five numbers worth tracking, and the order to fix them in.
By Operelio team · Updated July 2026
On this page8
What data quality means
Data quality is a vague phrase until you break it into things you can check. Six dimensions cover almost everything people mean by it, and each one is a different question about the same record.
Most of this applies whether you are checking a list on its way into your CRM or the records already sitting in it. If you already know the data is bad and just want to fix it, the cleanup guide linked at the end is the shorter path.
| Dimension | The question it answers | What a failure looks like |
|---|---|---|
| Completeness | Is the field filled in at all? | Half your contacts have no company name |
| Validity | Is it the right shape for the field? | A phone column containing n/a and see notes |
| Uniqueness | Is this the only record for this person? | Three records for the same person, one per campaign |
| Consistency | Is it written the same way everywhere? | UK, U.K., United Kingdom, and England in one column |
| Timeliness | Is it recent enough to act on? | A lead nobody has touched since 2019 |
| Accuracy | Does it match the real world? | The contact left that company a year ago |
Accuracy is the hard one, because you cannot check it from inside the file. Nothing in a spreadsheet tells you someone changed jobs. The other five you can measure today, which is why they are the ones worth starting with.
Five numbers worth tracking
A single quality score is easy to report and hard to act on. Five specific numbers tell you what to do next.
Duplicate rate
The share of records that have at least one duplicate. Count on the field your CRM treats as the identity of a record, usually email. Then count again on name plus company, which catches the duplicates that slipped in with a different address.
Required-field completeness
For each field your process depends on, the share of records that have it. Be strict about what counts as required. A field that is nice to have is not a data quality problem when it is empty.
Invalid email rate
The share of addresses that are malformed, disposable, or will not accept mail. This one has a direct cost, because sending to dead addresses damages your sender reputation for every later send.
Format consistency
For the fields you filter and report on, such as country, state, or industry, the number of distinct values against the number there should be. Fourteen spellings of one country is a reporting problem long before anyone calls it a data problem.
Staleness
The share of records nobody has updated or contacted in twelve months. This is the number that quietly grows while the others look fine.
Where bad data comes from
Most CRM data problems do not build up one record at a time. They arrive in batches, at import, when a few thousand rows land at once and every flaw in the file becomes a flaw in the CRM.
The other sources are steadier. Free-text fields on forms produce a hundred spellings of the same company. Manual entry produces typos and skipped fields. Enrichment tools sometimes overwrite a correct value with a confident wrong one. And time does the rest, because people change jobs whether or not your CRM notices.
This matters for where you spend effort. If most of the damage arrives at import, checking the file before it lands prevents more than any amount of tidying afterwards.
What to fix first
The order matters more than people expect, because some fixes make the others cheaper.
Duplicates, before anything else
Every other fix costs double while duplicates are present, because you correct the same person twice and the two copies drift apart again. Deduplicate first and the rest of the work shrinks.
Validity on the fields your process depends on
Email if you send, phone if you call, country if you route by territory. A malformed value in a field something depends on breaks the thing that depends on it, which is a visible failure rather than a slow decline.
Consistency on the fields you segment by
Anything you filter, group, or report on. This is the cheapest big win, because collapsing spelling variants usually takes one pass and immediately fixes every report built on that field.
Completeness, honestly scoped
Fill the fields you need. Resist the urge to fill everything, because a field nobody uses does not get more useful when it is populated.
Staleness, as a habit rather than a project
This one never finishes, so treat it as a recurring check rather than a cleanup. It is the right thing to put on a schedule.
If you only do one thing: deduplicate before the next import, not after. A duplicate that has already attached itself to deals, activities, and an owner is far more expensive to unpick than one caught in a file.
What about the records already in your CRM?
Everything above is about knowing what is wrong. Fixing the records already sitting in your CRM is a different job, and it has its own method: export what is there, clean the export as a file, and push it back over the originals with update existing turned on.
That round trip has enough detail to be its own guide, including the row limits, what happens to good data, and what to do about records with no email address. It is linked below.
Keeping it clean
A one-off cleanup buys you a few months. What keeps quality steady is a small number of habits.
Decide what required actually means and enforce it at the point of entry, because a field that is optional at the door will be empty in the report. Clean imports before they land rather than after. Put the recurring checks on a schedule so staleness and bounce rates do not drift. Keep a do-not-contact list and screen against it every time, not once. And give the whole thing one owner, because data quality with no owner reverts to whatever the last import did to it.
Where Operelio fits, and where it does not
Operelio works on files. Health Check reads a spreadsheet and reports duplicates, blank rows, broken characters, invalid emails, and other issues, which covers the first four dimensions above. Verify Emails checks addresses against live mail servers on Pro and up. Company Active Check flags companies whose sites no longer resolve. Suppression lists screen every file against your do-not-contact list.
Because a file can come out of your CRM as easily as it can go into one, that covers both halves: the list you are about to import, and the records already there.
What Operelio does not do is run continuously inside your CRM. It has no rules that fire on every new record, and it does not watch for problems as they appear. Those jobs belong to an in-CRM tool, and the two sit well together: one keeps the ongoing hygiene, the other handles the bulk work that is painful to do record by record.
Upload a file and get a quality report on it before it goes anywhere near your CRM.
Related
Frequently asked questions
What counts as a good CRM data quality score?
There is no universal number, and any tool quoting one is guessing at your context. A score is only useful against your own baseline. Measure the five numbers above today, write them down, and watch the direction they move.
How often should we audit CRM data quality?
Tie it to imports rather than the calendar. Check every file before it lands, and run a fuller review quarterly. A monthly audit of data that only changes at import time mostly measures the same thing four times.
Should we clean data before importing or fix it in the CRM?
Both have a place. Cleaning before import keeps problems out and is cheaper per record; cleaning inside the CRM is the only option for records already there. Most teams do some of each.
Does deduplicating lose information?
It can, if you keep the wrong copy. Decide which record wins before you merge, usually the most recently updated one, and keep the removed rows so you can check what went. Operelio can return the removed rows as a separate file.
Is completeness worth chasing to 100 percent?
No. Completeness only matters on fields something depends on. Chasing every field to full costs real time and produces data nobody reads, which is why the priority order above puts it fourth rather than first.
Ready to get started?
Upload a file and run your first transformation. Free, no credit card required.