Morrow CreekData Services
← Morrow Creek Data Journal

Complete data and useful data are not always the same thing

Zachery Knowles
Zachery KnowlesFounder, F.R.A.R.Y. Data Technologies LLC

A dataset can earn an impressive completeness score and still fail the decision it was meant to support.

That happens when completeness is treated as a universal measure of quality: count the populated cells, divide by the expected cells, and declare success. The result may describe something real, but it does not answer the more useful question: is this data adequate for this decision?

Data quality is often described as fitness for purpose. That is a practical standard, not an excuse for loose standards. It means the requirements should reflect the decision, the population affected, and the cost of being wrong.

A weekly account-prioritization list can often tolerate missing secondary details. A payment, safety, eligibility, compliance, or material financial decision may not be able to tolerate a missing value at all. Neither situation calls for a magical 95% or 99% threshold.

A filled field is not necessarily a usable field

Completeness has at least two parts. First, are the relevant records present? Second, do those records contain the fields needed for the task?

A report can look complete because nearly every received row has an address, contact name, and identifier. Yet it may exclude a meaningful segment of the market, such as small independent businesses. Record-level fill rates would be high, while coverage of the real population would be weak.

The reverse can also happen. A file may cover the whole intended population but have missing values in a field that matters only for a secondary analysis. It might still be useful for a narrower purpose.

And populated does not mean correct. A close-date column in a sales system may be 98% filled, but the dates may represent different things. One person enters the customer’s target date. Another enters a personal forecast. A third leaves the original date in place after a deal slips.

That column is complete in the narrow sense. It is not necessarily reliable for quarterly forecasting.

The same distinction applies to age. A current address, license status, employee count, or account owner can all be present and stale. It also applies to definitions. A field called “revenue” is not comparable if some records use booked revenue and others use recognized revenue.

Start with the decision boundary

Before improving a completeness score, write down the decision the data must support. Be specific enough that a person could explain the consequence of a bad record.

Then ask four questions:

  • Who must be represented? Define the target population, not just the rows that arrived in a file.
  • Which fields can change the answer? Separate fields that are required to decide from those that help prioritize or merely describe.
  • How current must the values be? A current value may matter more than a historically well-populated one.
  • Do the definitions match the question? A value is not useful when its meaning shifts across teams, systems, or time periods.

Consider a hypothetical supplier directory. Every supplier record contains a tax identifier, address, and contact name. The file looks healthy. But the decision is whether a supplier can perform work in a particular state, and current state-license status is absent for many suppliers.

That dataset may be adequate for finding a contact or maintaining a directory. It is not adequate for approving work. The important gap is not “some blanks.” It is a missing condition that can reverse the decision.

Not every missing value deserves equal effort

Teams can waste considerable time pursuing blank cells that will not change an outcome. A more useful approach is to classify fields by their decision role:

  • Required: Without this field, the decision should stop or the record should be verified.
  • Prioritization: The field improves ranking or routing, but its absence does not make the decision invalid.
  • Descriptive: The field adds context but does not affect the decision at hand.

This creates a workable rule: stop, proceed, or proceed with limits.

If a missing or stale value could reverse an approval, payment, eligibility, safety, or legal decision, hold the record or obtain verification. If it changes only a secondary ranking, it may be reasonable to proceed while flagging the limitation. If it is descriptive only, it may not warrant immediate remediation.

This is not permission to ignore gaps. It is a way to direct attention to gaps that create meaningful risk.

Report what the percentage cannot say

“92% complete” is rarely enough information for a decision-maker. A short decision-readiness note is more useful:

> Population covered: Contracted customers only. > Critical gap: Renewal date missing for 7% of accounts. > Freshness: Status values updated through the prior month. > Appropriate use: Monthly account prioritization; not suitable for revenue-recognition reporting.

That statement makes the limits visible. It identifies what is covered, what is missing, how current the data is, and where the data should not be used.

A customer-retention analysis offers another example. Transaction histories for all active accounts may show which cohorts are leaving and when. If cancellation reasons are incomplete, the analysis may still support a timing or segment view of attrition. It should not be used to claim why customers left.

The right response is to narrow the conclusion, not to label the entire dataset useless.

Completeness work matters most when it changes outcomes. A modest dataset with known coverage, clear definitions, current critical values, and documented limits can be more useful than a fuller-looking dataset that has unknown gaps or ambiguous meaning.

The goal is not to make every cell nonblank. The goal is to know whether the data can safely support the decision in front of you.

Have a dataset that needs to become usable?

Morrow Creek Data Services handles paid research, cleanup, verification, and structured delivery projects.

Start a data project