Merge Two Contact Lists Into One

Paste two lists together and you get a second header row, the same people twice, and records that disagree. This example works through a fictional merge and keeps every disagreement visible.

ℹ️ A worked example you can check. The before and after tables below were produced by the free tool on this site from a fictional sample file. Open the same file yourself and you will get the same result.

What Usually Goes Wrong

• The second list's header row sitting in the middle of the file
• The same person in both lists, identical
• The same person in both lists, with one list missing the phone number
• The same person with two different companies
• Different capitalization between the two sources

The Sample File, Before

10 rows of fictional data with the problems above. Every person and company is invented.

Open This File in the Workspace Download the CSV

Merge Two Contact Lists Into One sample before cleaning
NameEmailPhoneCompany
Amara Nwachukwuamara@nwachukwu-example.com+14045550121Nwachukwu Example Co
Björn Sandvikbjorn@sandvik-example.no+4722555012Sandvik Example AS
Clara Whitcombeclara@whitcombe-example.co.ukWhitcombe Example Ltd
Diego Fuentesdiego@fuentes-example.es+34915550124Fuentes Example SL
NameEmailPhoneCompany
Amara Nwachukwuamara@nwachukwu-example.com+14045550121Nwachukwu Example Co
clara whitcombeClara@Whitcombe-Example.co.uk+442079460125Whitcombe Example Ltd
Diego Fuentesdiego@fuentes-example.es+34915550124Fuentes Holding Example SA
Esme Laurentesme@laurent-example.fr+33155550126Laurent Example SARL
Björn SandvikBJORN@sandvik-example.no

How to Clean It

1. Paste the second list under the first in one sheet, with the same column order, and save as CSV. Keep both originals.
2. Run the combined file with duplicates, lowercase emails, Merge duplicate emails and name capitalization.
3. Read the review list for pairs that disagree.
4. Decide each pair in the workspace's Review step: keep one row, or keep both.
5. Export the cleaned file and the change log, and keep the log with the originals.

Prefer the command line or an AI agent? The same result comes from smartdata-clean clean merged-lists.csv --dedupe-rows --lower-emails --merge-duplicate-emails --names. See tools for agents.

The Result

10 rows in, 4 removed, 6 out. The stray header and the identical repeat are removed. Björn's second row is dropped because it only had an email, which the first row already has. Clara's first row is dropped in favour of the more complete one with her phone number. Diego stays twice: the two lists name different companies, and only you know which is right.

Merge Two Contact Lists Into One sample after cleaning
NameEmailPhoneCompany
Amara Nwachukwuamara@nwachukwu-example.com+14045550121Nwachukwu Example Co
Björn Sandvikbjorn@sandvik-example.no+4722555012Sandvik Example AS
Diego Fuentesdiego@fuentes-example.es+34915550124Fuentes Example SL
Clara Whitcombeclara@whitcombe-example.co.uk+442079460125Whitcombe Example Ltd
Diego Fuentesdiego@fuentes-example.es+34915550124Fuentes Holding Example SA
Esme Laurentesme@laurent-example.fr+33155550126Laurent Example SARL

What the tool left for you

The tool listed these 2 items for a person to check:

• Row 9 shares an email with row 5 but has different Company. Both rows were kept. Decide which is right.
• Name capitalization was applied to "Name". If that column holds company names or acronyms, check the changes in the log.

Checked, not just claimed

The original file, the cleaned file and the change log were run through the separate verifier. Result: PASS.

✓ Removed rows with a valid, verified reason: 4 of 4
✓ Rows: 10 in, 4 removed with a logged reason, 6 out
✓ Cells compared: 24; changed: 2; every change matched to the log: yes
✓ Log entries: 7; not matching the files: 0

The verifier confirms that the change log explains every difference between the two files. It does not judge whether each cleaning choice suits your situation; that part is yours.

The cleaning report

Where a Tool Stops and a Person Starts

When lists have different columns, different ID schemes or thousands of conflicts, the merge needs rules agreed with you first and a review pass afterwards. That is the Complex Cleanup service.

See Service Levels From $19 How We Check Our Work

The tool never copies a value from one row into another. It removes a row only when everything in it is already in the row that stays.