Data quality

I watch the CRM data that every forecast, routing rule, and comp calc reads from, because a report is only as honest as the fields under it. The failure mode is a dashboard that looks clean while duplicates split pipeline, blank keys break routing, and reps quietly stop trusting the record.

Shape of it

Required-field completeness by object
Accounts 88% Contacts 74% Opportunities 91% Leads 62%
Illustrative, not a benchmark. Completeness falls off fast on the objects reps touch least.
HLT-01

Duplicate rate

Share of records that duplicate an existing entity on a match key (domain, email, account name).

duplicate records / total records

BenchmarkPractitioner target under 2% on managed keys; anything past 10% means the dedupe rule or the intake path is broken

Duplicates split pipeline across records, misroute leads, and double-count ARR; they corrupt every rollup silently.

HLT-02

Required-field completeness

Share of records with all business-required fields populated (not just the platform-required ones).

records with all required fields / total records

BenchmarkPractitioner target 90%+ on core objects; leads and contacts run lower than opps because reps touch them less

Blank keys break routing, scoring, and forecasting; a field nobody fills is a field you cannot report on.

HLT-03

Validation pass rate

Share of record saves that clear validation rules on the first attempt.

saves passing validation / total save attempts

BenchmarkPractitioner range 92-98%; a sustained drop below 90% means a rule is fighting the reps, not the data

Too few rules and garbage flows in; too many and reps route around them with junk values. The pass rate tells you which failure you have.

HLT-04

Field fill rate (by field)

Population rate of a specific field across the records that should carry it.

records with value / records in scope

BenchmarkJudge per field against its use: a field feeding routing or comp needs 95%+, a nice-to-have can sit lower

Aggregate completeness hides the one field a downstream process depends on; you have to read fill rate field by field.

HLT-05

Stale record rate

Share of records not modified within a freshness window (job changes, closed accounts, dead contacts).

records past freshness window / total records

BenchmarkB2B contact data decays ~22-30% per year; set a re-verify cadence against your own decay curve, not a fixed date

Stale data is worse than missing data because it looks trustworthy; a rep dials it before finding out it is dead.

HLT-06

Data quality score

Composite 0-100 score blending completeness, validity, uniqueness, and freshness per record or object.

BenchmarkSet your own weighting and threshold (e.g. flag anything under 70); the value is the trend, not the absolute number

A single number that lets you trend quality over time and target cleanup, instead of arguing field by field.