ActiveCampaign duplicate contacts and merge contacts before import
ActiveCampaign duplicate contacts are the same person stored under a second email address, a phone only record from an SMS form, or a row from an old list that ActiveCampaign had no exact match for. ActiveCampaign keeps one contact per exact email address, merges only two contacts at a time by hand, and on accounts opened since November 3, 2025 counts every contact toward your plan limit whatever its status. DataUntangler reads your export and your next import file in the browser, shows each likely duplicate with the reason, and returns a clean file plus a log of every merge you approved.
Load a messy sample and watch it work
The same engine described below, running on your own machine. Nothing is uploaded and nothing is applied until you approve it.
1. Load a file
Your file is read on your own machine. Nothing is uploaded, so nothing can leak.
Or start from a messy sample
Status
Loading the sample file.
File: CRM contact export
Rows
--
Columns
--
Changes
--
Duplicate rows
--
Date formats
--
Blank or invalid emails
--
Load a file to see the diff
Drop a CSV or pick one of the messy samples. Every proposed change appears here as a line you approve or reject.
2. Review every change
Nothing approved yet.
Nothing is applied to your file until you approve it, and your original file is never modified.
Proposed changes
Original Proposed
Duplicate clusters
Merge or keep both
Want this on every file, and on bigger ones?
The free try is one file of your own. The Analyst plan cleans as many files as you need, up to 25MB and about 100,000 rows each, for $59 a month or $348 a year.
3. Take the result
The cleaned CSV contains only the changes you approved. The log lists every change, approved or not.
Why ActiveCampaign ends up with duplicate contacts
ActiveCampaign treats the email address as the unique identifier of a contact. Two rows with exactly the same address become one contact, on a form, an import or the API. Anything that is not an exact match is a new contact, so the same buyer under a work and a personal address, or a name typed differently at a trade show, is two contacts from the first day.
Phone only contacts added a second door. Once an admin switches the feature on, and ActiveCampaign notes that the switch is permanent, a phone number can identify a contact on its own. The help center is plain about the side effect: a phone number entered in a different format is not recognized, and a phone number that matches a contact who already has an email address creates a new phone only contact. Only exact matches count as the same contact.
Imports add their own share. When a CSV holds the same email or phone number twice, ActiveCampaign imports the first row and skips the others, so whichever row sits higher in the file wins, even when the lower one had the newer phone number or the correct company.
Do duplicate contacts count toward my ActiveCampaign contact limit?
Yes. ActiveCampaign prices on unique contacts, so a person on ten lists is one contact, but the same person under two email addresses is two. On accounts created on or after November 3, 2025, every contact counts toward the limit regardless of list status, including unsubscribed and bounced ones. Accounts created on or before November 2, 2025 count only active contacts.
That change makes cleanup a billing task, not only a tidiness task. On a newer account a duplicate that unsubscribed years ago still takes a seat in your plan. Archiving is the lever ActiveCampaign gives you: archived contacts do not count toward the limit, are kept read only for up to a year, and can only be restored manually after 30 days.
ActiveCampaign on its own against a pass on the file first
| The duplicate | ActiveCampaign on its own | Pass on the file before import |
|---|---|---|
| Same email twice in one import file | First row imported, the rest skipped | Shown as one cluster, you pick the row that survives |
| Same email with capitals or spaces | Not documented, check before relying on it | Trimmed and lowercased, then matched |
| Phone only form entry and an email contact, same person | A new phone only contact | Matched on name and company where the file has one |
| One buyer, work and personal email | Two contacts, both counted | Kept as two on purpose, you decide |
| Near duplicate name at the same company | Two contacts, no suggestion | Close match, shown for review |
| States, ZIP codes and dates written several ways | Stored as supplied, segments miss rows | Two letter states, five digit ZIP codes, one date format |
ActiveCampaign merges two contacts at a time and a merge cannot be undone. Work from a reviewed list of pairs instead of deciding one record at a time.
The matching is the same data deduplication engine used across the site: exact email after trimming and lowercasing, then name and company for rows where one side has no email, with fuzzy matching for close spellings. Each cluster is built around the most complete row, and nothing changes until you approve it.
How do I find duplicate contacts in ActiveCampaign?
For a few, search the Contacts page by last name and open each result. For more than a handful, export all contacts into one file and sort by last name and organization, because duplicates that share no email only show up side by side. Look hardest at rows with a phone number and no email next to rows with an email and no phone number. Those are the phone only duplicates the help center warns about.
Include the list you are about to import in the same file. Most new duplicates arrive with the next event list or webinar export, and catching them before the import costs nothing, while catching them afterwards means one manual merge per pair.
How do I merge contacts in ActiveCampaign?
- 1 Export first. Go to Contacts, click the ellipsis at the top right of the Contacts Overview page, choose Export, and select the fields you need: email, first and last name, phone, organization, location fields and the date created. Name the export without special characters, or it downloads as a text file instead of a CSV. The download link under Contacts, then Exports, stays valid for seven days.
- 2 Add the file you are about to import, a trade show list, a webinar export or a list from another platform, with a Source column so every row remembers where it came from.
- 3 Load the combined file into the demo at the top of this page. Nothing uploads, the file is read and matched inside your browser tab. Every cluster shows its rows side by side with the reason and a confidence level. Approve the merges you agree with, reject the rest, and download the cleaned file with the audit log.
- 4 For pairs already in ActiveCampaign, open the source contact, the one that will disappear, click the dropdown next to Send a Campaign, choose Merge and pick the destination contact. Resolve the field conflicts and the automation conflicts, confirm, and merge. The source email address no longer exists afterwards, its tags, open deals and past campaign activity move to the destination, and custom object data is not merged.
- 5 Import the cleaned file with Update existing contacts switched on, so matching rows update instead of being skipped. Turn off Trigger Automations in the advanced options if the list or tags you apply start an automation you do not want to run again.
Can you merge more than two contacts at once in ActiveCampaign?
No. ActiveCampaign merges two contacts at a time, and each merge is permanent. A person with three records takes two merges, and there is no bulk merge on the Contacts page. That is why the order of work matters: settle which records belong together in a file first, then run the merges in the account from that list, rather than deciding case by case inside the merge window.
The merge also asks you to pick one side for all conflicting fields at once, and one side for all shared automations. If the destination has the better email but the source has the newer phone number, fix the field on the destination before you merge, or you lose one of them.
Clean the import file before ActiveCampaign skips the wrong row
Because an import keeps the first row for each email or phone number and skips the rest, the order of your file decides what survives. Sort it so the most complete and most recent row comes first, or better, merge the duplicates in the file so there is only one row per person to import.
The same pass repairs formats that break segments: names in consistent case, emails trimmed and lowercased, states as two letter codes, ZIP codes back to five digits and dates in one format. Doing that on every incoming list is the routine side of data hygiene. If part of your audience also lives in Mailchimp, the same file pass is on Mailchimp duplicate contacts.
Who pays for an ActiveCampaign cleanup
The buyer is usually the marketing ops lead or the agency that runs ActiveCampaign for a US small business, who owns the invoice and is about to import an event list, switch on phone only contacts for SMS, or move a list over from another platform. They need the contact count to stay inside the plan and to be able to explain why it moved.
When the contacts come from a CRM, fixing the source once pays off on every sync. CRM data cleansing covers that file, and HubSpot deduplication covers the most common CRM that sits next to ActiveCampaign.
When a connected app is the better buy
A pass on the export fits a project: an import to run, a plan limit to stay under, a list move with a deadline. A person reviews every merge and applies the result, and that is deliberate, because deciding whether two contacts are one buyer belongs to someone who knows the customers.
If you need contacts merged continuously inside the account without an export, look for an app that connects to ActiveCampaign directly. DataUntangler does not connect to your ActiveCampaign account and does not claim to. It is a data cleaning tool that gives you the matched file and a record of each decision, on the Analyst plan at 59 dollars a month, or 348 dollars a year, with unlimited files.
An ActiveCampaign export combined with a webinar list, a trade show list and a phone only form, run through the engine on this page
| Source | Name and company | Result | |
|---|---|---|---|
| ActiveCampaign export | brian.cole@harborcpa.com | Brian Cole, Harbor CPA Group | Kept: the row with an email |
| Webinar signups | (no email) | Brian Cole, Harbor CPA Group LLC | Same name and company, confidence high |
| ActiveCampaign export | natalie.price@gmail.com | Natalie Price, with phone | Kept: the more complete row |
| Trade show list | Natalie.Price@Gmail.com | natalie price, no phone | Same email address, confidence high |
| ActiveCampaign export | karen.webb@lakesidelaw.com | Karen Webb, Lakeside Law | Kept |
| Phone only form | (no email) | Karen Web, Lakeside Law | Close name and company match, likely |
| ActiveCampaign export | sam.ortiz@ortizdental.com | Sam Ortiz, Ortiz Dental | Left alone |
| Trade show list | samuel@ortizdental.com | Samuel Ortiz, Ortiz Dental | Left alone: two emails, two inboxes |
| Webinar signups | (no email) | Derek Shaw, no company | Not matched to the Derek Shaw at Acme Roofing |
Every result above came out of a real run on this file. A row with no email and no company is not matched on the name alone when the other row has a company, so Derek Shaw stays for you to check by hand. The phone number is not used as a match key. The same run proposed texas, mass, california, ohio and florida as TX, MA, CA, OH and FL, restored ZIP 2110 to 02110 and turned 03/04/2026 and 15 Jan 2026 into ISO dates.
What exact matching does not cover
ActiveCampaign recognizes the same contact only on an exact email address or phone number. Everything else becomes a new contact, and every new list adds more.
Data deduplication toolsPhone formats split people
A number typed another way, or one that belongs to a contact with an email, creates a new phone only contact.
Imports keep the first row
Later rows with the same email or phone number are skipped, even when they hold the better data.
Every contact counts
On accounts opened since November 3, 2025, unsubscribed and bounced duplicates still count toward the limit.
What the file pass adds
Every likely duplicate across your export and the new list in one view, formats repaired before import, and a log of each merge you approved to explain the contact count.
Questions about activecampaign duplicate contacts
Does ActiveCampaign automatically remove duplicate contacts?
How do I merge contacts in ActiveCampaign?
Do unsubscribed contacts count toward my ActiveCampaign limit?
What happens to duplicate emails in an ActiveCampaign import?
Does DataUntangler connect to my ActiveCampaign account?
Plans for when the file is bigger than the demo
Yearly billing saves 50 percent. There is no free plan, and no card is needed to use the browser demo above.
Yearly billing saves 50 percent, half the monthly price.
Switch to yearly and save 50 percent.
Analyst
Self-serveOne person with files to clean, as many as they like.
$29$59/mo
Billed $348 a year Billed monthly
- Unlimited files
- Files up to 25MB, about 100,000 rows
- Exact and fuzzy duplicate detection
- Dates, numbers, currencies, encoding and casing fixed
- Every change reviewable before you download
- Cleaned CSV and a change log, both downloadable
- Runs in your browser: files never leave your machine
- Email support
Enterprise
Several people on one invoice, a DPA on request, priced per seat.
$49$98/seat/mo
Billed $588 a seat a year, from 2 seats ($1,176) Billed monthly per seat, from 2 seats ($196)
- Everything in Analyst
- Several people on one invoice
- DPA on request
- Invoicing and purchase orders
- A named contact for support
Payment is by card through our payment provider, monthly or yearly, and you can cancel from your account at any time. The free try is one file of your own, up to 5MB, in the browser demo. Already paid? Sign in.
Related pages
- Mailchimp Duplicate Contacts Across Audiences
- Klaviyo Duplicate Profiles and Merge Profiles
- Constant Contact Duplicate Contacts and Emails
- HubSpot Deduplication to Merge Duplicate Contacts
- Fuzzy Matching Tool for Names and Companies
- Data Cleaning Software for CSV and Excel Files
- Data Quality Tools and Software Compared
- Entity Resolution Software for Customer Records
- Data Hygiene for Contact Lists and CRM Records
- Excel Data Cleaning Tool Without Formulas
- Data Cleaning Services vs Doing It In House
- Data Deduplication Tools for CSV and Excel
- Address Standardization and Cleansing Software
- CRM Data Cleansing Before Import or Migration
- Salesforce Deduplication and Data Cleaning Tool
- Zoho CRM Deduplication to Merge Duplicate Contacts
- Pipedrive Duplicate Contacts Deduplication Tool
- NetSuite CSV Import With Clean and Deduped Files
- Data Scrubbing Software and Tools for CSV Files
- QuickBooks Online Merge Vendors and Customers From One List
- Merge Customers in QuickBooks Desktop and Merge Vendors
- Salesforce Merge Accounts in Bulk from One Reviewed List
- Salesforce Merge Contacts and Merge Leads From One Reviewed List
- HubSpot Merge Contacts and Companies From a Reviewed List
Clean the file, and be able to show what you changed
Try the demo on your own CSV first. It runs in your browser, it costs nothing, and no card is required.
No card required. Your file never leaves your computer.