How to Migrate Existing Email Subscribers (and Unsubscribes) into Klaviyo

Last updated at:


There are several ways to load existing subscriber lists into Klaviyo. In this article, you will learn how to add these lists into your account and other best practices for getting started with Klaviyo.

Interested in redirecting existing signup forms to Klaviyo instead of migrating an existing subscriber list? Head to our article on redirecting forms instead.

Before Jumping In

To start, we recommend that you maintain one main list in your account, such as a newsletter list. As you import contacts and connect signup forms to Klaviyo, maintaining one primary list will make it easy to manage and communicate with your contacts efficiently.

Our segment builder allows you to create dynamic subsets of your lists that don’t require maintenance. For example, instead of having different signup forms link to multiple lists, have all of your forms point to one list. Then, pass a sign-up source property ($source) that is unique for each form. This way, you maintain one subscriber list and create segments based on this property.

Sync Contacts from Another Email Service Provider (ESP)

If you are migrating from Mailchimp, Campaign Monitor, Constant Contact, MadMimi, or Salesforce Marketing Cloud (formerly ExactTarget) you'll use a built-in integration with Klaviyo to import existing subscriber lists, as well as unsubscribes. To do this, configure the relevant integration.

Navigate to Integrations All Integrations, and filter the Category to Email. Here, you'll see all of our current built-in ESP integrations.


Once your integration is added, your lists will automatically sync and appear in your account's Lists & Segments tab within a few minutes.

All unsubscribed contacts will also sync and go straight to the suppression list in your account.

  • For MailChimp, Campaign Monitor, Salesforce Marketing Cloud (formerly ExactTarget) and MadMimi we automatically create an exclusion list for those that are unsubscribed. In MailChimp, if someone is suppressed in any list, they will be globally suppressed in Klaviyo. In Salesforce Marketing Cloud, if a profile has an inactive status, that profile will be globally suppressed within Klaviyo. Inactive statuses include Bounced, Held, Unsubscribed, and Deleted.
  • For Constant Contact, we only sync a suppression list if they belong to a Constant Contact List ID of do-not-mail.

If you are not currently using an ESP we integrate with, you will need to take a more manual approach (outlined in the next section).

Import Contacts from a CSV File

If you are migrating from an ESP that we do not currently integrate with or have a subscriber list already saved as a CSV or Excel file, you can easily import or copy and paste your subscribers into Klaviyo. If you have your list saved as an Excel file, make sure to save it as a CSV file first.

Your CSV should have the first row formatted as the headings for the columns you intend to upload. You must have a column labeled "Email" or "Email Address." Other columns you may want to include are "First Name" and "Last Name," along with any other custom properties you wish to upload.

When importing a list from another ESP, most platforms have a link to export lists to a CSV or Excel file. If you're having trouble, we recommend reaching out to your current platform for help.

Once you have your list exported, navigate to the Lists & Segments tab in Klaviyo and click on the list called Newsletter. Within this list, if it's empty, choose the Upload Contacts option to import your CSV file.


If you already have subscribers in this list, click Manage List in the upper right and you'll see these same options for how you can add additional contacts to your list.

Then, you can drag and drop your CSV directly into Klaviyo or select it from your files. Alternatively, you can select Upload via copy/paste instead, and copy and paste your list into Klaviyo.


You will be taken to a page where you will review the data you're importing. Select Import Review.


You will then preview how many columns and new properties will exist in your import. If this information is correct and you are ready to complete the process, select Start Import.


Use the Klaviyo API

The Lists & List Management API is used to create and manage lists in Klaviyo. If you're tech-savvy or have a developer on your team, you can use Klaviyo's List API to import existing subscribers.

Load Historic Unsubscribes into Klaviyo

If you did not sync subscribers through one of our built-in ESP integrations, you will want to manually import your historic list of bounces and unsubscribes into Klaviyo.

This step is important for several reasons:

  • To ensure you follow spam laws
  • To keep your email deliverability high by sending to clean lists right off the bat
  • To keep your subscribers happy and make sure you don't email anyone who has opted out

First, prepare a CSV file of bounces and unsubscribes. Once you have this file ready, navigate to the Profiles tab in Klaviyo and click Suppressed Profiles in the upper right.


You will be taken to your account's suppression list where you will see three options: Export CSV, + Add Email Address, and Upload File.


Select Upload File to import your list of bounces and unsubscribes. Note that your file should be formatted as a CSV with a single column or as a text file with one email per line. There is no need to add a title to your one column for emails or add any additional columns.

Additional Resources

Was this article helpful?
123 out of 223 found this helpful