HubSpot manage duplicates: find and merge them without the duplicates tool

No Manage duplicates option in HubSpot? HubSpot's duplicates tool needs a Professional or Enterprise subscription, and bulk merging needs Data Hub Professional or Enterprise. Merging two records and exporting are on all products and plans. Below: HubSpot's own steps first, then our done-for-you pass over your export: likely duplicates flagged for you to merge, same-email rows merged and a change log, back in 24 hours on Quick Clean (up to 200 rows).

Rather not do it by hand? Skip to done-for-you cleanup, from $25.

HubSpot manage duplicates: which plans have it, and what to do without it

Without a Professional or Enterprise subscription you won't have the duplicates manager tool (HubSpot's duplicate management tool): "A Professional or Enterprise subscription is required to manage individual duplicates and display up to 10,000 duplicate pairs using the duplicates manager tool." The article lists Marketing Hub, Sales Hub, Service Hub, Data Hub and Smart CRM, each "Professional, Enterprise" (HubSpot Knowledge Base: Review and manage duplicate records). Three things are listed as "All products and plans": HubSpot deduplication by email (HubSpot Knowledge Base: Deduplicate records in HubSpot), export (HubSpot Knowledge Base: Export your records) and merging two records (HubSpot Knowledge Base: Merge records). So you find the pairs in an export and merge them one at a time.

  1. Export your contacts. Export is listed as "All products and plans". "If you export all properties, the columns are displayed in alphabetical order, with the exception of Record ID which will be the first column in the file." Large files: "An exported CSV file will be automatically zipped if the resulting file is greater than 2MB." (HubSpot Knowledge Base: Export your records)
  2. Find the likely pairs. How to find duplicate contacts in HubSpot without the tool: for reference, HubSpot's paid tool compares these properties: "Contacts: First Name, Last Name, Email address, IP country, Phone number, Zip Code, and Company Name." (HubSpot Knowledge Base: Review and manage duplicate records) Without it, sort the export by name and company in a spreadsheet, or send it to us (see below).
  3. Merge each pair with the Merge action. "In your HubSpot account, you can merge two records of the same object into one record." "Click the name of the record you want to be the primary. This is the one that will remain in your account." "In the left panel, click the Actions dropdown menu, then select Merge." "In the dialog box, click the dropdown menu, then search for and select the record to merge into the primary record." Permissions: "Merge records or Super Admin permissions are required to merge records." (HubSpot Knowledge Base: Merge records, listed as "All products and plans")
  4. Know what the merge keeps. "Email: while the email address of the primary contact is maintained as the primary email address, the secondary contact's email address will be added as a secondary email address." "Lifecycle stage: the stage furthest down the funnel is maintained." "Marketing contact status: if your account has marketing contacts, the most marketable status is kept." (HubSpot Knowledge Base: Merge records)

Where our cleanup fits: in step 2. Send the export; we return it with every likely pair flagged needs_review and a note naming the row it may match, which is your merge list for step 3. Cleaning a HubSpot export or import file instead.

Or let us flag the pairs in your export

  • You send one export as a CSV or Excel (.xlsx) file, or several stacked into one file with the same columns and one header row. With Excel, we clean the first sheet of the workbook, and the file comes back as a cleaned CSV plus a change log. We don't take old Excel .xls files; save them as .xlsx or CSV first. We clean one file per job and don't add a column showing where each row came from. Keep the Record ID column: it comes back unchanged as record_id, so you can find each record in HubSpot. If you add your own Status column, it comes back as status_src, because the cleaned file has its own status column. If your file has a plain Email or Email Address column, that's the email we use, wherever it sits. Other columns with "email" in the header (opt-in, status or permission columns, or ones you add) are kept as their own columns, and one only fills a blank email when it holds a real address. Pricing is by rows in the file you send. We never log in to HubSpot. We don't merge, delete or edit records, or run any import.
  • Possible duplicates are flagged for review, not merged. This is the main job on this page. These are rows with the same full name and the same company, where both are present, but a different or missing email (case, punctuation and suffixes like Inc or LLC are ignored). Each one is marked needs_review, with a note naming the row it may match. This is narrower than HubSpot's tool: we don't compare phone, zip code or IP country, and rows with no company aren't compared, so a person with two emails and no company isn't flagged.
  • Same-email rows are merged and logged. HubSpot already dedupes contacts by email, so a single HubSpot export rarely has these; they matter when you stack an export with an outside file. The first row is kept, and its blank fields are filled from the later rows. Every merge and every fill is listed in the change log. Where both rows have different values, the first row's value is kept and the other is listed in the change log.
  • Invalid, missing and personal (for example Gmail or Yahoo) emails are flagged in qa_notes. We don't fix or verify mailboxes.
  • Names in ALL CAPS or all lowercase are re-cased. US phone numbers are formatted +1-XXX-XXX-XXXX. Numbers with a non-US country code (starting with + or 00) are kept as you sent them (extra spaces trimmed only). Numbers with no country code and 10 digits are treated as US. Placeholder phones like N/A are blanked and logged. Anything we can't read is kept as-is, with a note in qa_notes. Line breaks inside cells are turned into spaces (except in the email column, where a broken email is flagged invalid instead), and the CSV is saved as UTF-8. Rows with no company get a "missing company" note and are marked needs_review. Filter qa_notes for "possible duplicate" to get your merge list.
  • You get back the cleaned CSV (with status, qa_notes and source_row columns), a change log with every merge, every fill from a duplicate, every email and possible-duplicate flag, and every edited cell listed by row, with its old and new value, a QA report with counts (rows in and out, duplicates merged, possible duplicates flagged, emails flagged and cells edited), and your original file, unchanged.
  • What we don't do: we don't merge, delete or edit anything inside HubSpot, and we don't give you HubSpot's duplicates tool. We don't run any import or map fields. We don't promise deliverability, inbox placement or bounce rates, or a lower HubSpot bill, we don't verify mailboxes, we don't find, buy or add contacts, and we don't merge rows that only might be the same person.

Flag my HubSpot duplicates · $25 (up to 200 rows, back in 24h)

Rather hand off the cleanup? $25 Quick Clean: up to 200 rows, cleaned CSV (same-email duplicates merged, possible duplicates flagged) plus a change log within 24 hours.

Bigger list? Intro $99 for up to 500 rows (48h) · Growth $299 for 501 to 2,000 rows (72h) · Bulk $499 for 2,001 to 5,000 rows (5 business days) · over 5,000 rows, custom quote. See all sizes.

What you get back

  • Every change is logged with its original row number.
  • Possible duplicates are flagged for your review, never blind-merged; same-email duplicates are merged and listed in the change log.
  • Your original file is returned alongside the cleaned one.

See a free before-and-after sample · sample files you can download

Start a Quick Clean · $25 (up to 200 rows)

Check your CSV free first

Check your HubSpot export for exact-email duplicates and formatting problems free in your browser. Your file never leaves your computer.

Run the free CSV Preflight Checker

How it works

Pay

Pick the size that fits your list and check out on Stripe. Quick Clean is $25 for up to 200 rows.

Email us your CSV (reply to your receipt or send it to slrescue@mail.grokbot.com)

No HubSpot login, no call, no upload form.

Get it back: 24h (Quick Clean, up to 200 rows), 48h (Intro), 72h (Growth), 5 business days (Bulk)

A clean CSV plus a change log. Over 5,000 rows, the turnaround is scoped in your custom quote.

Flat pricing

Your $25 Quick Clean counts toward any bigger cleanup within 14 days.

Quick Clean, Intro, Growth and Bulk: If the file isn't what we promised, we fix it once for free within 48 hours. If it still isn't right, you get your money back for the part we couldn't deliver. If we're late, you choose a full refund or a free rush job.

Not sure how messy it is? CRM Hygiene Scorecard (written diagnosis), $29. Agencies: white-label batches.

Questions

Does HubSpot remove duplicates?

By email, yes, on every plan: "HubSpot automatically deduplicates contacts using email addresses, and companies using domain names." On import: "If a contact already exists in your account with the same email address, the imported information will update the existing contact rather than create a new one." (HubSpot Knowledge Base) The same person at two different emails isn't caught by that. Those are the pairs we flag when name and company match.

Can I bulk merge contacts in HubSpot?

Only with Data Hub: "A Data Hub Professional or Enterprise subscription is required to bulk manage duplicates and display more duplicate pairs:" (HubSpot Knowledge Base) Without it, merge pairs one at a time with the Merge action (step 3). We don't bulk merge for you.

Which plans have the duplicates tool?

HubSpot lists Marketing Hub, Sales Hub, Service Hub, Data Hub and Smart CRM, each "Professional, Enterprise". "A Professional or Enterprise subscription is required to manage individual duplicates and display up to 10,000 duplicate pairs using the duplicates manager tool." Even with it, you need access: "Data quality tools access and Edit permissions set to All Contacts or All companies or Super Admin permissions are required to use the duplicates manager tool." (HubSpot Knowledge Base)

Is this the same as HubSpot's duplicates tool?

No. HubSpot's tool compares more properties and merges inside HubSpot. We compare name and company in your export, flag the pairs and log every change. You review and merge.

Will you merge or delete anything in my HubSpot account?

No. We clean the export only. You do every merge in HubSpot; "Merge records or Super Admin permissions are required to merge records." (HubSpot Knowledge Base)

What comes back?

A UTF-8 CSV, also when you send Excel (.xlsx), with our standard columns first (full_name, then first_name and last_name when your export has them, then email, phone, company, title, website and linkedin; some may be blank), then status and qa_notes, then the rest of your columns (Record ID as record_id) and source_row, plus a change log, a QA report and your original file. We don't run or guarantee the import.

Do you need access to my HubSpot account?

No. You export a file and email it. We only clean the exported file and never log in to or touch your HubSpot account.

How fast is delivery?

From when we receive your file: Quick Clean (up to 200 rows) within 24 hours, Intro within 48 hours, Growth within 72 hours, Bulk within 5 business days. Over 5,000 rows is scoped in your quote.

What if the cleaned file isn't right?

If the file isn't what we promised, we fix it once for free within 48 hours. If it still isn't right, you get your money back for the part we couldn't deliver. If we're late, you choose a full refund or a free rush job.

What happens to my data?

Your file is used only for your job and deleted after delivery on request (see Anonymous aggregate statistics). We never log in to your CRM, and we never invent, buy, or append emails.

Anonymous aggregate statistics. After a cleanup we keep a small record of counts about your file: rows in and out, duplicates merged, rows flagged for review, which fields were present, and the CRM you told us it's for. This record contains no contact data, names, emails, company names, domains, file names or cell values, and it isn't deleted when your file is deleted. We only publish these counts combined with at least 19 other lists (and at least 5 different customers), so no single customer can be identified. To opt out, reply 'opt out' to your delivery email and we'll delete your record.

Try the free in-browser CSV dedupe teaser (data never leaves your browser). Freelancers: see the referral kit.

Not affiliated with HubSpot. Quotes are from HubSpot's public help docs.