Migrating to Iterable? Bring the Suppressions, Verify the Rest
Iterable starts with no memory of your old platform. Its migration guide asks you to bring hard bounces and unsubscribes across yourself, and its deliverability guide recommends validating the list before import. Do both, and the first Iterable campaign goes to addresses that are known to work, from sending domains and IPs Iterable is still learning.
Sources, read 2 November 2026: Iterable's support articles migrating subscribers via CSV uploads, email bounces, maximizing email deliverability, troubleshooting email deliverability, CSV list import best practices and unsubscribing users with soft bounces. The support centre blocked direct loading, so the details come from search-engine copies of those pages.
What Iterable handles and what it leaves to you
| Item | Iterable's behaviour |
|---|---|
| Old platform's bounces and unsubscribes | Not imported for you. Export them and unsubscribe them in Iterable. |
| Mailbox check on import | None described; a validation tool is recommended before import |
| Hard bounce after sending | User unsubscribed from that message channel and the project's other marketing email channels |
| Soft bounce | Not unsubscribed; build a journey or dynamic list (90-day window suggested) |
| CSV limits | Email (or userId) column required, up to two million rows, no special characters in column names |
| Volume | Increase daily volume in steps of up to 25% |
The hard-bounce rule protects you after the damage: the bounce has already happened and counted against your sending reputation. Verifying first removes most of those bounces before they're sent.
Step by step
- Export everything from the old ESP, with status: subscribed, unsubscribed, bounced, complained.
- Build one suppression file. The suppression list merger combines bounce, complaint and unsubscribe exports and dedupes them.
- Keep them out of the subscriber file, and unsubscribe them in Iterable the way its migration guide describes (paste or upload, from the list's menu under Audience, Lists), so a later import or sign-up doesn't email them. Check the channel status afterwards on a few sample users.
- Verify the subscriber file on the verify page. Drop invalid results or add them to the suppression file.
- Shape the CSV: one email column, clean header names, files under two million rows. The CSV import formatter strips special characters from headers; the email list splitter cuts large files.
- Ramp. Send to your most engaged, verified segment first and grow by up to 25% a day, per Iterable's guidance.
- Set up soft-bounce cleanup with the journey Iterable describes, so repeat soft bounces don't sit on the list forever.
What verification can't settle
Iterable's own guide says validation services won't catch every invalid address, and that's right. Catch-all domains accept any address at the server, and Microsoft consumer mailboxes (outlook.com, hotmail.com) often don't answer single-mailbox checks reliably; those come back risky or unknown. Send them after the ramp settles. Verification also says nothing about whether people still want the mail: an old list that verifies clean can still draw complaints, so sunset the long-inactive with a sunset policy.
Where SimpleVerifier fits
Verify the migration file on the verify page; the first 100 checks are free with a Google sign-in. Pro is $39 a month with the first 100,000 checks a month at full speed, then slower, never cut off, with API calls for checking new sign-ups before they reach Iterable. See pricing and verify before switching ESPs for the general migration checklist.
Common questions
Does Iterable verify email addresses when you import them?
Its import docs describe file requirements, not a mailbox check. Iterable's deliverability guidance recommends using a list validation tool before importing, and it offers a Kickbox integration that creates a new list containing only addresses Kickbox marked deliverable.
Do bounces from my old ESP carry over to Iterable?
No. Iterable's migration guide asks you to export hard bounces and unsubscribes from the old service and unsubscribe those users in Iterable, either by pasting them into a free-text field or uploading a CSV from the list's menu under Audience, Lists.
What does Iterable do with soft bounces?
Nothing automatic. Its docs suggest a journey or dynamic list that unsubscribes users who keep soft bouncing, with a 90-day window as a starting point (60 days for stricter hygiene), filtered by bounce reason so temporary problems don't remove good users.
How many rows can an Iterable CSV import have?
Up to two million rows of user data per file. Email-based projects need an email column, userID-based projects a userId column, and column names can't include special characters.
Check your list before you send
Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.