Home › Guides › Duplicates in HubSpot

Remove duplicates in HubSpot: the complete guide

By Anthony Abreu · Founder of Inspectable · HubSpot Revenue Operations & Sales Hub certified

Duplicates are the number one problem of HubSpot bases that have lived for more than two years. They skew your stats, put two reps on the same prospect, and bill you twice for the same marketing contact. This guide covers the three methods to get rid of them, from the simplest to the most robust, and above all the pitfalls to avoid when merging.

Where do duplicates come from?

Understanding the origin prevents relapse (see also our complete HubSpot database cleaning method). The four classic sources: successive file imports (trade shows, campaigns, bought lists) with no reliable matching key; forms filled by the same person with a different email each time (work then personal); manual entry by reps who do not check what already exists; and third party integrations (billing tool, webinar, enrichment) that create records instead of updating them.

HubSpot automatically deduplicates contacts on the exact email address at import. Two records with the same email should not coexist, but "jean.dupont@company.com" and "j.dupont@company.com" are two distinct records for HubSpot, even if it is the same person.

Method 1: the HubSpot duplicate management tool

HubSpot offers a native tool (Contacts, then Actions, then Manage duplicates, depending on your version) that compares records on criteria such as name and email and suggests pairs to review. For each pair, you choose to merge or to ignore.

Its limits in practice: it works pair by pair, which becomes unmanageable beyond a few dozen duplicates; it does not detect email variants of the same person; and it does not tell you which record is the right one to keep (the most recent? the most complete? the one with activity history?).

Method 2: manual detection by export

For an overall view, export your contacts and work in Excel:

  1. Export all your contacts with the columns: first name, last name, email, phone, company, owner, last activity date.
  2. Create a matching key column, for example first name + last name + company in lowercase with no spaces.
  3. Use conditional formatting for "duplicate values" on that key, then sort.
  4. For each duplicate group, identify the record to keep: favour the one with activity history and an owner, then manually carry over the missing information before merging in HubSpot.

This method is reliable up to around 50 duplicate groups. Beyond that, processing time explodes and so does the risk of human error.

The merge pitfalls (read before you click)

A HubSpot merge is permanent. There is no "undo merge" button. Before any bulk merge, know exactly what will be kept.

Method 3: an external audit for large bases

Beyond a few hundred contacts, manual deduplication is no longer reasonable. An automated external audit detects duplicate groups (including on criteria HubSpot does not cross reference), picks the record to keep according to explicit rules (activity, completeness, owner), carries the copies' data into the kept record, and, crucially, traces every decision in a file you validate before reimporting anything.

On a recent audit of a 1,382 contact base: 73 duplicate groups detected, 64 of them actionable and documented record by record so you validate each merge yourself, and 9 fully inactive groups isolated for human arbitration rather than merged blindly.

How many duplicates in your base?

The free mini-audit gives you the exact figure within 24h, from a simple export, with no access to your portal, and your data goes to no cloud (100% local processing).

Get my free mini-audit