24 августа, 2026

Длина SMS и сегменты: почему кириллица — это 70 символов

1 мин
Время чтения

Длина SMS и число сегментов напрямую влияют на стоимость рассылки: чем длиннее текст, тем на большее число оплачиваемых частей он делится. При этом сообщение на русском языке помещает в один сегмент меньше символов, чем на латинице: до 70 против 160. Причина — в кодировке. В статье разберём, как считается длина SMS, почему кириллица «короче» и как укладывать сообщение так, чтобы платить за один сегмент, а не за три.

Как измеряется длина SMS

Стандарт SMS изначально рассчитан на передачу небольшого объёма данных — 140 байт полезной нагрузки в одном сообщении. Сколько символов поместится в эти 140 байт, зависит от того, какой кодировкой закодирован текст. Латинский алфавит кодируется компактнее, кириллица — «тяжелее», поэтому в одинаковый объём влезает разное число знаков.

Именно поэтому нельзя сказать «в SMS помещается N символов» без уточнения языка. Считать нужно не буквы на глаз, а сегменты — оплачиваемые части сообщения.

GSM-7: латиница до 160 символов

Базовая кодировка для SMS называется GSM-7. Она кодирует каждый символ семью битами и включает латинские буквы, цифры, пробел и распространённые знаки препинания. В 140 байт при таком кодировании помещается 160 символов — это и есть классический «одиночный» SMS на латинице.

В набор GSM-7 входит и часть расширенных символов — например, фигурные и квадратные скобки, обратный слэш, символы валют вроде евро. Но такие знаки занимают место двух символов вместо одного, потому что кодируются через специальную escape-последовательность. Их избыток незаметно съедает лимит сегмента.

UCS-2: кириллица до 70 символов

Русские буквы в набор GSM-7 не входят. Для их передачи используется Unicode-кодирование, которое SMS-платформы обычно называют UCS-2. Обычный символ из базовой многоязычной плоскости занимает одну 16-битную кодовую единицу, поэтому в 140 байт помещается до 70 таких единиц.

Отсюда и цифра из заголовка: сообщение на русском языке в одном сегменте — это до 70 знаков вместе с пробелами и знаками препинания. Как только текст превышает этот предел, включается механизм склейки, и одно логическое сообщение разбивается на несколько сегментов.

Почему русский текст «короче»

Многих удивляет, что английская фраза уходит одним сообщением, а такая же по смыслу русская — уже двумя. Дело не в «жадности» оператора, а в устройстве кодировки: GSM-7 использует семибитные значения, а Unicode — 16-битные кодовые единицы. При равном объёме данных кириллических знаков помещается заметно меньше.

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

Склейка длинных сообщений

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

Из-за этого в многосегментном сообщении помещается меньше данных на часть: до 153 знаков GSM-7 или до 67 16-битных кодовых единиц в каждом сегменте. Эти границы определены механизмом составных сообщений в спецификации 3GPP TS 23.040. При переходе через границу часть ёмкости занимает служебный заголовок склейки.

Пример сообщения, которое незаметно выходит за один сегмент: Здравствуйте, [Имя]! Ваш заказ №[Номер] собран и передан в доставку, курьер приедет [Дата] в интервале [Время].

Такой текст на русском заметно длиннее 70 символов и уйдёт как несколько сегментов — а значит, будет тарифицироваться дороже, чем кажется на первый взгляд.

Эмодзи и спецсимволы

Отдельная ловушка — эмодзи и нестандартные символы. Символ вне набора GSM-7 переключает всё сообщение на Unicode-кодирование. Даже короткий латинский текст с одним смайликом теряет лимит GSM-7, но считать такой текст просто как «70 видимых символов» нельзя: большинство эмодзи занимает две 16-битные кодовые единицы, а последовательности с модификаторами могут занимать ещё больше.

Тот же эффект дают «красивые» типографские кавычки, длинное тире, некоторые редкие знаки. Если контент-редактор вставил их автоматически, вы можете неожиданно получить двухсегментное сообщение там, где рассчитывали на одно.

Как кодировка определяется автоматически

Отправитель обычно не выбирает кодировку вручную — она подбирается по содержимому сообщения. Если весь текст состоит из символов, входящих в набор GSM-7, применяется семибитная кодировка и действует лимит в 160 знаков. Как только появляется символ вне этого набора — русская буква, эмодзи, нестандартный знак, — всё сообщение целиком переключается на Unicode. Для обычных символов предел составляет 70 кодовых единиц, но эмодзи и составные знаки расходуют несколько единиц.

Ключевое слово здесь — «целиком». Кодировка выбирается на всё сообщение сразу, а не по частям. Поэтому один русский символ в преимущественно латинском тексте обнуляет экономию: сообщение всё равно будет считаться по правилам кириллицы. Это стоит помнить, когда в шаблон подставляются данные из разных источников — например, латинские артикулы вперемешку с русскими названиями.

Как число сегментов влияет на цену

Тарификация идёт по сегментам, а не по «сообщениям» в бытовом смысле. Одно логическое SMS из трёх сегментов оплачивается как три отправки. Поэтому контроль длины — это прямая экономия бюджета рассылки.

Связь простая: короткий текст в одном сегменте — минимальная цена; текст, который на пару слов вышел за 70 символов, — уже два сегмента и удвоение стоимости этой части рассылки. На большой базе разница между «уложились в сегмент» и «не уложились» превращается в заметную сумму. Как из сегментов складывается итоговый бюджет, разобрано в статье про то, сколько стоит SMS-рассылка, а актуальные ставки за сегмент смотрите на странице тарифов.

Важно, что число сегментов считается по итоговому тексту после подстановки переменных. Если в шаблоне есть поля вроде имени, адреса или номера заказа, реальная длина сообщения у разных получателей будет разной. У кого-то текст уложится в один сегмент, у кого-то с длинным именем и адресом — выйдет за границу. Поэтому оценивать длину нужно по самому «тяжёлому» варианту подстановки, а не по среднему.

Как укладываться в один сегмент

Чтобы держать сообщение в пределах одного сегмента, работает несколько приёмов. Пишите по делу: одно сообщение — одно действие, без вводных слов и повторов. Убирайте лишние символы, эмодзи и типографские украшения из сервисных сообщений.

Длинные адреса и ссылки заменяйте короткими — это заметно экономит место. Как делать это безопасно и понятно для клиента, рассказано в материале про короткие ссылки в SMS.

Тот же смысл, уложенный в один сегмент: Заказ №[Номер] в доставке. Курьер [Дата], [Время]. Детали: [ссылка]

Такой вариант короче, читается быстрее и стоит дешевле, потому что укладывается в границу сегмента.

Транслитерация как альтернатива

Иногда для экономии на сегментах используют транслитерацию — пишут русский текст латинскими буквами, чтобы попасть в кодировку GSM-7 и лимит 160 символов. Технически это работает и действительно снижает число сегментов, но ощутимо ухудшает читаемость: клиенту приходится буквально расшифровывать текст, особенно если в нём есть имена, адреса или специфичные термины.

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

Типичные ошибки

Считать символы «на глаз». Без учёта кодировки легко ошибиться и получить лишний сегмент.

Вставлять эмодзи в сервисные SMS без проверки. Один смайлик переключает кодировку, а сам может занять две или больше кодовых единиц.

Не замечать типографские символы. Автоматические кавычки и длинное тире тоже могут увести в UCS-2.

Дублировать смысл. Вежливые вводные фразы и повторы раздувают текст без пользы.

Оставлять длинные ссылки. Полный URL занимает место, которого хватило бы на суть сообщения.

Проверка и показатели

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

Главный показатель для контроля — среднее число сегментов на сообщение по рассылке. Если оно близко к единице, тексты составлены аккуратно и бюджет расходуется рационально. Рост этого показателя — сигнал вернуться к шаблонам и сократить их. Так вы держите под контролем и качество сообщений, и стоимость всей рассылки.


Обновлено 24 августа, 2026
Подходит каждому
SMS-рассылка для любой сферы бизнеса
Узнайте как внедрить SMS-рассылку в ваш бизнес вместе с quicktel
Оставьте номер и вам перезвонит менеджер.