Розмір тексту в байтах і чому українська літера займає два байти

30 Жовтень, 2026 • Посібники • 32 переглядів

Ноутбук на дерев'яному столі з абстрактною сіткою світлих блоків різного розміру на екрані, поруч блокнот і чашка чаю

Скільки байтів у UTF-8 займають українська літера, цифра й емодзі, як виміряти розмір тексту в браузері та вмістити його в ліміт байтів.

У кодуванні UTF-8 латинська літера без діакритичних знаків (A…Z, a…z), цифра чи пробіл займають 1 байт, українська літера займає 2 байти, а емодзі 😀 займає 4 байти. Тому слово «Привіт» має 6 символів і 12 байтів, а розмір українського тексту в байтах зазвичай майже вдвічі більший за кількість символів.

Різниця між символами й байтами стає помітною, коли поле форми, API чи база даних обмежує саме байти. Текст, який за кількістю символів легко вкладається в обмеження, за розміром може не пройти.

Як порахувати розмір тексту в байтах онлайн

Найпростіше вставити текст у Калькулятор розміру тексту, і він одразу покаже розмір у байтах. Це інструмент сервісу Digily Link, нашого власного продукту.

  1. Відкрийте Калькулятор розміру тексту на digily.link.
  2. Вставте або надрукуйте текст у поле «Текст».
  3. Перевірте значення в рядку «Розмір». Результат буде в байтах (B), кілобайтах (KB) або мегабайтах (MB).

Додатково натискати нічого не потрібно, число оновлюється з кожною літерою. Калькулятор розміру тексту рахує байти просто в браузері, поки ви друкуєте, без надсилання тексту на сервер для обчислення. Інструмент рахує байти в UTF-8 і округлює результат до двох знаків після коми.

Числа в прикладах нижче ми перевірили окремо в Python, а не в самому калькуляторі. Обидва способи рахують байти в UTF-8, проте власний текст краще перевірити безпосередньо в калькуляторі.

Скільки байтів займає символ в UTF-8

Символ в UTF-8 займає від 1 до 4 байтів залежно від його номера в Unicode, тобто кодової точки. Межі діапазонів описано в стандарті RFC 3629, ми звірялися з ним 29 жовтня 2026 року.

Діапазон кодових точокБайтівЩо сюди потрапляє в українському тексті
від U+0000 до U+007F1латинські літери без діакритики (ASCII), цифри, пробіл, прямий апостроф ' (байт 27)
від U+0080 до U+07FF2українські літери, зокрема і (d1 96), ї (d1 97), Ґ (d2 90) та є, а також апостроф ʼ U+02BC (ca bc)
від U+0800 до U+FFFF (крім сурогатів від U+D800 до U+DFFF)3типографський апостроф ’ U+2019 (e2 80 99)
від U+10000 до U+10FFFF4наприклад, емодзі 😀

Отже, літери і, ї, є та ґ також займають по 2 байти в UTF-8. Це стосується літер, записаних однією кодовою точкою, як зазвичай і буває. Якщо ж ї набрано як і плюс комбінований знак діерезису, вона займе 4 байти. Ось кілька конкретних рядків.

ТекстСимволівБайтів UTF-8
Hello55
Привіт612
Ґанок510
Київ 2026913
Привіт, світе!1425
😀1 кодова точка4

На прикладі «Київ 2026» видно, як рахується змішаний текст. Чотири літери дають 8 байтів, пробіл ще 1, а чотири цифри по 1 байту кожна, разом 13. У рядку «Привіт, світе!» кома, пробіл і знак оклику займають по 1 байту, так само як символи ASCII, тому виходить 25 байтів, а не 28.

Апостроф в українському слові займає 1, 2 або 3 байти

Те саме слово з апострофом має різний розмір, бо в Unicode є кілька схожих на вигляд знаків. Слово «м'ята» в нашому вимірюванні займало 9, 10 або 11 байтів залежно від того, який знак стоїть після «м».

ЗнакКодова точкаБайти знака в UTF-8СловоБайтів у слові
' прямий апострофU+00271 (27)м'ята9
ʼ модифікаторний апострофU+02BC2 (ca bc)мʼята10
’ права одинарна лапкаU+20193 (e2 80 99)м’ята11

Чотири літери слова завжди дають 8 байтів, а вся різниця припадає на апостроф. На екрані ці знаки легко сплутати, тому в довгому тексті з багатьма апострофами розмір може відрізнятися на десятки байтів.

Таблиця порівнює розмір різних знаків апострофа в UTF-8, а не визначає правописну норму. Для офіційних текстів орієнтуйтеся на чинний правопис, а для технічних систем також на їхні вимоги до допустимих символів. Щоб з'ясувати, який знак стоїть у вашому тексті, можна подивитися байти в HEX і порівняти їх зі значеннями в таблиці.

Скільки байтів у кілобайті в Калькуляторі розміру тексту

Калькулятор переходить до наступної одиниці за 1024 байти і позначає її як KB. За стандартним розрізненням 1000 байтів це 1 KB, а 1024 байти це 1 KiB, але тут для перерахунку використовується саме 1024. Кілобайти з'являються лише тоді, коли розмір перевищує 1024 байти. Тому текст рівно на 1024 байти покаже «1024 B», а текст на 1025 байтів уже «1 KB», бо результат округлюється до двох знаків після коми.

Якщо ліміт задано в байтах, порівнюйте саме байти, а не кілобайти.

Пробіли, розділові знаки й переноси рядків теж мають розмір. Пробіл займає 1 байт, а переноси рядків у полі «Текст» калькулятор також зараховує. Символ нового рядка LF займає 1 байт, послідовність CRLF 2 байти. У текстовому полі браузера переноси зазвичай представлені символом LF, але інша система може обробляти їх по-своєму. Порожні рядки в кінці тексту прибирайте, лише якщо вони не потрібні.

Як умістити український текст у ліміт байтів

Щоб текст уклався в обмеження в байтах, рахуйте байти, а не символи. Лічильник символів для «Привіт» покаже 6, а система з лімітом у байтах побачить 12.

Розгляньмо умовний приклад поля з обмеженням у 160 байтів (він не стосується жодного конкретного сервісу). У таке поле поміститься 160 символів ASCII або приблизно 80 українських літер. Символів загалом вийде трохи більше, бо кожен пробіл займає лише 1 байт.

  1. Вставте фінальний варіант тексту в калькулятор і подивіться на рядок «Розмір».
  2. Знайдіть емодзі. Наприклад, 😀 займає 4 байти, стільки ж, скільки дві українські літери.
  3. Перевірте апострофи та лапки. Типографський апостроф ’ займає 3 байти, а прямий лише 1. Не замінюйте апострофи автоматично лише заради економії байтів, бо програми можуть обробляти різні знаки по-різному.
  4. Приберіть подвійні пробіли та порожні рядки.
  5. Після кожного скорочення знову перевіряйте розмір, бо число змінюється з кожним виправленням.

Як порахувати байти тексту в коді на Python і JavaScript

У Python розмір у байтах дає вираз len(s.encode('utf-8')), а len(s) рахує кодові точки Unicode. Для звичайних українських літер це збігається з кількістю символів, але складене емодзі на кшталт 👩‍💻 має 3 кодові точки і 11 байтів. Саме так ми отримали числа для цієї статті. Для «Привіт» перший вираз повертає 12, другий 6. Для емодзі 😀 len(s) дає 1, бо це одна кодова точка, а розмір у байтах становить 4.

У JavaScript у браузері можна використати new Blob([text]).size. Так само байти в UTF-8 рахує і наш калькулятор. Якщо писати код не хочеться, відкрийте калькулятор і порахуйте розмір тексту в байтах просто в браузері.

Часті запитання

Скільки байтів займає українська літера?

В UTF-8 кожна українська літера у звичайному записі однією кодовою точкою займає 2 байти, і велика, і мала. Наприклад, Ґ записується байтами d2 90, а і байтами d1 96.

Чому лічильник символів показує інше число, ніж калькулятор розміру?

Лічильник символів рахує знаки, а калькулятор розміру рахує байти. Обидва числа правильні, вони просто відповідають на різні запитання. Якщо обмеження задано в символах, орієнтуйтеся на лічильник символів, а якщо в байтах, то на розмір у байтах.

Чому розмір файлу Word відрізняється від розміру тексту в ньому?

Файл документа зберігає не лише текст, а й форматування, стилі та службову інформацію, а формат DOCX до того ж стискається. Тому розмір файлу не дорівнює розміру тексту в байтах і може бути як більшим, так і меншим. Щоб дізнатися розмір самого тексту, скопіюйте його з документа в калькулятор.

0 з 0 оцінок