Skip to content
DataGrine home

Migrating into Intercom without duplicate contacts

Duplicate contacts are the most common mess a migration leaves in Intercom. They come from matching people on the wrong thing, from records for the same person being written at the same time, and from archived or deleted contacts that a search does not show. Matching on stable identifiers, writing each person once, and checking the destination before you start leaves one contact per person.

By the DataGrine team · Updated · 3 min read

Key takeaways

  • Match people on external ID, email or phone, never on name.
  • Archived and recently deleted contacts can still block a new contact with the same details.
  • Look up existing tags before creating any, and keep their spelling.

Where duplicates come from

  • Matching on the wrong thing. Two people can share a name, and one person can have different addresses in different systems. Identity has to come from stable identifiers.
  • Records written at the same time. If two copies of the same person are written together, both look for a match, find none, and both create a contact.
  • Contacts Intercom is hiding. In our testing, archived contacts did not appear in search but still blocked a new contact with the same details, and a deleted contact’s details stayed blocked for a while.

Tags: check the spelling

Intercom’s tag endpoint both creates and updates tags. In our testing, creating a tag whose name matched an existing tag in different capitals renamed the existing tag across the workspace. Read the workspace’s tags first and reuse each under its existing spelling.

Before you migrate

  1. 1.Decide which identifier is the source of truth for a person: your own user ID as the Intercom external ID, or email.
  2. 2.Look for archived contacts in the destination that may match migrated people.
  3. 3.Avoid deleting contacts in the destination just before a migration.
  4. 4.List the tags already in the destination, and how they are spelled.
  5. 5.Run a sample and count contacts on both sides before the full run.

DataGrine migrations into Intercom start with a written field mapping and a sample run signed off before the full run, run self-serve on the platform or fully managed by the migration team, with 24/7 support either way.

Questions

Asked about this, often.

Why does my Intercom migration create duplicate contacts?

Usually because people are matched on the wrong thing, because two copies of the same person were written at the same time, or because an archived or deleted contact was missed by the duplicate check.

Can Intercom contacts be created without an email address?

Yes, in some cases. Intercom contacts can be identified by an external ID as well as an email, and leads need less identifying information than users. Check the identifiers each of your contacts carries before mapping.

Why did migrated tags change the spelling of our existing tags?

In our testing Intercom matched tag names regardless of capitals, and creating a tag with a matching name renamed the existing one. Look up existing tags before creating any.

Let’s move your data forward.

Tell us where you are moving from and to. Run it yourself on the DataGrine platform or let our migration team handle it end to end, with 24/7 support either way.

  • A written mapping document before anything moves
  • A sample migration you review before the live run
  • Delta sync at cut-over and rollback per run
  • 24/7 premium support until you sign off