Guide to Uploading a List of SMS Contacts

Last updated at:


If you are migrating over from another SMS provider or already have an existing list of SMS subscribers, you can upload these to Klaviyo to start building out your SMS marketing strategy. 

Please note that it is required that you have previously obtained consent from these subscribers, otherwise, you will not be able to text them. It is against Klaviyo's Terms of Service and SMS compliance laws to market to contacts who have not explicitly opted-in to receive SMS communication from your business.

If you're not sure if you've collected SMS consent, follow our guide to acquiring SMS subscribers for best practices around obtaining consent from contacts that you may already have in your account.

Before You Get Started

Before uploading SMS contacts to a list, turn off any flows that are triggered by: 

  • The list you are importing to
  • The Consented to Receive SMS metric

The reason for this is that once you import these contacts, they'll be immediately scheduled for flows triggered by this list or metric. This can lead to a less-than-ideal customer experience, as these flows are typically targeted to new subscribers, whereas your imported contacts subscribed some time in the past. From their point of view, if they subscribed a year ago and then suddenly get a welcome message, this can be a cause for concern. It's better to avoid this by simply turning off such flows. To do so, you can bulk update the flow actions to either manual or draft mode. 

After importing, wait for at least one hour before turning your flows live again. 

In addition, check your available sending numbers in Account > Settings > SMS. You must have a sending number for every country that you want to upload SMS consent. For instance, if you are trying to upload consent for profiles in Canada and the UK, you must have both a toll-free number and alphanumeric sending ID. 

Format Your List of SMS Contacts

You will need to import your file of SMS contacts as a CSV or via copy and paste from a CSV or Excel sheet. Note that currently, you cannot quick add SMS subscribers.

Required Information for an SMS Import

There are two key data points the CSV file must have, represented by headers:

  • Phone Number (required)
    A contact's phone number must be in the E.164 (e.g., +12345678910), RFC966 (e.g., +12-34-567-8910), or E.123 national (e.g., 12345678910) or international (e.g., +12 345 678 910) formats.
  • Country (required)
    It's important to indicate the country (e.g., USA, United States, or US) for the phone number. You can only import consent for contacts in countries where Klaviyo SMS is available. Having a column labeled "Country" is the best practice, but the import will also work if you add the country code to the phone number instead (e.g., +1 for the USA). To do so, add an apostrophe and a plus sign before the number so that it's formatted correctly (e.g., '+12345678910). 

Optional Information for an SMS Import

For SMS specifically, it's helpful to include the consent timestamp as one of your columns. Note that it must be formatted in one of Klaviyo's accepted datetime formats (e.g., 2019-09-01 13:34:08+00:00). If you do not have a timestamp, you will need to update the consent status.

We also recommend including the profile's email address, if available.

The following examples are both acceptable formats for the CSV file. 


You may also add additional headers to map data to any default or custom properties, including first and last name, birthday, etc. Then, follow the instructions outlined in our general guide to importing lists to add your contacts to Klaviyo.

Choose the List

Next, go to your Lists & Segments tab and select the list you want to add your profiles to. 

Click Manage List and select Import Contacts from the dropdown. 


Next, choose your CSV file to start the upload.

Map Your Data

After you select your list, you will be brought to the Field Mapping page. Your phone number header will automatically map to Klaviyo's Phone Number property. 


If you uncheck the SMS Consent Timestamp box during the mapping process, you will be able to upload your list of contacts successfully, but won't be able to text these contacts until the SMS Consent Timestamp field has been added.


Additionally, if you attempt to upload a list with phone numbers but without an SMS Consent Timestamp column, you will be prompted to update the consent status of these contacts before you finish importing the list. You may proceed through this process without adding a consent timestamp, but you will not be able to text these contacts.

Once you are satisfied with how the fields are mapped, click Import Review to proceed to the final stage of the import process.

Update Consent Status

If you do not have SMS Consent Timestamps in your CSV file, you will still be able to update the consent status. It is imperative that you only do this if you have, at some point, explicitly received consent from these contacts. Otherwise, you will be in violation of Klaviyo's Terms of Service and TCPA laws. If you are confident you have previously received consent, click Update SMS Consent.


Review the modal carefully. If you check I acknowledge that the profiles in this import have provided explicit SMS consent, you are verifying that you have previously obtained consent from these contacts, via another SMS platform or otherwise, and are willing to accept the legal implications of texting these contacts. 


Once you check this box, you may click Update SMS Consent once more. You will be brought back to the Field Mapping page, where you will see a row for SMS Consent Timestamp. For all contacts, this field will be populated with the timestamp at which you clicked to confirm Update SMS Consent. You will not be able to edit or update this field.

If you decide that you don't want to proceed with updating the consent status of these contacts, you can click Cancel SMS Consent Update.

Review Your Import

On the final page of the import process, you will be able to review how many columns you are importing and how many you are skipping from the original CSV file, as well as if SMS consent has been updated (if applicable).

Once all the numbers are imported, Klaviyo will either create a new profile or associate the data to an existing profile. For instance, if you import a phone-number-only CSV, Klaviyo will look for profiles with the same phone number, update that profile's SMS consent status, and include any other profile properties. 

Additional Resources

Was this article helpful?
118 out of 187 found this helpful