ERR_DUPLICATE_RECORD on HubSpot: Duplicate record creation. Root cause: Duplicate detection not enabled or matching rules too loose Step 1: Understand why HubSpot creates duplicates — the matching logic. HubSpot deduplicates contacts by email address only. If two contacts have the same name but different email addresses (or one has no email), HubSpot creates two separate records. This is the most common cause of "duplicates". Before changing any settings, check whether your duplicates share an email address. If they do not, HubSpot is behaving correctly — you need to merge them manually or fix the data source. Step 2: Enable HubSpot's built-in duplicate management tool. Go to HubSpot → Contacts → Actions (top right) → Manage Duplicates. HubSpot's algorithm surfaces pairs it considers likely duplicates based on name, company, and phone number. Review each pair and click Merge to combine them. The contact with the most recent activity becomes the primary record. This tool processes up to 50 pairs per day on free accounts; paid accounts have no limit. Step 3: Fix the upstream data source creating the duplicates. Duplicates in HubSpot are almost always caused by the same contact entering through multiple channels: a form submission, a CRM import, and a Zapier workflow all creating separate records. Map every entry point for new contacts in your account. For each entry point, add a lookup step that checks whether the email already exists before creating a new record. In Zapier: use "Find or Create Contact" instead of "Create Contact". Step 4: Configure duplicate blocking on forms. In HubSpot, form submissions from existing contacts update the existing record by default — they do not create duplicates. If you are seeing form-created duplicates, the form is likely submitting with a different email format (e.g., Jane.Smith@company.com vs janesmith@company.com). Go to Settings → Properties → Email and check if you have email normalisation rules. Consider adding a hidden field that captures the canonical email from your CRM before form submission. Step 5: For large-scale deduplication, use the HubSpot API or a third-party tool. If you have thousands of duplicates, the manual tool is too slow. Use the HubSpot Contacts API (GET /crm/v3/objects/contacts with email filter) to identify duplicates programmatically, then use the Merge Contacts API (POST /crm/v3/objects/contacts/{contactId}/merge) to combine them. Alternatively, tools like Dedupely or Insycle connect directly to HubSpot and can process thousands of merges in bulk with configurable matching rules. Step 6: Set up a workflow to flag future duplicates in real time. In HubSpot Workflows, create an enrollment trigger: Contact is created. Add an action: Check for duplicate (available in Operations Hub Professional). If a duplicate is found, assign a task to your CRM admin to review within 24 hours. This catches duplicates before they accumulate.