SMS
Sending SMS and MMS text messages with OneSignal.
SMS and MMS messages (commonly known as "text messages") are highly engaging, real time messages that get delivered to your user's device via a phone number.
If you have not setup SMS yet, see SMS Setup to get started.
Overview
This guide explains how to send SMS and MMS messages with OneSignal along with important concepts like costs, design, and features.
Audience
Optional: Input a Message Name for internal recognition of the message.
Your audience is the Segment(s) of users in which you wish to include and exclude from receiving this message.
There are two options for selecting which users are eligible to receive messages.
- Send to "default segment" - Displays the segment name for default segment. Otherwise, this defaults to all "Subscribed Users". See Segments for details on setting a default segment.
- Send to Particular Segment(s) - You can both include and exclude users within segments from receiving the message. Any users in the segments listed under should not are excluded and will not get the message.
Targeting multiple segments:
- Segments are "OR" relations; all users in all segments will be included or excluded.
- OneSignal will automatically filter out duplicate users so they only get one message.
SMS & MMS can be expensive
Before you start sending SMS or MMS, it is important to be aware of how these are priced. Twilio (and all carriers) charge for the number of "segments" that a single message gets split into (these are not OneSignal's segments).
Depending on the amount of characters used in the message and the type of character encoding, carriers will split the message into multiple "message segments". A single "message" will then be charged based on the number of "message segments". See how SMS character count is calculated here.
OneSignal's form will help estimate the number of characters used so you can measure the costs of your SMS. More details below.
Content
SMS is very limited when it comes to their design. They do support both text and emojis, but not bold, italics or other formatting options.
Character encoding and emojis
A normal text message character count is limited to 160 characters for GSM-7 encoding and 70 characters for UCS-2 encoding.
- GSM-7 encoding allows for more characters to be sent. It supports numbers, English alphabets, some Greek characters, and some special characters. A list of GSM-7 supported characters can be found on Wikipedia or on Twilio.
- UCS-2 encoding is used for other languages or characters such as emojis. Also, MMS messages are sent via UCS-2 encoding.
When creating your SMS/MMS messages it is important to track how many and what type of characters you use. Depending on the encoding of the characters, you may be sending more than one "message segment" to all your users which will increase costs. OneSignal keeps this easy by telling you how many messages you will send based on the characters used and their counts.
When creating the message within your OneSignal dashboard you will see the estimated amount of messages (message segments) that will be sent based on the character count.
As you add more characters and/or characters with the UCS-2 encoding, then multiple messages may be needed. Instead of sending 1 message to x number of devices, you could be sending 2+ messages which can increase your spend.
URLs
You can send URLs within SMS messages. Shortening those URLs is recommended. However, using public URL shorteners like TinyUrl or Bitly have been forbidden by many carriers due to bad actors. If you want to send shortened URLs, it is recommended to use your own dedicated short domain. More details.
Personalization & dynamic content
OneSignal supports tags to personalize your text messages. For example, you can personalize SMS to each user with the {{ first_name | default: ‘default_value’ }}
tag if you have added that previously. See Message Personalization for more details.
Dynamic Content enables editors to compose a single message that is dynamically personalized for each user who receives it. It is supported in Email, SMS, and Push Notification messaging.
Note: Personalizing message content can result in the SMS exceeding the character count limit. This can result in additional cost to you. Please test your SMS content before sending it.
Media
Multimedia Message (MMS). You can add up to 10 media URLs in an SMS with a total message size of less than 5MB. The following media types are fully supported.
- image/jpeg
- image/gif
- image/png
Twilio also accepts other media formats, but the content will not be modified for device compatibility.
Note: Twilio only supports MMS in the US and Canada.
Send Test SMS
To test how your SMS content looks on different devices or how the message is segmented, please use the "Send a Test SMS" functionality above the message preview. Simply enter your test phone number to receive the SMS content.
Tag Substitution Limitation
Tag Substitution will not work with Send Test Message. You will need to setup a segment to send to yourself to test or use the API.
Key considerations
Test messages will be charged against your Twilio account balance.
For Twilio trial accounts, recipient phone numbers need to be registered on Twilio before they can receive SMS.
Delivery Schedule
SMS & MMS can be sent immediately or scheduled up to 30 days in advance.
When ready, click Review & Send to review your message and Send Message.
If you need more time or help, you can Save as Draft to come back to it later. A Draft is not reusable like a Template.
SMS Tutorial Complete!
You are now ready to collect more phone numbers and continue sending!
Updated about 1 month ago