Skip to main content
SMS and MMS messages (commonly known as “text messages”) are highly engaging, real-time messages that reach your user’s device via their phone number. They are especially effective for time-sensitive offers, transactional alerts, and personalized engagement.
To comply with U.S. carrier regulations, proper consent and registration (e.g., 10DLC or toll-free) are required before sending SMS or MMS messages.

What you can do with OneSignal SMS

  • Send marketing and transactional messages from the Dashboard or via the API
  • Create automated multi-channel flows with Journeys
  • Precisely target users using Segments, filters, or user data
  • Personalize content with user attributes and Dynamic Content
  • Connect with CRMs & tools like HubSpot, Mixpanel, Amplitude, Zapier, and more

SMS setup

Before sending SMS, follow these quick setup guides:

SMS opt-in


Features & use cases


Analytics

Measure performance and optimize engagement:

Send SMS & MMS

You can send messages in several ways based on your needs. Steps for sending messages with the OneSignal dashboard:

Select the message channel

  • On the left sidebar, select + Create… > SMS or at the top right corner, select New Message > New SMS.
  • You can also navigate to Messages > SMS to see previous dashboard-created messages.

Send new message options in the OneSignal dashboard.

Choose a composition method

Start from scratch or use pre-built Templates.

Set a name and label

  • Add internal tracking metadata.
  • API equivalent: name

Set targeting audience

The users eligible to receive the message. You can include and exclude Segments to target specific users.
  • Send to default segment: Defaults to all “Subscribed Users” if none set.
  • Send to specific segments: Include and exclude segments explicitly. Multiple segments have an “OR” relationship; duplicate Subscriptions are automatically removed.

Name, label, and audience segment selection interface

Targeting methodDashboardAPI
Segments
Filters (API only)
Aliases (API only)

Schedule and delivery options

SMS delivery scheduling options

  • Scheduled Delivery: Send at a specific time up to 30 days in advance (send_after)
  • Throughput: All text messages are subject to a throughput rate (e.g. 1 message per second). Throughput is determined by the type of sender you are approved to send from. If you need a higher throughput, contact support@onesignal.com with your expected throughput.

Content

Carrier pricing is based on the number of message segments which depend on:
  • The total number of characters in your message
  • The type of character encoding used
Messages with emojis or personalization may use UCS-2 encoding, which significantly reduces the character limit per segment.Always review the estimated character and segment count shown in the OneSignal dashboard to avoid unexpected costs.
SMS supports plain text and emojis. Formatting like bold and italics is not supported.
  • Personalizing messages may increase the character count, causing your SMS to exceed the limit and be split into multiple segments—leading to higher costs.
  • Always test your SMS by sending it to yourself before sending it to your audience.

Character encoding and emojis

  • GSM-7: Up to 160 characters per segment; supports basic Latin characters and symbols.
  • UCS-2: Up to 70 characters per segment; used for emojis and non-Latin scripts.
When composing your SMS/MMS messages, keep track of:
  • The number of characters used.
  • The type of encoding required.
  • Since longer messages are split into multiple message segments, this can increase costs.
  • To avoid unexpected charges, monitor character usage and message segmentation in the OneSignal dashboard before sending.

Example uses GSM-7 encoded characters, likely sending 2 segments.

Example uses UCS-2 encoded characters, likely sending 3 segments.

SMS messages support clickable URLs, but space is limited—so shortening your links is essential. However, do not use public URL shorteners like TinyURL or Bitly. These are often flagged or blocked by mobile carriers, which can prevent your messages from being delivered. To ensure reliable delivery and track user engagement, OneSignal provides a built-in URL shortener that generates carrier-safe, trackable links. You can create these links in the dashboard or via the API.

Media

You can include up to 10 media URLs per MMS, with a total size under 5MB. Supported types:
Twilio only supports MMS in the US, Canada, and Australia.

MMS media attachment interface


You are now ready to collect more phone numbers and continue sending!