The same email address is in my list twice
A contact list contains what is obviously the same person more than once. The addresses look identical until you notice the capitalisation, or a stray space, or that one of them is wrapped in a display name.
Why this happens
- Exact string comparison is case-sensitive, and email addresses are routinely written in whatever case the person typed. “Jo@Northwind.co” and “jo@northwind.co” differ by two characters and are the same mailbox.
- The specification is partly to blame for the confusion. The domain half is definitively case-insensitive; the local half, before the at sign, is technically allowed to be case-sensitive, and no mail provider anybody actually uses treats it that way. So the pedantic reading says these might be two people and the practical reading says they are one.
- Display wrappers cause the rest. A field exported as “Jo Smith <jo@northwind.co>” is not an email address, it is an address inside a label, and it will not match the bare form no matter how you compare them.
- The consequence is not just an untidy list. Two records for one person means two emails sent, which is the thing most likely to get a sending domain complained about.
What to do right now
- Lowercase and trim before comparing anything. That one step collapses the large majority of apparent duplicates in any contact list.
- Strip display wrappers first, so that what you are comparing is the address rather than the presentation of it.
- Decide which record wins per field rather than picking a row. The older record often has the better company name and the newer one the better job title.
Stopping it on the next file
An email field is stored lowercased, so the case a sender happened to type stops being a difference at all. Marking it unique then compares without regard to case, which means “Jo@northwind.co” arriving after “jo@northwind.co” is caught and named against the row it duplicates rather than added. Across deliveries the same field is what makes three partner lists merge into one contact per person.
The contact list template is a sheet with those rules already set, if you want to see the shape of one before building your own.
Other things that go wrong
Define the sheet once
Name your fields, and every file after that is matched to them and checked cell by cell before a row is allowed to land.