Skip to main content
All articles Data Quality

The Reconciliation Problem: When Inspection Records and Parcel Data Do Not Agree

Priya Varghese
Abstract concept of inspection data reconciliation and record matching

Building inspection records and the parcel database are maintained by different county departments, under different administrative mandates, with different software systems and different data entry conventions. They have to agree on the identity of a property in order to be joined. They frequently do not agree, and the disagreement is not random noise: it follows predictable patterns rooted in how each system was built and maintained.

Automated parcel matching must handle this disagreement rather than fail on it. This article describes the structural sources of the mismatch and what resolution approaches work on real county data.

Why the Two Systems Diverge

The county assessor's parcel database exists to support property taxation. Its primary key is the APN, which is assigned when a parcel is created and updated when parcels are subdivided or consolidated. The assessor maintains the address field as a secondary identifier, but address data is not the authoritative key in that system, the APN is.

Building inspection records, by contrast, were historically keyed by address. A field inspector arrives at a site knowing its street address, writes the address on the inspection form, and that address becomes the record identifier. The APN may or may not appear on the inspection form, depending on the form template, the era, and whether the field inspector or clerk entered it.

This creates a primary-key mismatch at the record level. The parcel database uses APN as its authoritative identifier. Inspection records use address. Joining them requires mapping one identifier to the other, and that mapping is not always clean.

Address Normalization: Where the Mismatch Becomes Concrete

Address normalization is the most common source of join failures. The same physical location can appear under different address strings across the two systems, and each difference is a potential join break.

Common normalization divergences on county records:

  • Directional abbreviation: "NW" versus "Northwest" versus "N.W." These are different character strings even though they mean the same thing.
  • Street type: "Ave" versus "Avenue" versus "AVE." The assessor's system may have standardized to one form in a particular batch-import year, while inspection records use the form from the field inspector's handwriting, which a clerk transcribed.
  • Unit designator: "Apt 4B" versus "Unit 4B" versus "#4B" on inspection records that visit multi-unit buildings. Each unit designation convention produces a different string.
  • Rural route addressing: In unincorporated county areas, properties may have both a 911 address assigned after a county-wide addressing standardization project and an older rural route description. The assessor may have updated to the 911 address format in a given year, while older inspection records still use the rural route.

None of these are errors in the traditional sense. Each string is a reasonable representation of the same address under different conventions. But string-exact matching fails on all of them.

APN Drift Over Time

Even when both systems carry an APN field, the APN may not resolve to the same parcel because parcel boundaries have changed between the time of the inspection and the time of the join attempt.

Suppose a building inspection was conducted in 2004 on a parcel that was later subdivided in 2011. The inspection record carries the 2004 APN (the parent parcel). The current parcel database has three child APNs for the same geographic area, all created at subdivision. A join attempt using the 2004 APN as the key finds no match in the current parcel database because the parent APN no longer exists.

The reverse case also occurs: two adjacent parcels were consolidated, and inspection records exist for both original parcels under their original APNs. The consolidated parcel has a new APN. Inspection records from before the consolidation match neither the old parcels (which no longer exist) nor the new parcel (which did not exist when the inspections were conducted).

Handling APN drift requires access to the parcel history: which APNs were parent parcels, which subdivided into which children, and when. Without that history, any automated matching system will produce no-match outcomes for every pre-replatting record in the affected area, which can represent years of inspection activity on actively developed properties.

Records Without an Identifiable Key

Some inspection records contain neither a clear APN nor a parseable address. These are the hardest cases.

Inspection forms predating APN-centric record-keeping (and in many counties, APN adoption on field forms happened gradually over years rather than overnight) may carry only a legal description: Township-Range-Section notation, or a recorded subdivision lot reference ("Lot 14, Block 3, Sunrise Subdivision"). These legal descriptions identify a location precisely, but they require a translation step to convert them to a coordinate-based parcel centroid before a GIS join is possible.

Legal description parsing is a separate technical problem with its own failure modes. Township-Range-Section is tractable if the county's Public Land Survey System coverage is complete and accurate. Subdivision lot references require the recorded plat, which may itself be in the document archive and require its own extraction step. This is where the reconciliation problem connects back to archive quality: a missing plat means a missing translation key.

Confidence-Graded Matching

The standard approach to automated reconciliation is confidence-graded matching. Rather than binary match-or-fail, each join attempt produces a confidence score reflecting how closely the inspection record's identifiers match the parcel database entry.

A high-confidence match (APN exact match, address match within normalization tolerance) gets auto-accepted. A medium-confidence match (address match after normalization but no confirming APN, or APN match with address discrepancy) goes into a review queue for a human to confirm or reject. A low-confidence match or no-match stays in a separate queue for investigation.

The threshold values for these tiers are calibrated per county, because the error rate of the underlying data varies by county. A county with a recent address standardization project and APN fields consistently populated on inspection forms will have a high auto-accept rate. A county where inspection forms were completed by field staff who inconsistently recorded APNs and where the address list was last normalized in 2003 will have a lower auto-accept rate and a larger review queue.

The Risk of Over-Accepting Matches

There is a temptation to tune the confidence threshold down in order to maximize the matched record count and minimize the review queue. This is a real risk worth naming directly.

An incorrectly matched inspection record is worse than an unmatched inspection record. An unmatched record is simply absent from the output layer, which is a known gap. An incorrectly matched record is present in the output layer, attached to the wrong parcel, where it will inform decisions about that parcel with false information.

For a county planning department, a building inspection outcome attributed to the wrong parcel can create compliance confusion, delay permits, or generate incorrect violation flags. The auto-accept threshold should be set conservatively, with a preference for sending uncertain matches to human review over auto-accepting marginal matches into the output layer.

Practical Implications for Archive Coverage

Given these constraints, what does realistic reconciliation coverage look like on a county inspection archive?

For inspections conducted after a county's address standardization project, with APN fields consistently populated on forms, auto-accept rates in the 85 to 92 percent range are achievable on good-quality scans. The remaining records require review or have no resolvable match.

For inspections from earlier periods, where APN fields are absent and addresses follow pre-standardization conventions, auto-accept rates may fall to 60 to 75 percent, with a larger review queue and a non-trivial no-match residual.

The residual is not a failure of the pipeline. It is an honest representation of what the underlying data supports. A pipeline that claims 100 percent coverage on a real county inspection archive is either wrong or is accepting matches it should not be accepting.