Deduptio

How to find duplicate companies in Attio

The short answer

Match on exact domain first — that half is easy and safe. Then run a separate pass on the normalized company name combined with one other independent signal, and review those groups individually. Never bulk-merge companies on name similarity alone: agencies, subsidiaries and generically named businesses will punish you for it.

What Attio does on its own

Attio surfaces likely duplicate companies using the domain attribute and prompts you to merge them. When both records carry the same domain, this works well and costs nothing. Merging is available on company records, two at a time, and it cannot be undone.

The gap is not in the merge. It is that a large share of duplicate companies never share a domain in the first place.

The five ways duplicate companies escape a domain rule

  1. No domain at all. A company record created from a hand-typed name, a conference list, or a person using a Gmail address has nothing to match on. These are the most common duplicates in young workspaces and the ones domain matching never sees.
  2. Rebrands and acquisitions. The company changed name and domain; you have the old record from 2024 and a new one from last week, with no overlapping value.
  3. Several legitimate domains. Regional sites, a product domain distinct from the corporate one, a marketing domain, an old domain still redirecting.
  4. Different sources normalize differently. One integration writes acme.com, another writes www.acme.com or https://acme.com/. Whether these match depends entirely on normalization.
  5. Group structures. A holding company, its trading name and a subsidiary may share a domain while being three genuinely separate records — the inverse problem, where domain matching produces false positives.

A rule that holds up

PassRuleHow to treat the groups
1Exact domain, normalized (protocol, www. and trailing slash removed)Safe to merge in bulk after a sample check
2Exact LinkedIn company URL, or an exact external system idSafe to merge in bulk — these identify a legal entity
3Company name compared fuzzily after normalization — so Acme Ltd. and acme ltd are one value, and Acme Ltd against Acme Limited is a similarity question — AND one exact signal: same country, same LinkedIn URL, or associated people sharing an email domainReview each group; merge the obvious ones
4Fuzzy name similarity aloneCandidates only. Expect false positives — see fuzzy matching company names

The false positives to expect

Choosing the survivor

For companies, the survivor is usually the record other things point at: the one with the people linked to it, the open deals, the list memberships, and the notes. A newer record may have cleaner fields, but if the older one carries three years of relationships, keep the older one and copy the good values across. Field-level decisions are covered in survivor and field rules.

After merging, check the people. A merged company should have every contact from both records attached to it, and any person record still pointing at a deleted company is a sign the association did not follow.

Keeping it clean

Company duplicates rebuild faster than person duplicates because so many tools create company records as a side effect — enrichment, email sync, forms, imports. Two habits fix most of it: make every integration write with a unique attribute so it updates instead of creating, and run a scheduled scan weekly so a new cluster is a handful of groups rather than a project.

Scan your Companies object

Connect your Attio workspace, write one match rule, and run a scan. Scans are read-only — you see every group and the reason it matched before anything is merged.

Start a free Attio duplicate scan

Related