Compare two CSV files: added, removed and changed rows
In short: Load the old export and the new export. Rows are matched on the email address, and you get the contacts added, the contacts removed and, for people in both files, each field that changed, with the old and new value. Limit: Rows are matched by email address only.
Load the old file and the new file, each with an Email column. Rows are matched on the lower-cased address. You get the contacts only in the new file, the contacts only in the old one, and a list of changed fields for people in both, with the value before and after. Columns present in both files are the ones compared.
Price: this tool is free. Checking a whole email list is from $9/mo, and the first 100 checks are free with Google, no card. Check your list free nowSee pricing
Sample result
Two contacts added, one removed and two changed, with three field changes in all.
- Contacts changed
- 2
- Removed
- 1
- Unchanged
- 1
What this means for you
Only the two new contacts need checking before you send.
- Matched on email address
- Added, removed and changed
- Old and new value of each field
- Three CSV downloads
- Compare
- Exports
- CSV
By SimpleVerifier Team · Last updated · Runs in your browser; nothing you paste is sent to us
New contacts are the ones nobody has checked yet.
- Download the added contacts, or use the check button under the result.
- Upload or paste it at /verify. Every address gets a live mailbox check, and the first 100 email checks are free with a Google sign-in, no card.
How do I see what changed between two exports of a list?
- Upload or paste the older export in the first box and the newer one in the second.
- Read the counts of contacts added, removed, changed and unchanged, and which columns were compared.
- Download the added contacts, the removed contacts or the field changes.
- Check the added addresses before you send to them.
Example
- You enter
- An old file of four contacts (one address repeated, one row with no address) and a new file of five contacts with an extra Phone column. One contact's Company changed, another's Company and Title changed, one contact is missing from the new file and two are new.
- You get
- Two added, one removed, two contacts changed with three field changes between them, and one unchanged. Company and Title were compared; Phone is listed as only in the new file. One repeated address and one row with no address in the old file were counted and left out.
- Limits
- Runs in your browser; nothing is uploaded. Files up to 25 MB.
How are rows matched?
On the email address, lower-cased and trimmed. If an address appears twice in one file, the first row is used and the repeats are counted. Rows with no address cannot be matched, so they are counted and left out. A contact whose address changed shows as one removed and one added, not as a change.
Which columns are compared?
Columns whose headers match in both files, ignoring case and spaces. Columns found in only one file are listed so you can see what was added or dropped by the export, but they are not compared. A field counts as changed when its trimmed text differs; "Acme" and "ACME" differ.
What is it good for?
Seeing what a weekly lead export, a scraper re-run or a CRM sync really changed; finding the new contacts to check before sending, so you do not pay to check old ones again (the email list overlap checker and compare email lists look at addresses only); and finding which contacts moved company or title.
Who uses this tool, and for what?
- Cold email senders
- Pull out only the new leads from a refreshed export and verify those.
- Sales ops
- Audit what a CRM sync or an enrichment run changed.
- Agencies
- Show a client what changed between this month's list and last month's.
What can’t this tool tell you?
- Rows are matched by email address only.
- Only columns with the same header in both files are compared.
- A changed address shows as one contact removed and one added.
- Rows without an address are counted but not compared.
Common questions
- Does it handle .xlsx files?
- Yes. Each box takes an .xlsx or CSV file, or pasted cells with the header row first.
- What if the two files use different header names?
- Those columns are not compared. Rename the headers to match in the CSV column editor, then compare again.
- Does it compare rows with no email address?
- No. Without an address a row cannot be matched, so it is counted and left out.
- Does a change of case count as a change?
- Yes, for fields other than the email address. The address itself is compared in lower case.
- Is either file uploaded to SimpleVerifier?
- No. Both are compared in your browser.
A tidy list can still be full of dead addresses.
Extracting, deduplicating and syntax checks all work on the text of an address. None of them can tell whether the mailbox exists. Only the server that hosts it can answer that, through an SMTP check, and that is what the paid product does.
- Upload the cleaned file as it is: CSVs up to 100,000 rows
- A real SMTP mailbox check on every row, with catch-all detection
- Small list? Starter at $9/mo covers 2,500 emails a month, cancel anytime
Plans from $9 a month, cancel anytime, no contract. Sign in with Google and your first 100 email checks are free, no card. The free tools stay free either way.