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).
- Duplicate Name + Company — same first name, last name AND company (accents ignored, so "Müller" matches "Muller").
- Duplicate LinkedIn — same LinkedIn URL (trailing slash and
?queryparts ignored). - Duplicate Phone — same phone number (formatting ignored:
+49…and0049…are treated as the same number). - 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 — often the same person entered twice, so check these rows before merging.
- Similar Name + Company — catches typos, accents and legal-suffix differences (e.g. "Jon Smith / Acme Inc" vs. "John Smith / Acme GmbH") that the exact checks miss. 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 Quick 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.
- Hides the other rows in the group by marking them Ignored — they disappear from the list view but are not deleted.
A confirmation message reports how many groups were merged, how many rows were removed (hidden, not deleted), and how many fields were filled in from the hidden rows.
Review before you fix. Two different people can share a name, a company phone number or a shared inbox such as info@, and a merge only compares that one field. This matters most for Sparse Name Duplicate and Duplicate Phone. Fix all in Quick fixes also runs the duplicate merges, so fix duplicate checks one at a time.
Saving and undoing#
Hiding the duplicate rows is saved automatically in the background — no need to click Save for that part. However, any field values copied onto the surviving row are regular cell edits: they show as unsaved changes until you click Save in the list header, the same as typing into a cell yourself.
To undo a merge, click the Hidden rows entry (with a count) below All in the Sublists panel, or run Show Ignored Rows from Commands ⌘K, then select the rows and click Restore (or right-click → Restore Rows). This brings the hidden rows back into the list; it does not undo the field values that were copied onto the surviving row — edit them back by hand if needed. If you haven't saved yet, the filled-in fields can still be discarded with All → Revert in the Changes panel.
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.
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 hides those other rows (marks them Ignored) so they no longer show in the list. Review the rows first — a merge only compares the one field the check matches on, so two different people can share a name, a phone number or an inbox like info@.
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 hiding part: open the Hidden rows entry in the Sublists panel (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 automatically reverted — edit them back manually, or use All → Revert in the Changes panel before you save.
Do I need to click Save after merging duplicates?#
Hiding the duplicate rows is saved automatically. But if the merge filled in any empty fields on the surviving row, those field changes are unsaved until you click Save in the list header, just like a normal cell edit.
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.