{% from "components/content-metadata.html" import content_metadata %} {% from "components/table.html" import mapping_table, row, text_field, field, row_heading %} {% from "components/live-search.html" import live_search %} {% from "components/components/details/macro.njk" import usaDetails %} {% extends "base.html" %} {% block per_page_title %} Message parts {% endblock %} {% block content_column_content %}

Message parts

{{ content_metadata( data={ "Last updated": "April 10, 2024" } ) }}

During the pilot period, each service has an allowance of 250,000 message parts. Once this allowance is met, the application will stop delivering messages. There's no monthly charge, no setup fee, and no procurement cost. You'll use more parts towards the allowance if you:

Long text messages

If a text message is longer than 160 characters (including spaces and service name), it counts as more than one message part.

Calculation of message parts without special characters

{% call mapping_table( caption='Text message pricing', field_headings=['Message length', 'Charge'], field_headings_visible=True, caption_visible=False ) %} {% for message_length, charge in [ ('Up to 160 characters', '1 part'), ('Up to 306 characters', '2 parts'), ('Up to 459 characters', '3 parts'), ('Up to 612 characters', '4 parts'), ('Up to 765 characters', '5 parts'), ('Up to 918 characters', '6 parts'), ] %} {% call row() %} {{ text_field(message_length) }} {{ text_field(charge) }} {% endcall %} {% endfor %} {% endcall %}

Personalization

Personalization can change the length of messages. For example, if you are personalizing with a first name, Fred is significantly shorter than Alexander. When you are evaluating how long a message is, you need to consider variations in message length based on personalization.

Before you send messages, Notify will let you know how many messages you are sending, the number of parts you are using, and the number of parts you’ll have left.

Signs and symbols

The following signs and symbols count as 2 characters each:
[]{}^\|~$

Using them can increase the cost of sending text messages.

Accented characters and non-romanized scripts

Notify can handle a wide range of different languages and scripts. However, occasionally some phone carriers may struggle to display special characters or non-romanized scripts. (Languages such as Arabic, Chinese, Japanese, Korean, and Russian use non-romanized scripts with different characters.) Best practices encourage communication in the recipient’s preferred language, but we are aware that, rarely, a phone carrier will not be able to handle the message.

The following accented characters do not affect the cost of sending text messages: Ä, É, Ö, Ü, à, ä, é, è, ì, ò, ö, ù, ü.

Using other accented characters or scripts will increase the cost of sending text messages. Even one accented character (with the exception of those noted above), or use of a non-romanized or logographic script will cause the entire message to be calculated as detailed below.

Calculation of message parts with special characters or non-romanized scripts

{% set accentedChars %}
{% call mapping_table( caption='Accented characters that affect text message charges', field_headings=['Character', 'Description'], field_headings_visible=True, caption_visible=False ) %} {% for letter, description in [ ('Â', 'Capital letter A with circumflex'), ('Á', 'Capital letter A with acute'), ('À', 'Capital letter A with grave'), ('Ê', 'Capital letter E with circumflex'), ('È', 'Capital letter E with grave'), ('Ë', 'Capital letter E with dieresis'), ('Î', 'Capital letter I with circumflex'), ('Í', 'Capital letter I with acute'), ('Ì', 'Capital letter I with grave'), ('Ï', 'Capital letter I with dieresis'), ('Ô', 'Capital letter O with circumflex'), ('Ó', 'Capital letter O with acute'), ('Ò', 'Capital letter O with grave'), ('Û', 'Capital letter U with circumflex'), ('Ú', 'Capital letter U with acute'), ('Ù', 'Capital letter U with grave'), ('Ŵ', 'Capital letter W with circumflex'), ('Ẃ', 'Capital letter W with acute'), ('Ẁ', 'Capital letter W with grave'), ('Ẅ', 'Capital letter W with dieresis'), ('Ŷ', 'Capital letter Y with circumflex'), ('Ý', 'Capital letter Y with acute'), ('Ỳ', 'Capital letter Y with grave'), ('Ÿ', 'Capital letter Y with dieresis'), ('â', 'Lower case letter a with circumflex'), ('á', 'Lower case letter a with acute'), ('ê', 'Lower case letter e with circumflex'), ('ë', 'Lower case letter e with dieresis'), ('î', 'Lower case letter i with circumflex'), ('í', 'Lower case letter i with acute'), ('ï', 'Lower case letter i with dieresis'), ('ô', 'Lower case letter o with circumflex'), ('ó', 'Lower case letter o with acute'), ('û', 'Lower case letter u with circumflex'), ('ú', 'Lower case letter u with acute'), ('ŵ', 'Lower case letter w with circumflex'), ('ẃ', 'Lower case letter w with acute'), ('ẁ', 'Lower case letter w with grave'), ('ẅ', 'Lower case letter w with dieresis'), ('ŷ', 'Lower case letter y with circumflex'), ('ý', 'Lower case letter y with acute'), ('ỳ', 'Lower case letter y with grave'), ('ÿ', 'Lower case letter y with dieresis'), ] %} {% call row() %} {{ text_field(letter) }} {{ text_field(description) }} {% endcall %} {% endfor %} {% endcall %}
{% endset %} {{ usaDetails({ "summaryText": "Accented characters that affect text message charges", "html": accentedChars }) }}
{% call mapping_table( caption='Pricing for text messages containing accented characters that affect the charges', field_headings=['Message length', 'Charge'], field_headings_visible=True, caption_visible=False ) %} {% for message_length, charge in [ ('Up to 70 characters', '1 part'), ('Up to 134 characters', '2 parts'), ('Up to 201 characters', '3 parts'), ('Up to 268 characters', '4 parts'), ('Each additional 67 characters', '1 additional part'), ] %} {% call row() %} {{ text_field(message_length) }} {{ text_field(charge) }} {% endcall %} {% endfor %} {% endcall %}
{% endblock %}