Перейти к содержимому
OmniChannels.ai
Меню

Бесплатный инструмент

Счётчик символов и сегментов SMS

Вставьте сообщение, и вы увидите его кодировку, за сколько SMS-сегментов вам выставят счёт и какие символы сокращают лимит со 160 до 70 символов в одном SMS. Работает с английским, арабским и эмодзи.

Бесплатно · без регистрации · работает в вашем браузере

Попробуйте пример

97 / 134

Символы, из-за которых включается Unicode

Удалите или замените их, чтобы вернуться к GSM-7 и уместить до 160 символов в одном SMS.

  • ’U+2019
  • –U+2013
  • “U+201C
  • ”U+201D
  • …U+2026

Где они находятся

Don’t miss it – “Weekend Sale” ends Sunday… Use code SAVE20 at checkout: https://example.com/sale

Сегменты (тарифицируемые SMS)

КодировкаUnicode (UCS-2)

Хотя бы один символ не входит в GSM-7, поэтому всё сообщение отправляется в UCS-2: 70 символов в одном SMS и по 67 в каждой части.

Сегменты (тарифицируемые SMS)
2
Осталось в этом сегменте
37
до добавления нового сегмента
Символы
97
Единицы UCS-2
97
Эмодзи
0
Символы расширения
0

Как сообщение делится на части

Одно SMS: до 70 · Составное сообщение: 67 в каждой части (остальное занимает заголовок конкатенации)

  1. Часть 167/67
  2. Часть 230/67

Ориентировочный месячный объём

2 сегментов × 10 000 сообщений

= 20 000 SMS

Узнайте реальные цены на SMS для вашей страны

Отправляете SMS в больших объёмах в странах Персидского залива (GCC) и за их пределами? Посмотреть SMS API

Всё, что вы вводите здесь, не отправляется на наши серверы.

Краткий ответ

В одном SMS помещается 160 символов в алфавите GSM-7 или 70 символов в Unicode (UCS-2). Более длинные сообщения делятся на части по 153 (GSM-7) или 67 (UCS-2) символов, потому что каждая часть содержит заголовок конкатенации, и каждая часть тарифицируется как одно SMS. Один символ вне GSM-7, например типографская кавычка, эмодзи или арабская буква, переводит всё сообщение в UCS-2.

Как посчитать символы и сегменты SMS

  1. 1

    Вставьте сообщение

    Введите или вставьте точный текст, который собираетесь отправить, включая ссылки, переносы строк и подпись отправителя.

  2. 2

    Проверьте кодировку

    В GSM-7 в одном SMS помещается 160 символов, в Unicode (UCS-2) — 70. Индикатор показывает, какая кодировка применяется и почему.

  3. 3

    Исправьте символы, из-за которых включается Unicode

    Подсвеченные символы не входят в GSM-7. Замените типографские кавычки, тире и специальные пробелы в один клик или отредактируйте остальное вручную.

  4. 4

    Оцените объём

    Укажите, сколько сообщений вы отправляете в месяц, чтобы увидеть число тарифицируемых сегментов, а затем проверьте актуальные цены для вашей страны.

Как рассчитывается длина SMS

Одно SMS содержит 140 октетов (1 120 бит) пользовательских данных. В 7-битном алфавите GSM по умолчанию каждый символ занимает 7 бит, поэтому в 140 октетов помещается 160 символов. В UCS-2 (16-битная кодировка Unicode, используемая в SMS) каждый символ занимает 2 октета, поэтому в то же пространство помещается 70 символов.

Если сообщение длиннее одного SMS, оно отправляется как составное (конкатенированное). Каждая часть начинается с заголовка пользовательских данных (UDH) размером 6 октетов. В нём указаны ссылочный номер, общее число частей и позиция части, чтобы телефон мог собрать сообщение. После заголовка на часть остаётся 134 октета: 153 символа GSM-7 или 67 символов UCS-2.

Получатель видит одно сообщение, но операторы и провайдеры тарифицируют каждую часть. Сообщение из 161 символа в GSM-7 стоит как два SMS, а сообщение из 71 символа на арабском тоже стоит как два.

  • GSM-7: 160 символов в одном SMS, 153 на часть в составном сообщении (306 для 2 частей, 459 для 3).
  • UCS-2: 70 символов в одном SMS, 67 на часть в составном сообщении (134 для 2 частей, 201 для 3).
  • Один символ вне GSM-7 в любом месте текста переводит всё сообщение в UCS-2.

Алфавит GSM-7 и его таблица расширения

7-битный алфавит GSM по умолчанию описан в 3GPP TS 23.038 (изначально GSM 03.38). Его базовая таблица содержит 128 позиций: латинские буквы и цифры, распространённые знаки препинания, а также символы @ £ $ ¥ è é ù ì ò Ç Ø ø Å å Ä Ö Ñ Ü ä ö ñ ü à ß Æ æ É ¿ ¡ § и греческие заглавные буквы Δ Φ Γ Λ Ω Π Ψ Σ Θ Ξ. Перевод строки и возврат каретки тоже являются одиночными символами.

Ещё десять символов находятся в таблице расширения и вызываются через escape-код, поэтому каждый занимает два септета: знак евро €, знак вставки ^, фигурные скобки { }, квадратные скобки [ ], тильда ~, вертикальная черта |, обратная косая черта \ и перевод страницы. Сообщение из 158 букв и одного € занимает ровно 160 септетов; добавьте ещё одну букву, и получится два сегмента.

Escape-последовательность должна оставаться в одной части, поэтому символ из двух септетов, который пришёлся бы на границу в 153 септета, переносится в следующую часть. Этот счётчик учитывает такое правило, поэтому часть может заканчиваться на 152-м символе.

TS 23.038 также определяет таблицы сдвига национальных языков (например, для турецкого, испанского, португальского и нескольких индийских письменностей), которые позволяют сохранить часть сообщений в 7-битной кодировке. Поддержка зависит от сети и устройства, поэтому большинство платформ, как и этот счётчик, используют только алфавит по умолчанию.

Символы, которые незаметно переводят SMS в Unicode

Большинство неожиданных сообщений с лимитом 70 символов появляются из-за текста, скопированного из текстового редактора, CMS или с клавиатуры телефона, которые автоматически вставляют типографские символы. Они почти не отличаются от своих аналогов в GSM-7, но это другие кодовые позиции.

Буквы с диакритикой, которых нет в таблице, например á í ó ú â ê ã õ и строчная ç, тоже переводят сообщение в UCS-2. Заменяйте их, только если ваша аудитория принимает написание без диакритики: для многих языков правильная орфография важнее лишнего сегмента.

  • Типографские кавычки и апострофы ‘ ’ “ ” (используйте ' и ").
  • Короткое и длинное тире – — (используйте -) и многоточие … (используйте ...).
  • Неразрывные и тонкие пробелы, которые после копирования часто остаются невидимыми (используйте обычный пробел).
  • Символы нулевой ширины и метки порядка байтов, скрытые в шаблонах (удалите их).
  • Эмодзи: большинство занимает 2 единицы UCS-2, флаг или эмодзи с оттенком кожи — 4, а составная последовательность, например семья, — 8 и более.

Конвертация сообщения в GSM-7 в один клик

Если сообщение в Unicode, кнопка «Конвертировать в GSM-7» переписывает его только символами GSM-7 там, где это безопасно: типографские кавычки и тире заменяются обычными, невидимые пробелы удаляются, диакритика, которой нет в GSM-7, убирается (á → a, ã → a, строчная ç → Ç), а лигатуры и символы заменяются буквенной записью (œ → oe, ™ → TM). Символы, которые уже входят в GSM-7, такие как é, ü, ñ, ß и €, сохраняются.

Инструмент перечисляет все изменения и показывает число сегментов до и после, а кнопка «Отменить» возвращает исходный текст. Арабский текст конвертировать нельзя: сообщение на арабском всегда остаётся в Unicode с лимитом 70 символов на SMS, поэтому сократите его или отправьте через WhatsApp. Эмодзи и другие нелатинские письменности тоже остаются без изменений.

SMS на арабском: 70 символов, 67 на часть

Арабских букв нет в GSM-7, поэтому каждое SMS на арабском отправляется в UCS-2: 70 символов в одном сообщении и по 67 на часть, если оно длиннее. Арабское сообщение из 140 символов — это три тарифицируемых сегмента, а не два, потому что 140 больше, чем 2 × 67 = 134.

Учитывается каждая кодовая позиция: пробелы, латинские буквы внутри текста, арабо-индийские цифры и диакритические знаки (ташкиль). Слово с полной огласовкой может занимать вдвое больше единиц, чем то же слово без огласовок (харакат), поэтому в транзакционных сообщениях не используйте диакритику, если она не нужна для устранения неоднозначности.

Для OTP-кодов и уведомлений в странах Персидского залива (GCC) по возможности держите арабский текст короче 70 символов, ставьте код в начало сообщения и не используйте эмодзи. Если отправлять то же уведомление на английском, текст может быть более чем вдвое длиннее при той же цене.

От сегментов к стоимости

Ежемесячный счёт за SMS зависит от сегментов, а не от сообщений: сегментов в сообщении × сообщений в месяц × тариф сети назначения. Если сократить кампанию с 2 сегментов до 1, стоимость каждой отправки снизится вдвое.

Проверяйте итоговый текст с подставленными переменными. Имя клиента, номер заказа или сокращённая ссылка могут сдвинуть шаблон через границу сегмента, а имена на арабском или с диакритикой могут перевести шаблон GSM-7 в UCS-2 только для части получателей.

  • Проверяйте самые длинные реалистичные значения каждой переменной.
  • Сокращайте ссылки и удаляйте пробелы и переносы строк в конце текста.
  • Лучше один понятный призыв к действию, чем длинное многосегментное сообщение.

Вопросы и ответы о количестве символов в SMS

Сколько символов может быть в одном SMS?

160 символов, если текст использует только алфавит GSM-7, или 70 символов, если в нём есть любой символ вне GSM-7 и сообщение отправляется в Unicode (UCS-2). В обоих случаях используются те же 140 октетов пользовательских данных.

Почему моё SMS ограничено 70 символами?

Хотя бы один символ не входит в алфавит GSM-7, поэтому всё сообщение кодируется в UCS-2. Частые причины: типографские кавычки, длинные тире, эмодзи, неразрывные пробелы и нелатинские письменности, например арабская. Счётчик подсвечивает такие символы, чтобы вы могли заменить или удалить их.

Можно ли преобразовать SMS в Unicode в GSM-7?

Часто да. Кнопка «Конвертировать в GSM-7» заменяет типографские символы, убирает диакритику, которой нет в GSM-7, и заменяет символы буквенной записью, а затем показывает, что изменилось, и новое число сегментов. Арабский текст, эмодзи и другие нелатинские письменности конвертировать нельзя, и сообщение остаётся в Unicode.

Почему части длинного SMS по 153 символа, а не по 160?

Каждая часть составного SMS содержит заголовок пользовательских данных (UDH) в 6 октетов, который сообщает телефону, как собрать сообщение. На часть остаётся 134 октета: 153 символа GSM-7 или 67 символов UCS-2.

Считается ли знак евро за два символа?

Да, в GSM-7. Знак € и символы ^ { } [ ] ~ | \ и перевод страницы находятся в таблице расширения и занимают по два септета. В сообщении в Unicode они считаются как одна единица, как и любой другой символ.

Сколько символов может быть в SMS на арабском?

70 символов в одном SMS и 67 на часть в более длинных сообщениях, потому что арабский всегда отправляется в UCS-2. Пробелы, цифры и диакритические знаки тоже считаются.

Как считаются эмодзи в SMS?

Эмодзи переводит сообщение в UCS-2, и большинство эмодзи занимает 2 единицы, поскольку хранится в виде суррогатной пары. Флаги и эмодзи с оттенком кожи занимают 4 единицы, а составные эмодзи, например семьи, — 8 единиц и более.

Какова максимальная длина длинного SMS?

Заголовок конкатенации допускает до 255 частей, но сети, провайдеры и устройства часто применяют более низкие ограничения. Важные сообщения лучше уместить в несколько частей; если нужно больше, ссылка на страницу обычно дешевле и удобнее для чтения.

Считаются ли пробелы и переносы строк символами?

Да. Пробелы, переводы строки и возвраты каретки считаются как один символ в GSM-7 и одна единица в UCS-2. Пробелы и пустые строки в конце текста могут добавить лишний сегмент.

Другие бесплатные инструменты