SMS/MMS: Send messages
UpdatedLearn how to send SMS and MMS messages using Customer.io.
Add SMS/MMS messages to your workflow
Before you can send messages, you need to set up your Twilio account and enable SMS in your workspace.
Drag SMS into your workflow.
Give your message a Name that makes sense to you. Your audience won’t see this name.
Click Settings in your message and update your message’s behavior.
Link tracking is on by default!
Tracked links are long URLs and can take up a lot of space in your message. If you haven’t already, you should enable link shortening or disable link tracking. Learn more.
Click Add Content to write up your message.
In the From field, select the sender ID you want to send your message from.
Want to send from different numbers based on attributes or other criteria?
You can use liquidA syntax that supports variables, letting you personalize messages for your audience. For example, if you want to reference a person’s first name, you might use the variable
{{customer.first_name}}
. to send from different numbers based on attributes or other criteria. Learn more.In the To field, use liquid to set the customer’s phone number attribute—like
{{customer.phone}}
if you store your audience’s phone number in thephone
attribute.(Optional) If you want to send an MMS message, enter a URL of your image (PNG, JPEG, JPG, or GIF) in the Image field. Remember, your image must be smaller than 1.5MB. This increases the character limit of your message to 1600 characters.
Enter the body of your message. If you add links to your message and you want to track them, you’ll need to use a liquid tag. Learn more.
Short links in your preview are for example only
In your message preview, you’ll see links that end in
abc123
. We don’t generate the shortened URL until send time. We show example links to help you see your links in context and check your character count.


Tracking links in messages
By default, we track when people click links in SMS messages by appending your link with code that Customer.io understands. This means that tracked links are long URLs and can take up a lot of space in your message. If you want to keep this behavior, you should make sure that you enable link shortening in your workspace.
If you don’t want to use Customer.io’s shortened links, then you should disable link tracking for your message. You’ll need to do this for each message individually.


You can also enable or disable link tracking on a per-link basis using the {% cio_link url:"https://example.com" track:false %}
liquidA syntax that supports variables, letting you personalize messages for your audience. For example, if you want to reference a person’s first name, you might use the variable {{customer.first_name}}
. tag. The track
parameter is a boolean where true
enables tracking and false
disables it. It’s true
by default.
{% cio_link url:"https://example.com" track:false %}
Require logins if your links include personal information!
Shortened links for your workspace expire after 90 days, and we’ll reuse link paths in new messages. If you link out to personal or sensitive information, you should require that people log in so that you don’t risk exposing sensitive information to people who click your links.
Send a test message
To make sure your SMS works, you can send a test message clicking Send test… in the top right-hand corner of the composer. You’ll see a modal, into which you can enter a phone number to which you can send your message.


Using liquid to select your sender
You may want to dynamically select between multiple Sender IDs at the time each message is sent. Liquid code can be added as a Manual Sender ID to accomplish this. For example, if you wanted to send from a different phone number depending on which Customer Success Manager is assigned to the customer, you could insert a code block such as:
{% if customer.CSM == "stephen" %}
+1647STEPHEN
{% else if customer.CSM == "zack" %}
+1800GOTZACK
{% else %}
+1800CUSTOMR
{% endif %}
Or if you set the phone number as a variable, you could simply use that variable in the From field.
{{customer.csm_phone}}