~3.4k duplicate company records and ~2.4k duplicate contact records merged


The CRM held roughly a quarter of a million records with no deduplication discipline and large firmographic holes, on the order of 125k contacts missing at least one core field, and around 85k companies with no associated persona contact at all. Without a clean, tiered account base, everything downstream was running on guesses: ABM targeting, outbound, lead routing, territory design and basic performance reporting.
Assessed the ~250k-record database and selected a dedicated deduplication tool to execute merges, but built the detection logic in an enrichment platform instead of relying on the vendor's defaults, so the matching rules were explicit, reviewable and reusable.
Contacts matched on same email; same name plus associated company ID; same name plus company name; and same name plus phone.
Domain first, then name plus region plus phone, then name plus city plus region plus street, then name plus postal code plus region, with a name-only fallback last. Explicit handling for clusters of more than two duplicates, and separate merge logic for the case where only one duplicate had domain and address populated versus the case where none did.
Full-field backups of every record about to be merged, plus ID mappings for merged contacts and companies, so a bad merge could be reconstructed and any downstream system pointing at a retired ID could be re-pointed.
Separate tier matrices for end customers and for channel partners, each scored across geography, industry, headcount band, revenue band, the security tooling present in the target's stack, and the champion persona, with an explicit off-limits tier rather than an open-ended bottom.
Company enrichment for headcount, location, industry, revenue and name; contact enrichment for title, first and last name, country and profile URL. Company recovery was strong, roughly 44k of ~60k missing industry values, ~26k of ~39k headcounts, ~19k of ~31k locations.
A workflow sets the tier field; segments and reporting hold the population under two rule sets, one including industry, one on geography and headcount alone, so the effect of the industry filter on addressable volume was visible.
~3.4k duplicate company records and ~2.4k duplicate contact records merged
Executed against explicit, layered matching rules, with full-field backups and ID mappings retained for every merge.
Company firmographics recovered at scale, contact firmographics much less so. Industry, headcount and location were filled for roughly two-thirds of the companies missing them, about 73%, 67% and 60% respectively.



+1
7 steps
A repeatable list-import pipeline: normalize, domain-match, waterfall the email, then hand it over
A pipeline a new hire can run
Enrichment engine setup


5 steps
A reusable enrichment table for event leads, and contact data on a re-verification schedule
Enrichment table live and confirmed by the customer
CRM implementation



6 steps
Building a first real sales system for an AI company selling into enterprise
Three GTM pipelines live