Обычная SMS в кодировке GSM-7 вмещает до 160 единиц текста, а сообщение с кириллицей обычно переходит в режим с пределом 70. Если сообщение длиннее, оно делится на сегменты. В составной SMS часть места занимает служебная информация, поэтому типичные пределы снижаются до 153 и 67 соответственно.
Эти значения описаны в документации Twilio. У маршрутов и провайдеров встречаются исключения. Окончательное число оплачиваемых частей проверяйте в сервисе отправки.
Почему короткое сообщение внезапно стало длинным
Кодировку может изменить один символ, которого нет в GSM-7. Это касается кириллицы, некоторых кавычек и других знаков. Поэтому текст, который выглядит почти полностью латинским, способен разбиться на несколько частей после небольшой редакторской правки.
Даже внутри GSM-7 некоторые знаки из расширенного набора занимают две единицы. Эмодзи тоже нельзя надёжно оценивать по числу видимых картинок. Обычный счётчик символов полезен для черновика, но не заменяет расчёт SMS-сегментов конкретного шлюза.
Пример расчёта для русского текста
Для простого русского текста без сложных составных знаков типичная картина такая:
| Длина | Части SMS |
|---|---|
| 70 единиц | 1 |
| 71 единица | 2 |
| 134 единицы | 2 |
| 135 единиц | 3 |
После превышения 70 сообщение делится уже по 67 единиц на часть. Поэтому нельзя просто разделить длинный текст на 70 и округлить результат. Таблица показывает общий принцип, а не обещание тарификации любого оператора.




