Menu

Expand
Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

What to Know Before Sending International SMS

In this guide, we’ll introduce important concepts that you should know before sending SMS internationally. Awareness of these concepts will help you determine your use case before you begin building with Twilio.

If you already have your use case in mind, you can check the country-specific guidelines for the places in which you intend to send SMS with Twilio.

What kind of content will you be sending?

Depending on where you plan to send SMSes, the content of your messages will determine how it is sent.

A2P vs. P2P Messaging

Wireless carriers treat Person-to-Person (P2P) and Application-to-Person (A2P) traffic differently in terms of the type and volume of traffic allowed. It is important to know in advance which type of messages you will be sending to avoid carrier filtering.

Application-to-Person (A2P)

A2P messaging is used for one-way SMS where the sender does not expect the recipient to reply. Common examples of A2P messaging are marketing messages, 2-Factor Authentication (2FA), and appointment reminders.

Person-to-Person (P2P)

P2P messaging happens when two or more people are speaking back-and-forth to one another over SMS. Common examples of P2P messaging include customer service messages, texting with a rideshare driver, and communicating with a food delivery courier about the status of an order.

For your use case:

  • Determine if you are going to send A2P or P2P SMS messages internationally.

Encoding type: GSM-7 vs. UCS-2

The characters and length of your message determine the number of message segments that Twilio sends to the various wireless carriers. Because Twilio bills per message segment, this can affect your pricing.

GSM-7 is the default SMS encoding standard, which packs the most commonly used characters into 7 bits.

You can find the full GSM-7 character set here. Non-GSM characters include characters like smart quotes, emoji, and Japanese kanji. There is a limit of 160 characters per message segment encoded with GSM-7.

UCS-2 is the standard used to represent any non-GSM-7 characters. UCS-2 represents all characters with 2 bytes.

If you include any non-GSM-7 characters in your message body, Twilio will automatically fall back to the UCS-2 encoding. This will limit message bodies to 70 characters each.

Message concatenation

In concatenated SMS, long SMS messages are sent as smaller messages and recombined upon receipt. This is a common workaround to message character limits.

Twilio splits long SMS messages (>160 GSM characters, >70 UCS-2 characters) into separate SMS messages segments and then reassembles them on delivery using User Data Headers. These headers take 6 bytes per message, leaving only 67 characters for UCS-2 encoded messages or 153 for GSM-7 encoded messages.

Additionally, not all countries support message concatenation.

For your use case:

Other things to note

International MMS messages

Only the United States and Canada currently support MMS (Multimedia Messaging Service) messages. However, Twilio's MMS Converter feature will automatically convert MMS to SMS when sent to destinations that don't support MMS. These SMS will contain a link in the body to let your recipient access the media.

Country-specific guidelines

Each country may have its own specific guidelines and best practices for sending SMS, and this can affect how your messages arrive and how you should build with Twilio.

For example, France and India limit the times during which you can send promotional or marketing messages and require opt-in from message recipients. Carriers in other countries, such as Japan and Saudi Arabia, will filter out gambling-related or objectionable content.

For your use case:

What will your Sender ID look like?

Country-specific regulations affect whether the sender identity can and should be sent in a certain format. Sender identities vary in throughput capability, type of content that can be sent, and pricing.

Numeric Sender ID: Long code vs. Short code

Long code

In most countries, a long code number is a 10-digit Sender ID used for sending and receiving SMS messages and voice calls.

Good use cases for long codes include P2P and low-throughput communications, such as anonymous chatting applications and customer service communications.

To use phone numbers compliantly in many countries of the world, both Twilio and our customers must adhere to the local country regulations. This requirement often means you must provide adequate identity documentation to the carriers or local regulator. Failure to provide that information creates a risk of disruption of service. Check the regulatory guidelines around phone numbers for countries of interest here.

Twilio allows you to get long codes on-demand for local, national, mobile, and toll-free numbers in 50+ countries, but these do carry throughput limitations:

  • In the United States, long-code numbers are limited to one message/second.
  • Sending more than 200 messages per long code per day often results in carrier filtering.

If your use case requires higher throughput, you may want to consider a shortcode instead.

Short code

A short code is a 3-6-digit number used for sending SMS and MMS messages. Short codes are pre-approved for high-throughput, with a default of 100 messages/second.

Good applications for short codes include high-volume, time-sensitive A2P messaging, such as notifications, reminders, and marketing communications.

Shortcodes come with two notable limitations:

  • They are currently only available in the US, Canada, and the UK with an approval process time of eight to 12 weeks.
  • They are a higher-cost option than long codes. (You can find Twilio short code pricing information here.)

For your use case:

Alphanumeric Sender ID

Alphanumeric Sender IDs contain up to 11 characters for branded one-way messaging. Accepted characters include both upper- and lower-case ASCII letters, the digits 0 through 9, and space: A-Z, a-z, 0-9.

Not all countries support alphanumeric Sender IDs. If you enable an Alphanumeric Sender ID on a Twilio Messaging Service, Twilio will select the Alphanumeric Sender ID automatically when you send a message to a supported country.

For your use case:

Get ready to build

The best way to get started sending international SMS is to determine your use case in advance. Knowing your use case, country, and throughput needs in advance will help you pick the best Twilio solution for sending global SMS.

Ready to get started? Check out the country-specific guidelines and look into using a Messaging Service with Twilio Copilot for your use case.

Mica Swyers
Rate this page:

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.