← All guides

Mailchimp import: fixing invalid and duplicate emails

The Importly team · Published 2026-08-22 · Updated 2026-08-23

Mailchimp is the strictest of the mainstream tools about what it will let into an audience, and deliberately so: its deliverability depends on not sending to bad addresses. So when it tells you "we couldn't import some of your contacts", it usually has a good reason.

Here is how to read the rejections.

Invalid addresses

Mailchimp validates the format of every address and rejects anything malformed. The overwhelming majority of these are not typos in the address itself but artefacts of the file:

  • Trailing or leading spaces — invisible in Excel, fatal to the validator.
  • Two addresses in one cell, separated by a comma or a slash.
  • Text around the address: Jean Dupont <jean@exemple.fr>.
  • Non-breaking spaces, which arrive when the list was copied from a web page or a PDF.

The fix. Run =TRIM(CLEAN(A2)) over the email column and paste the result back as values. That alone clears most of them. Then sort the column alphabetically — malformed entries cluster visibly at the top and bottom.

Duplicate addresses

Email is the unique key of a Mailchimp audience. Importing the same address twice does not create two contacts: the second row updates the first, field by field. Blank cells in the later row do not overwrite existing values, but filled ones do.

This means duplicates rarely produce a visible error — they quietly produce wrong data. If your two rows disagree on the first name or the company, the last one in the file wins.

The fix. Deduplicate before importing and choose which row survives on purpose. In Excel: sort so the most complete or most recent row comes first, then Data → Remove Duplicates on the email column, which keeps the first occurrence.

Contacts that were unsubscribed or cleaned

This is the one that confuses people most, because the addresses are perfectly valid.

You cannot re-import someone as subscribed if they previously unsubscribed from that audience, or were cleaned by Mailchimp after hard bounces. It is a compliance rule, not a bug, and there is no setting to override it. The contact has to opt in again themselves, through a signup form.

Cleaned addresses are also worth understanding: Mailchimp marks an address as cleaned after a hard bounce or repeated soft bounces. Re-importing it does nothing, and if the same dead addresses keep reappearing in your exports, that is a problem in your source system rather than in Mailchimp.

Dates in the wrong format

Mailchimp date merge fields follow the format set on the field itself — MM/DD/YYYY by default. A European file full of 03/04/2026 will import without error and be silently wrong by several months.

The fix. Either set the merge field's format to match your file in Audience → Settings → Audience fields and *|MERGE|* tags, or convert the column to YYYY-MM-DD before importing.

Tags that do not split

Tags go in a single column, comma-separated. Because the file is itself comma-delimited, the cell must be quoted:

"vip,newsletter,paris"

Excel handles the quoting for you when the cell content contains commas — but if you build the CSV by hand or with a script, forgetting the quotes shifts every subsequent column by one.

Address fields

The address merge field is the most fragile part of a Mailchimp import. It expects its components in a defined order — street, city, state or region, postal code, country — and a partial address is often rejected outright rather than partially filled.

If you do not send physical mail, the pragmatic answer is not to import addresses at all.

Encoding

The file must be UTF-8, otherwise accented names arrive as Prénom. In Excel, use Save as → CSV UTF-8 (Comma delimited), which is a separate entry in the format list from the plain CSV.

Pre-flight checklist

  • Email column trimmed and cleaned
  • Duplicates resolved, keeping the row you actually want
  • Previously unsubscribed and cleaned addresses removed from the file
  • Dates matching the merge field's format, or converted to YYYY-MM-DD
  • Tag cells quoted
  • Saved as CSV UTF-8

A note on where the list came from

Everything above assumes the list is yours and the people on it agreed to hear from you. Mailchimp enforces this at the account level, not just at import: a purchased or scraped list produces bounces and spam complaints, and the account gets suspended. Cleaning a bad list does not make it a good one.

When it's the same export every month

For a one-off migration into a new audience, the manual pass above is an hour's work.

For the export you push every month from your CRM or your e-commerce platform, Importly does it repeatably: it maps your columns to Mailchimp's merge fields, trims and lower-cases the addresses, drops duplicates and invalid formats, normalises dates, and gives you a file Mailchimp accepts without a rejection summary. Save it as a profile and the next export follows the same rules.

Clean your first export free →

Set up the Mailchimp profile →

Stop reformatting exports by hand.

Try Importly free