CRM Address Deduplication & Record Matching
The same company or contact often ends up with multiple CRM records because their address was typed differently by different sales reps, import sources, or web forms.
The problem
Section titled “The problem”"123 Oak St, Suite 200" and "123 Oak Street Ste. 200" describe the same office, but a CRM exact-match dedup logic sees two distinct accounts, leading to split activity history, duplicate outreach, and inaccurate pipeline reporting.
How address standardisation helps
Section titled “How address standardisation helps”Standardizing every incoming address to canonical component fields and fully expanded string variations gives you a deterministic dedup key. The expansions array standardizes street types and abbreviations (St → Street, Ste → Suite, Ave → Avenue), allowing records that resolve to identical canonical strings to be automatically merged or flagged without expensive and fragile fuzzy-matching heuristics.
This is the same match-key approach used in broader master data management (MDM) and data matching work: standardize first, then match and merge on the canonical key across every system (CRM, ERP, billing, support) that stores an address, so you end up with one golden record or single customer view instead of a duplicate per source.
Example
Section titled “Example”curl -X POST "https://api.goodvat.com/v1/address/normalize" \ -H "Authorization: Bearer $GOODVAT_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "query": "123 Oak Street Ste. 200, Austin TX 78701" }'{ "houseNumber": "123", "road": "oak street", "unit": "ste. 200", "postcode": "78701", "city": "austin", "state": "tx", "country": "USA", "expansions": [ "123 oak street suite 200 austin tx 78701 usa", "123 oak street suite 200 austin texas 78701 usa" ]}Key response fields
Section titled “Key response fields”| Field | Why it matters here |
|---|---|
expansions | Canonical expanded strings with standardized tokens (ste. → suite, st → street) — use as a direct hash key for exact-match deduplication. |
houseNumber / road / unit | Granular component key for validating building and suite matches. |
city / state | Fast pre-filter to partition candidate sets before deep entity matching. |
postcode | Strong disambiguator for buildings on commonly-named streets across different ZIP codes. |