Move your list between email tools
Pick a source list and a destination list. OpenContact reads the contacts, keeps a copy, and writes them to the new tool. No export file, no upload, no guessing how many arrived.
Plan a migration · See example migrations
How it works
- Connect both tools with an API key or OAuth.
- Choose the lists. One source list and one destination list, or Move a whole account.
- Check what will happen. A preview copies nothing. It shows the source count, how many of the first 100 contacts would be copied, excluded or skipped, which custom fields will be created, and how tags arrive.
- Start. Follow fetched, pushed and failed totals. Pause and resume at any time.
It never makes someone mailable who wasn’t
| Status at the source | What happens |
|---|---|
| Subscribed | Copied into the destination list |
| Unsubscribed, bounced, complained or suppressed | Not added to the list. Excluded at the destination where the tool allows it. Status updated in OpenContact |
| Never confirmed consent (for example Mailchimp pending) | Skipped |
Mailchimp, Mailjet, Brevo, MailerLite, Klaviyo, ActiveCampaign and Kit report each contact’s status. For a source that does not, contacts are copied as before.
Fields and tags come along
Between the seven tools in the matrix above, OpenContact reads the source’s custom fields, creates matching fields at the destination, and converts values to the field type. Fields that already exist are matched by name and reused.
Tags travel with each contact. They are read from Mailchimp and ActiveCampaign. They are added as tags in Mailchimp, ActiveCampaign and Kit, and copied into a text field called tags everywhere else, so you can still build segments.
For other pairs of tools, the email address and name are copied.
Moving a whole account
Each list is matched to the destination list with the same name. Pick another list, or skip one. Lists move one at a time, so the two tools’ rate limits are shared by only one list. If one list fails, the next still starts.
When contacts fail
A contact the destination refuses does not stop the move. It is counted as failed and kept with the reason. When the migration finishes you can download the failed contacts as CSV, or retry just those contacts without reading the source again.
Isolated from your automations
A migration does not run sync rules or email verification, so a move never triggers a welcome flow or sends contacts to an unrelated tool. Check the automations inside the destination tool before you start.
After the move
Sync rules keep both tools consistent from then on, and suppression stays honored in both. Saved segments, automations, forms and templates are not copied. Rebuild them in the new tool.
Questions
Do unsubscribed contacts come back after a migration?
No. They are not added to the destination list, and their status is updated in OpenContact.
Will my destination plan fit the list?
The preview shows the count before you start, and you confirm that the destination plan can take it. Each tool bills you separately.
Can I move from a tool that is not in the matrix?
Yes, between any tools that can both read and write contacts. Only the email address and name are copied.
How long does it take?
It depends on the list size and the two tools’ rate limits. You can watch progress and pause and resume at any time.
Read the migration guide · Explore sync rules · Suppression sync




