To remain compliant with US SMS regulations, it's important that you obtain proper consent from your subscribers before you start sending them text messages. You cannot simply send to every phone number in your Klaviyo account; someone must explicitly consent to receiving SMS marketing from your brand. Further, email consent does not equal SMS consent.
You can get someone to opt into SMS using signup forms. In Klaviyo, we store consent on every profile that signs up through a form.
Note that if someone agrees to receive SMS marketing messages, this acts as consent for MMS messages as well.
To start, you'll need to build a new form aimed at collecting phone numbers from your subscribers. This will help you expand your reach and grow your SMS list. Then, when someone signs up, a consent timestamp is marked on their profile.
If you want to add SMS subscribers to a list that has double opt-in enabled, you must have first set up SMS. Otherwise someone who subscribes will never receive the text that allows them to confirm their consent.
Use a Signup Form to Collect Phone Numbers
Using the Klaviyo Signup Form Builder, you can create a signup form that asks visitors to input their phone number, or you can add a phone number input field to your existing signup forms. If you're starting from scratch, peruse the Form Library to use one of our pre-built forms as a template. You can sort by Goal = Capture SMS Subscribers to use one of our SMS-specific forms as a starting point.
Learn more about TCPA best practices.
You will be able to configure the following:
The text that a visitor sees above the input.
- Placeholder Text
The text that auto-populates in the input box. Typically, this should give visitors an idea of the type of information you're collecting.
- Profile Property
By default, this will be mapped to Klaviyo's default phone number profile property, but you can change this to any other profile property if you would like. Please note, however, that if you would like to use this property as a phone number in text messages, you must keep the default mapping. When this input is mapped to the phone number profile property, this is where you can update SMS consent, meaning a timestamp verifying consent will be attached to the contact's profile when they submit their number on the form. It is highly recommended that you keep this box checked to ensure that you remain compliant with US SMS laws.
- Default Country
This will apply a default calling code to the beginning of the phone number. Visitors may also change this code according to where they are located, if needed. Please note that SMS messaging is currently only available for US-based contacts.
Indicate if you would like to require someone to input their phone number in order to submit the form.
- SMS Consent
The Collect SMS consent option will automatically be selected. If you don't want to collect SMS consent, select Do not collect SMS consent. Learn more about how to use signup forms to collect consent from your subscribers.
Additionally, you will be able to style the phone number input in accordance with your brand's design. When you've styled and configured the form the way you would like, you can publish it by clicking Publish in the upper right.
You can configure the list a form is connected to by editing the submit button. Please note that if the list the form submits to is double opt-in (which all Klaviyo lists are by default), the subscriber can confirm their subscription by text for both text and email consent, but if they do so by email, they will only be opted into email.
Double opt-in prevents visitors from inputting invalid phone numbers or submitting a number on behalf of someone else without their consent. When someone confirms their subscription by texting back "YES," their consent timestamp will be updated.
Collect Phone Numbers from Existing Subscribers
Using the steps outlined above, clone or create a new signup form with a phone number input field. Next, you can target this form to only show to people who are already on your email list in the Behaviors tab. Under the targeting options, select Target visitors in a list or segment and then check Show to visitors in certain lists and segments. Here, specify that someone is on your main list already.
Because these contacts have already subscribed to your main list, you don't need to include an email input on the form, but it is helpful to avoid phone-only profiles. You may simply delete this block and, when someone subscribes, they will receive a double opt-in confirmation text if your list is set to double opt-in.
Create a Click-to-Text Form
Creating a click-to-text form allows mobile visitors to sign up directly by clicking a button, without having to manually input their phone number.
First, build the form that you would like to display to mobile visitors using the Signup Form Builder. If you need inspiration, you can filter the Form Library by mobile devices only to find our prebuilt mobile forms.
When the button action is configured to subscribe via SMS, you will no longer see the option to edit the Success Message. This is because visitors will be brought directly to their messages app when they tap this button.
Here, you will also be able to view the subscription settings:
- Opt-in keyword
The word that they will text to the destination number (the SMS number that you have configured in your account) to subscribe to the associated list. By default, this word is JOIN, but you can add in your own subscribe keyword(s). If you have several available numbers on your account, the destination number will be automatically selected in priority order of short codes, toll-free numbers, and long numbers; then sorted by newest to oldest.
- Opt-in message
This is the copy that will be sent in the text confirmation message. By default, this will read “Send this text to subscribe to <organization_name>!”, but you can configure the message content. This field allows up to 160 GSM-7 characters (1 message) only. Special characters, including emojis, are not valid.
When someone subscribes via click-to-text form, they will be automatically brought to their messages app with the opt-in message you configure prepopulated. They can change this text, but as long as the opt-in keyword is present, they will be added to your default SMS Subscribers list when they confirm their subscription.
The SMS Subscriber list is automatically created when you finish setting up SMS in your Klaviyo account. If you have deleted this list, create a new list titled “SMS Subscribers” so you can collect consent via text-to-join.
Someone can also provide consent by texting the opt-in keyword (e.g., JOIN) to your SMS sending number. To find your SMS sending number(s), navigate to the organization dropdown menu in the upper right-hand corner and then click Account > Settings > SMS.
Using an Email
To gather consent through an email, create a new email campaign and then open the email template editor.
In the editor, add a text block with content “Text <subscribe_keyword> to <sending_number>.” Be sure to insert an active subscribe keyword and your actual sending number here. (To find your sending number, navigate to Account > Settings > SMS.) Set the block to desktop only.
Next, copy the block and set to mobile only. In this new block, add a link to the mobile only block so recipients have the click-to-text experience. Use link text:
Text JOIN to <sending_number>
Here too, make sure to replace <sending_number> with your sending number. Then send the campaign to your main subscriber list. Note that this link is designed to automatically open a text message, but this will not work with the Gmail app or in Microsoft Outlook; however, anyone can manually do so and text your number to subscribe.
Use the List API
You can also use Klaviyo's v2 List API to collect SMS consent. This is particularly helpful if you want to gather phone numbers for SMS marketing with a non-Klaviyo signup form. For details on how to leverage APIs for SMS, check out our Guide to Collecting SMS Consent via API. We recommend that you be familiar with the List V2 API before you begin.
How SMS Consent Is Stored in Klaviyo
If an identifiable email profile inputs a phone number different from the one they have listed for SMS in their profile, the new number will override the current SMS phone number. This action will strip the SMS consent from the phone number in the profile. As most people only have one phone number, this should not be a common occurrence for your customers.
Standard Signup Form
When someone signs up to receive SMS messages from your brand, this consent is stored in the Channels section of their profile page along with the following details:
The method by which they subscribed.
If they signed up via a Klaviyo form, the ID of the form they signed up through. Learn more about how to find a form's ID.
- Form Version
This identifies the iteration of the form that a particular subscriber saw. Klaviyo keeps a record of the exact text and language that was used for each version of a form you create, which you can request from support if necessary. For example, if you see "2" as the consent version, this means that the subscriber signed up to the second variation you made of the form.
This is a timestamp recording precisely when they submitted the form or, if the form is double opt-in, when they granted consent.
Similar to the form consent details outlined above, click-to-text consent is stored in the Channels section of a contact's profile page with three key details:
The method by which they subscribed which, in this case, will read "text."
- Consent text
The opt-in message that someone sent to confirm their subscription.
This is a timestamp recording precisely when they sent the confirmation text.
Additionally, three profile events are tracked when someone subscribes via a click-to-text form:
- Sent SMS
When someone texted your destination number to subscribe.
- Consented to Receive SMS
When someone consented to receive SMS messages.
- Received SMS "Thanks for Subscribing"
When someone receives your SMS confirmation message, which can be edited at the account-level.
Export SMS Consent
There may be instances in which you would like to export the consent timestamp from one of your SMS customers. You can do this by first navigating to the contact's profile page.
Then, at the bottom of the profile page, click Export Profile.
Then, you will be prompted to head to your Downloads tab. When the profile is finished downloading, you will see the option to click Download.
This download contains a .zip file with JSON logs of all the customer properties and events associated with that particular profile.