Finding and merging duplicates
Click Analyze in the list header. The checks run as soon as the panel opens, and duplicates are one of the categories. Analysis runs automatically the first time you open the list; click Re-run Analysis to refresh it after you've made changes. It checks the whole list against itself and groups rows that look like the same contact.
Duplicate checks#
- Duplicate Email — same email address (case- and whitespace-insensitive) and the same person. An address shared by different names, or a role mailbox like info@, is reported as Shared Email instead and has no Fix.
- Duplicate Name + Company — same first name, last name AND company (legal form, accents and umlaut spellings ignored: "Müller / Acme GmbH" matches "Mueller / Acme AG"; rows with different LinkedIn profiles are not flagged).
- Duplicate LinkedIn — same LinkedIn profile (country subdomains like
de., mobile links, sub-pages and?queryparts ignored; a company page in a person column is not a duplicate). - Duplicate Phone — same phone number for the same person (formatting
and extensions ignored:
+49…and0049…are the same number). A number shared by different names is a switchboard and is reported as Shared Phone without a Fix; work-phone columns are never checked. - Sparse Name Duplicate — same first + last name where one row has no email, company, LinkedIn URL or phone at all (a "ghost" entry) and the other row does — possibly the same person, an info-level guess; rows whose city, country or job title disagree are not flagged. Check these rows before merging.
- Similar Name + Company — catches typos, accents and legal-suffix differences (e.g. "Johnathan Smith / Acme Inc" vs. "Jonathan Smith / Acme GmbH") that the exact checks miss; short names must match exactly, "Michael" and "Michaela" are two people. This one only flags rows for you to review; it has no Fix.
Each check only runs if your list has the columns it needs (an Email column for Duplicate Email, First Name + Last Name + Company for Duplicate Name + Company, and so on). A check card shows how many rows are affected.
Merging duplicates#
Click a duplicate check to select its rows and review them. To merge, open the Fixes category in Analyze and click Fix next to the duplicate check. Fix applies to every group of matches for that check in the whole list. For each group ListPlus:
- Keeps the most complete row (the one with the most filled-in fields, prioritizing email, name, company, job title, phone and LinkedIn) as the surviving row.
- Copies any value the surviving row is missing from the other rows in the group, so you don't lose data that was only on a duplicate.
- Marks the other rows in the group as Ignored — they leave the working list but are not deleted.
A confirmation message reports how many groups were merged, how many rows were removed (ignored, not deleted), and how many fields were filled in from the ignored rows.
Review before you fix. A merge only touches the rows the check reported: shared inboxes and switchboard numbers are reported separately as Shared Email / Shared Phone and are never merged. Sparse Name Duplicate is a guess, so look at those rows first. Fix all in Fixes also runs the duplicate merges, so fix duplicate checks one at a time.
Saving and undoing#
A merge is saved automatically: both the ignored duplicate rows and the field values copied onto the surviving row. There is nothing to click.
To undo a merge, click the Ignored chip in the status bar, or run Show Ignored Rows from Commands ⌘K, then select the rows and click Restore (or right-click → Restore with the number of rows). This brings the ignored rows back into the list; it does not undo the field values that were copied onto the surviving row. To take those back, press ⌘Z / Ctrl+Z (or click Undo in the list header) right after the merge, within the same session — or edit them back by hand.
Cost#
Finding and merging duplicates inside a list is free — no credits are charged.
Merging duplicates across lists#
The Duplicates checks only compare rows inside one list. To combine two lists, drag one list card onto another on Home to open Consolidate Lists. The dragged list is the Source and the one you drop it on is the Master. Choose Create New List (the originals stay unchanged) or Update Master In-Place, then Map Columns. In the Duplicates step, choose Keep all rows or Skip duplicates, and under Match on column pick a column such as Email. The wizard shows how many source rows already exist in the master before you click Consolidate. Skipped rows are left out, not merged into the existing row. It's free, but the added rows count toward your plan's record limit.
Adding contacts without creating duplicates#
Adding a contact to a list from Person Search merges into an existing row (matched by email, LinkedIn URL, phone, or name and company) instead of creating a duplicate. Segment Search does not do this: adding the same page of results to a list twice creates duplicate rows, because Segment Search always adds new rows. Run the Duplicates checks afterward to clean those up.
FAQ#
What duplicate checks does ListPlus run?#
The Analyze panel's Duplicates category checks for matching email, matching LinkedIn URL, matching phone number, matching first name + last name + company, and same first/last name where one entry has no other identifying data. A "Similar Name + Company" check also flags close matches (typos, accents, legal suffixes) for manual review, and Shared Email / Shared Phone point out an address or number that several different people use.
Where do I see duplicates in my list?#
Open the Analyze panel in the list header. It runs automatically when the list opens and shows a Duplicates card with the number of affected rows for each duplicate check.
What happens when I click Fix on a duplicate check?#
ListPlus finds every group of matching rows for that check across the whole list, keeps the most complete row in each group, copies any values that row is missing from the other rows in the group, and marks those other rows as Ignored so they leave the working list (they are not deleted). Review the rows first — only the rows the check reported are merged, and an address or number that different people share is reported as Shared Email / Shared Phone and never merged.
Which row's data wins when duplicates are merged?#
The row with the most filled-in fields is kept, weighted toward email, name, company, job title, phone and LinkedIn. Any field left empty on that row is then filled in from the most complete other row that has a value.
Does merging duplicates cost credits?#
No. Finding and merging duplicates within a list is free.
Can I undo a duplicate merge?#
Yes for the ignored rows: click the Ignored chip in the status bar (or Show Ignored Rows from Commands ⌘K), select the rows, and click Restore to bring them back. Field values that were copied onto the surviving row during the merge are not reverted by Restore — undo them with ⌘Z / Ctrl+Z right after the merge (same session), or edit them back manually.
Do I need to click Save after merging duplicates?#
No. The merge is saved automatically — the ignored duplicate rows and any empty fields it filled in on the surviving row alike.
What does the Similar Name + Company check find?#
It catches near-duplicates the exact checks miss — typos, accented letters, and different legal suffixes (GmbH vs Inc) on the same company. It only flags rows for you to review; there is no Fix for it.
Does merging two lists remove duplicates?#
Consolidate Lists (drag one list onto another on Home) has its own "Duplicates" step: choose "Skip duplicates" and pick a column (such as Email) to match on, and it won't add source rows that already exist in the master list. This is separate from the in-list Duplicates checks and doesn't merge field values — it just leaves matching source rows out.
Why did adding contacts from Segment Search create duplicates but Person Search didn't?#
Adding a contact from Person Search merges into an existing matching row instead of creating a new one. Segment Search always adds new rows, so adding the same page of results twice will create duplicates — run the Duplicates checks in the list afterward to merge them.