How message character counts are calculated in text messages

The cost of messages that you send to subscribers is based on the number of message segments that you send. The first message segment is composed of 160 total characters, including your brand’s name, which is always prepended to all messages you send. If your message includes more than 160 characters, it will be 2 segments; more than 320 characters will be 3 segments, and so on.

As you compose messages in Attentive, note the numbers in the lower-right corner of the message composer:

View of estimated remaining characters and number of SMS segments when unsubscribe preview is toggled on.

  • a: The estimated remaining characters: How many characters remain before your message segment count increases by one. 
  • b: Message segments: The total number of message segments, as well as the message type, that will be sent to subscribers. Messages will either be 1 or more SMS (text only), 1 MMS (media with up to 160 characters of text), or 1 MMS + 1 or more SMS.

Text characters in messages

How each character in messages is counted is based on GSM 7-bit encoding. Most – but not all – characters count as a single character.

  • Letters, numbers, and most punctuation marks count as 1 character
  • Extension characters count as 2 characters and include the following: | ^ € { } [ ] ~ \
  • Simple emojis like :) count as 2 characters (one for each symbol)
Note: Review the character and message segment count after copying and pasting text from another source into the message composer. Text pasted into the message composer can contain additional encoding that can increase character counts. We recommend pasting text using Cmd + Shift + V (Mac) or Ctrl + Shift + V (PC) to paste without formatting.

Unicode emojis in messages

Unicode messages like 😍 have a significant impact on message segment length, as they change the way that sent messages are encoded. While unicode emojis help make your messages more friendly and visually appealing, you should use them sparingly. If you want to use unicode emojis in messages, here are some things to keep in mind:

  • The character counter can be trusted as a source of truth when using unicode emojis. If the message composer says 1 SMS, you’ll only be billed for 1 SMS message. Here is a short message that includes an emoji:
    Using the character counter in the campaign message composer to see billable message segments with an emoji
    And the same message without an emoji:
    Using the character counter in the campaign message composer to see billable message segments with an emoji
    Note that in this example, the actual text is short, but the inclusion of a single emoji requires two message segments to send instead of one.
  • Different emoji are calculated differently, so make sure to check each before sending your message
  • Unicode emoji have a bigger impact on messages with multiple message segments, so you may want to avoid using them with long messages

Personalizations in messages

If you use personalizations in messages – and you should! – the number of characters billed is based on the personalized copy for each subscriber, not the number of characters in the macro.

For example, if you include the {{subscriber.firstName}} personalization, and the subscriber’s first name is Kate, that counts as only 4 characters.

How the firstName personalization appears for a subscriber named Kate

However, if you don’t have subscriber information for a particular personalization, then a default value is used instead. For example, if you include {{subscriber.firstName}} but you don’t have the subscriber’s first name on file, then you’ll send the default value there instead, which counts as 5 characters.

How the firstName personalization appears if we don't know the subscriber's first name

You can optionally customize the default value used for this and other personalizations when writing messages:

How the fallback value appears in the Insert variable modal in the message composer

Note: The character counter in the message composer can’t see the value the personalization will send to subscribers, and instead counts each character in the personalization itself – but you’ll only be billed for what is actually sent to the subscriber.

Media in messages

You can also add media, like images, GIFs, or videos to your messages, which changes the message to an MMS message from an SMS message. Note that MMS messages are billed at different rates from SMS messages. MMS messages can include one media file and up to 160 characters of text. If you include more text or emojis and exceed one message segment, the same guidelines as above apply here, too. You can see the total number of messages by type that you’ll send in the lower-right corner:

The character counter in the message composer highlighting characters on the left and segments on the right

Opt-out language

If you’re using a toll-free number, all text messages that you send to AT&T subscribers are automatically appended with opt-out language. If a subscriber replies to a message from you with an opt-out term, they are unsubscribed from messages from you. Including opt-out language is a requirement from AT&T and can’t be removed from messages you send to AT&T subscribers. Optionally, you can customize the opt-out language appended to messages.

An illustration showing where the counter updates when the Unsubscribe preview is enabled

When opt-out language is appended to your messages, each character is added to the existing character count for your text message. When enabled, the Unsubscribe preview updates the character counter for AT&T subscribers. If the appended opt-out language increases the number of message segments of your message, the cost of sending your message may increase.

Articles in this section

Was this article helpful?
4 out of 5 found this helpful