Address-level SDOH data trust: geocoding accuracy and the census tract mismatch problem
Photo by Annie Spratt on Unsplash

Address-level SDOH data trust: geocoding accuracy and the census tract mismatch problem

By Jason Alan Snyder·August 5, 2026

Geocoding errors misassign up to 10% of patient addresses to the wrong census tract, silently corrupting every SDOH variable linked to that location. When health AI models consume area-level deprivation indices without verifying the geocoding step, they inherit systematic bias that disproportionately affects rural and minority populations. Address-level SDOH data trust requires scoring the geocoding pipeline itself, not just the social determinant variables it produces.

Geocoding is the invisible step that connects a patient's address to every area-level social determinant of health (SDOH) variable used in population health analytics. When that step fails, and it fails more often than most teams realize, every downstream SDOH metric is wrong. The Area Deprivation Index, the Social Vulnerability Index, food desert classifications, broadband access scores: all of them depend on correctly placing a patient inside the right census tract. A geocoding error of even a few hundred meters can shift a patient from one tract to another, flipping their SDOH profile from high-risk to low-risk or vice versa.

This is not an edge case. It is a systematic data trust problem that affects millions of records across health systems, payers, and research datasets.

What geocoding actually does in SDOH pipelines

Geocoding converts a street address into geographic coordinates (latitude and longitude), which are then mapped to a census tract, block group, or ZIP code tabulation area. That geographic unit becomes the key that links the patient to area-level SDOH data maintained by the Census Bureau, USDA, EPA, and other federal agencies.

The chain looks simple: address → coordinates → census tract → SDOH variables. But each link introduces error. The address itself may be incomplete, outdated, or formatted inconsistently. The geocoding engine may match to an incorrect location. The coordinate may fall near a tract boundary, where small positional errors produce large classification errors. And the SDOH data attached to the tract may be five years old, based on American Community Survey (ACS) estimates with wide confidence intervals.

No one audits this chain systematically. Health systems consume the output, an SDOH score or index, as if it were a laboratory value. It is not.

The census tract mismatch problem

Geocoding match rates by setting
Geocoding match rates by setting

Census tracts are geographic units designed to contain roughly 4,000 people. They were redrawn after the 2020 Census, which means any geocoding pipeline using pre-2020 tract boundaries is mapping patients to tracts that no longer exist. The Census Bureau changed over 8,000 tract boundaries in the 2020 redistricting cycle. Health systems that have not updated their tract crosswalks are silently assigning SDOH scores based on obsolete geography.

Even with current boundaries, the mismatch problem persists. A 2019 study in the International Journal of Health Geographics found that geocoding accuracy varies dramatically by urbanicity. In dense urban areas, street-level geocoding achieves match rates above 95%. In rural areas, match rates drop below 80%, and positional accuracy degrades from meters to hundreds of meters. Rural addresses are more likely to use post office boxes, rural route numbers, or non-standardized formats that geocoding engines cannot resolve to a rooftop coordinate.

This means the populations most affected by social determinants of health, rural, low-income, and minority communities, are also the populations most likely to be misassigned by the geocoding step. The bias is structural.

Key statistics

DTI trust dimensions and their weight in SDOH geocoding scoring
DTI trust dimensions and their weight in SDOH geocoding scoring

Up to 10% of geocoded addresses in mixed urban-rural datasets are assigned to the wrong census tract, according to analyses comparing rooftop-level geocoders to ZIP centroid fallback methods.

The 2020 Census redistricting changed over 8,000 census tract boundaries, invalidating SDOH linkages built on the 2010 tract definitions that many health systems still use.

Rural geocoding match rates fall below 80% in multiple published studies, compared to 95%+ in urban settings.

ACS 5-year estimates, the source for most area-level SDOH variables, carry margins of error exceeding 20% for small census tracts with populations under 1,200.

SuperTruth's DTI Engine scores data across 8 trust dimensions. Provenance, which accounts for 25% of the total score, flags records where the geocoding source, method, and tract vintage are undocumented.

How geocoding errors propagate into AI models

A readmission prediction model that includes an Area Deprivation Index (ADI) feature is only as trustworthy as the geocoding that assigned the ADI value. If 7% of the training population was geocoded to the wrong tract, the model learns incorrect associations between social risk and clinical outcomes. It may underweight social risk for patients who were incorrectly assigned to low-deprivation tracts, or overweight it for patients assigned to high-deprivation tracts by error.

The problem compounds in models that use multiple SDOH features. A model consuming ADI, food access score, transportation access, and broadband availability is consuming four variables that all depend on the same geocoding step. If the geocode is wrong, all four features are wrong in a correlated way. This is not random noise. It is systematic measurement error that biases model coefficients.

Health equity analyses are particularly vulnerable. If geocoding accuracy is lower for rural and minority populations, then SDOH-adjusted models will systematically mischaracterize the social risk profiles of exactly the populations the models are supposed to help. This is the opposite of health equity. It is algorithmic reinforcement of existing data gaps.

The five geocoding quality dimensions that matter

Not all geocoding is equal. The trust profile of a geocoded record depends on at least five dimensions that are almost never tracked in health data systems.

Match type. Did the geocoder resolve to a rooftop coordinate, a street segment interpolation, a ZIP centroid, or a city centroid? A ZIP centroid geocode in a rural county can place a patient 15 miles from their actual residence.

Positional accuracy. What is the expected error radius? Rooftop geocodes have sub-10-meter accuracy. Street interpolation may have 50-200 meter error. ZIP centroids can have multi-kilometer error.

Tract boundary proximity. Is the geocoded point near a census tract boundary? Points within 100 meters of a boundary have a meaningful probability of tract misassignment, even with good positional accuracy.

Address standardization. Was the input address parsed and standardized before geocoding? Unstandardized addresses produce lower match rates and more fallback to coarse geographies.

Tract vintage. Does the geocoding pipeline use 2020 tract boundaries or 2010? This single factor can invalidate every SDOH linkage for records in tracts that were split, merged, or renumbered.

No major EHR system, health information exchange, or SDOH data vendor systematically tracks these five dimensions. The geocoding step is treated as a black box: address goes in, census tract comes out. The confidence in that output is assumed, never measured.

Why ZIP code SDOH is not a safe fallback

Many health systems, recognizing the difficulty of census-tract-level geocoding, fall back to ZIP-code-level SDOH data. This seems safer because ZIP code matching is nearly 100% reliable. But ZIP codes are terrible units for SDOH measurement.

ZIP codes are mail delivery routes, not geographic areas. They can cross county lines, span vastly different neighborhoods, and contain populations ranging from a few hundred to over 100,000. The SDOH profile of a ZIP code is an average that may represent no one who actually lives there. A ZIP code that includes both a gated community and a public housing complex will show moderate deprivation, which describes neither population.

The Health Resources and Services Administration (HRSA) and CMS both use census tract or block group as their standard geography for SDOH measurement. ZIP-code-level analysis is considered methodologically inferior for health equity work. But health systems default to it because the geocoding step required for tract-level analysis is unreliable.

This creates a false choice: use unreliable tract assignments or use methodologically weak ZIP aggregations. The correct answer is neither. The correct answer is to score the geocoding step itself and carry that confidence score forward into every downstream use.

What trust scoring looks like for geocoded SDOH data

SuperTruth's DataSpine product was built to address exactly this problem. DataSpine maintains scored geographic SDOH data that tracks the provenance and confidence of every geocoded linkage. Rather than treating a census tract assignment as a binary fact, DataSpine treats it as a probabilistic claim with measurable uncertainty.

A record geocoded to a rooftop coordinate, well inside a tract boundary, using 2020 tract definitions, from a standardized address, receives a high provenance score. A record geocoded to a ZIP centroid, near a tract boundary, using 2010 tract definitions, from an unstandardized rural address, receives a low provenance score. Both records may carry an ADI value. But only one of them should be trusted by a downstream model.

The DTI Engine enforces this distinction by scoring every health data record across 8 dimensions before any AI model consumes it. Provenance carries 25% of the total DTI score. For SDOH-linked records, provenance includes the geocoding method, match type, positional confidence, tract vintage, and boundary proximity. A record with undocumented geocoding provenance cannot achieve a DTI score above Bronze grade, regardless of how complete its clinical data may be.

This is not optional metadata. This is the minimum information required to determine whether an SDOH variable attached to a patient record means what it claims to mean.

The CMS and payer compliance dimension

CMS is increasingly requiring SDOH data in quality reporting, risk adjustment, and payment models. The CMS ACCESS program ties payments of up to $420 per beneficiary to social risk factor screening and intervention. Medicaid managed care contracts in over 30 states now require SDOH data collection and reporting.

None of these programs currently audit the geocoding accuracy of area-level SDOH data. But the direction is clear. CMS has signaled interest in health equity performance measurement that depends on accurate geographic social risk stratification. When auditors start asking how a health plan assigned a Social Vulnerability Index score to a member, the plan will need to show the geocoding pipeline, the match type, the tract vintage, and the confidence level.

Plans that cannot answer these questions will face the same credibility problems that already plague provider directory accuracy under CMS CRUSH requirements. The data looked complete. It was not accurate. And the difference cost real money.

What needs to change

Three structural changes would materially improve SDOH geocoding trust across the industry.

First, every geocoded health record should carry a match-type flag (rooftop, interpolation, centroid) and a positional confidence estimate. This metadata exists in every commercial geocoding API. It is simply discarded during data pipeline construction.

Second, census tract assignments should include the tract vintage (2010 vs 2020) and a boundary proximity flag. A point 30 meters from a tract boundary has a different trust profile than a point 2 kilometers inside the tract. This distinction matters for every SDOH variable linked to the tract.

Third, SDOH data pipelines should include margin-of-error passthrough from the underlying ACS estimates. An ADI score built on a census tract where the poverty rate estimate has a margin of error of plus or minus 15 percentage points is not the same as one built on a tract with a margin of error of plus or minus 2 percentage points. Stripping the confidence interval and presenting only the point estimate is a data trust failure.

These changes are technically straightforward. The barrier is cultural. Health data teams have treated geocoding as a solved problem, a utility function that reliably converts addresses to geographies. It is not solved. It is a major source of unmeasured error in every SDOH-dependent application in healthcare.

The connection to screening-based SDOH data

Area-level SDOH data from geocoding and individual-level SDOH data from patient screening instruments like the AHC-HRSN serve different purposes but share the same trust requirements. Both need documented provenance, both degrade over time, and both carry systematic biases that affect specific populations disproportionately.

The most dangerous scenario is when area-level and individual-level SDOH data disagree and nobody notices. A patient screened for food insecurity reports adequate access, but their geocoded tract shows a food desert classification. Or a patient reports housing instability, but their tract-level housing data shows high homeownership rates. These discordances are clinically meaningful. They can indicate screening error, geocoding error, or genuine individual-vs-area divergence. But without trust scores on both data sources, there is no way to adjudicate the disagreement.

This is precisely the concordance dimension of the DTI framework. Concordance, which carries 10% of the total DTI score, measures whether different data sources about the same entity tell consistent stories. For SDOH data, concordance between geocoded area-level variables and patient-reported screening data is a critical trust signal. Low concordance should trigger investigation, not silent averaging.

Geocoding trust is health equity trust

The populations with the worst geocoding accuracy are the same populations with the highest social risk: rural residents, people experiencing homelessness, tribal communities, and residents of areas with non-standard addressing. Every model that uses unchecked geocoded SDOH data to allocate resources, target interventions, or adjust risk scores is making decisions based on data that is systematically less accurate for the people who need the most help.

This is not a technical footnote. It is a health equity failure baked into the data infrastructure. And it will remain invisible until health systems start scoring the geocoding step with the same rigor they apply to laboratory values and vital signs.

The DTI Engine scores every health data record 0 to 100 across 8 trust dimensions before your AI model sees it. For organizations building SDOH-dependent models, risk adjustment algorithms, or health equity analytics, DataSpine provides the scored geographic layer that makes area-level SDOH data trustworthy. If your team is evaluating SDOH data for clinical AI, population health, or regulatory reporting, schedule a conversation with the SuperTruth commercial team or (215) 918-4140.

Further reading:

  • DTI™ Engine
  • Health systems solution
  • Social risk factor screening data trust: AHC-HRSN instrument quality requirements
  • DataSpine and the geography of health risk: how place shapes health data trust
  • Race and ethnicity data quality: what self-reported vs inferred data means for AI
  • Jason Alan Snyder

    Jason Alan Snyder

    Co-founder of SuperTruth and Artists & Robots, and an inventor on the Data Trust Index patents. Twenty-plus years building technology inside Interpublic Group. He writes here nearly every day on data trust, provenance, and what AI should be allowed to act on, and publishes essays on his Substack.

    About SuperTruth · LinkedIn · Substack · jasonalansnyder.com

    See it in practice

    DTI scores the record, not the patient.

    8 dimensions. 0 to 100. Travels with every record permanently.

    See the DTI Engine
    Share