Elido
9 хв читанняМожливості

Динамічні vs статичні QR-коди: що насправді змінюється

Статичний QR кодує URL безпосередньо. Динамічний QR кодує коротке посилання. Різниця визначає, чи зможете ви редагувати ціль, відстежувати сканування або налаштовувати A/B-маршрутизацію - і це важливо врахувати ще до друку.

Marius Voß
DevRel · edge infra
Two QR-like module grids side by side: one frozen with a long URL encoded, one pointing to a short link with an arrow to a changeable destination

Статичні та динамічні QR-коди - це не два різновиди одного й того ж. Це два абсолютно різні артефакти, які лише виглядають схожими під час сканування. Один із них назавжди вкарбовує URL у сітку чорно-білих модулів. Інший кодує коротке посилання - покажчик. Чи має ця різниця значення для вас, залежить виключно від того, на що ви посилаєтеся і чи плануєте ви колись це змінювати.

Стисло (TL;DR)#

  • Статичний QR-код кодує URL-адресу призначення безпосередньо в патерні модулів. Надрукуйте його - і ціль змінити буде неможливо.
  • Динамічний QR-код кодує коротке посилання. Реальна адреса призначення зберігається в сервісі скорочення посилань і може бути змінена, відстежена або використана для A/B-маршрутизації вже після того, як код було надруковано.
  • Динамічні QR-коди додають один HTTP-хоп для перенаправлення (~5–15 мс на edge-інфраструктурі Elido). На практиці сканери цього ніколи не помічають.
  • Якщо є хоча б найменший шанс, що адреса призначення зміниться, або якщо вам потрібна аналітика сканувань - використовуйте динамічні коди. Статичні коди є доцільними лише тоді, коли URL є остаточно стабільним і вам справді не потрібне відстеження.

Що насправді кодує статичний QR#

QR-код - це не зображення URL-адреси. Це 2D-матриця бінарних модулів - темних і світлих квадратів, розташованих у сітці - яка кодує дані за допомогою чотирьох можливих режимів кодування (числовий, буквено-цифровий, байтовий, кандзі). Довга адреса HTTPS зазвичай вимагає байтового режиму.

Розмір цієї сітки називається версією. ISO/IEC 18004, стандарт, що визначає структуру QR-коду, визначає 40 версій: версія 1 - це сітка 21×21 модуль, здатна вмістити 17 буквено-цифрових символів; версія 40 - 177×177 модулів і може вмістити 4296 символів. Кожна наступна версія додає чотири модулі на сторону. URL на кшталт https://example.com/products/spring-collection-2026?utm_source=flyer&utm_medium=print&utm_campaign=march складається зі 101 символу. При рівні корекції помилок M для цього знадобиться щонайменше версія 15 (77×77 модулів), яка вже є досить щільною, тому сканування з великої відстані або на зношеному чи низькоконтрастному відбитку може не спрацювати.

Рівні корекції помилок - L, M, Q, H - дозволяють жертвувати місткістю даних заради стійкості до пошкоджень. Рівень H дозволяє відновити до 30% даних, якщо модулі пошкоджені або закриті; рівень L витримує лише 7%. Чим більше запасу на корекцію ви закладаєте, тим більшою має бути сітка, щоб вмістити той самий обсяг корисних даних. Докладніше про це в розділі про логотипи нижче.

Після друку QR-коду URL-адреса назавжди вписана в патерн модулів. Функції «редагувати ціль» не існує. Друкарська помилка в URL, переїзд сторінки, завершення кампанії - усе це означає необхідність повторного друку. Винахідник QR Denso Wave публікує повні таблиці версій/місткості, якщо ви хочете розрахувати точну точку беззбитковості.

Що кодує динамічний QR#

Динамічний QR-код кодує коротке посилання замість повної URL-адреси призначення. Щось на кшталт https://b.elido.me/spring26 - це 32 символи, версія 3 (29×29) з корекцією помилок H. Реальна адреса зберігається в базі даних Elido і визначається в момент сканування.

Схема потоку перенаправлення, що показує два шляхи: сканування статичного QR, яке веде безпосередньо до фінальної цілі; сканування динамічного QR, яке проходить через коротке посилання, потім edge-перенаправлення Elido, і потім до фінальної цілі

Цей один рівень посередництва забезпечує чотири речі, на які не здатний статичний QR:

Зміна перенаправлення. Оновлюйте цільову URL-адресу в панелі керування або через API. Надрукований код ніколи не змінюється. Кампанія переїжджає на нову цільову сторінку - флаєри, що вже розповсюджені, слідують за нею.

Аналітика сканувань. Кожне сканування - це подія перенаправлення. Elido реєструє її в наше аналітичне сховище - позначку часу, країну, тип пристрою - без вибіркового аналізу (sampling). Функція відстеження конверсій може замкнути цикл від сканування до подальшої конверсії, якщо ваша цільова сторінка надсилає postback.

A/B-маршрутизація. Smart links дозволяють маршрутизувати трафік залежно від країни, пристрою або мови на рівні перенаправлення. Один QR на коробці товару може відправляти користувачів iOS в App Store, користувачів Android - у Play Store, а відвідувачів з десктопів - на маркетингову сторінку. Один надрукований код, три напрямки, нуль повторних тиражів.

Термін дії. Ви можете налаштувати посилання так, щоб після певної дати воно перенаправляло на сторінку «кампанія завершена». Код усе ще буде скануватися, але замість помилки 404 користувач потрапить у змістовне місце.

Ціною є затримка на одне додаткове HTTP-перенаправлення. Edge-інфраструктура Elido забезпечує p95 15 мс при влучанні в кеш. Сканування з телефону включає захоплення кадру камерою (~100–300 мс), декодування QR операційною системою, DNS-резолвінг, TLS-хендшейк і саме перенаправлення - усі ці етапи значно перевищують ті 5–15 мс, які додає саме перенаправлення. Користувачі цього не помічають.

Компроміс корекції помилок#

Динамічні QR-коди менші (коротший URL → менша версія). Це має значення, якщо ви хочете розмістити логотип.

При рівні корекції помилок H 30% модулів можуть бути неправильними або закритими, а сканер усе одно розпізнає дані. Саме цей 30-відсотковий запас дозволяє розмістити логотип бренду в центрі QR-коду - логотип перекриває модулі, а система корекції їх відновлює.

Проблема в тому, що рівень H потребує місця. Для того самого обсягу даних версія з рівнем H потребує приблизно на 15–20% більше модулів порівняно з рівнем M. Статичний QR 15-ї версії (рівень M), який ви спробуєте перевести на рівень H, перетвориться на версію 22 або вище, що означає значно щільнішу сітку. Динамічний QR 3-ї версії (рівень H) для короткого посилання типу b.elido.me/spring26 залишається крихітним і при цьому зберігає запас для логотипа.

Це маловідома причина, чому команди обирають динамічні QR-коди, навіть якщо їм не потрібно редагувати посилання: коротший URL → менша версія → більший запас для корекції помилок → логотип вміщується → бренд-дизайн друкованих матеріалів збережено.

Порівняння щільного статичного QR версії 15 з довгим UTM URL та маленького динамічного QR версії 3 з коротким посиланням і логотипом у центрі

Продуктивність та зчитуваність#

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

QR-код 3-ї версії (29×29), надрукований розміром 3 см × 3 см, має модулі шириною приблизно 1 мм. На відстані 30 см більшість камер смартфонів чітко їх розпізнають. Візьміть QR 20-ї версії (97×97) при тому самому фізичному розмірі друку - і ви отримаєте модулі 0,3 мм. На відстані витягнутої руки, на глянцевому флаєрі під галогенним світлом магазину, надійне сканування стає сумнівним.

Посібник із друку від QRTIGER (доступ від 10.05.2026) містить емпіричне правило, яке підтверджується практикою: мінімальний друкований розмір QR-коду має становити 1/10 від відстані сканування. Код, розрахований на сканування з 1 метра, має бути розміром щонайменше 10 см × 10 см. Усе, що менше, змушує сподіватися на якісну камеру та гарне освітлення.

Мінімальний розмір модуля - це поріг, а не мета. Якщо ви друкуєте на упаковці, яку розглядають з різних відстаней (товар на полиці, плакат), використовуйте версію з найменшою щільністю модулів. Це означає найкоротший URL, тобто коротке посилання.

Коли статичний QR - правильний вибір#

Статичні QR-коди мають свої законні сфери застосування. Вони є доречними, коли:

  • Адреса призначення є справді постійною та стабільною: DOI, законодавчо встановлене розкриття інформації, посилання на державні архіви, які контролюються урядовими органами.
  • Код розміщується на об’єктах, які ніколи не будуть передруковані, і вас не цікавить аналітика сканувань (книга одного накладу, товар, де цільовою сторінкою є інструкція з експлуатації, яка не зміниться).
  • Ви генеруєте QR-коди офлайн, без мережевого підключення до сервісу скорочення посилань, і вам потрібно, щоб код працював незалежно від серверів.

У всіх трьох випадках статичний код простіший. Не потрібно створювати акаунт, немає ризику закінчення терміну дії підписки, немає зовнішнього сервісу в ланцюжку сканування. QR-код, вбудований у PDF-архів зі стабільним URL, буде доступний для сканування і через десять років без будь-якої інфраструктури з вашого боку.

Коли динамічний QR перемагає#

У всіх інших випадках. Зокрема:

Будь-що, що ви можете захотіти відредагувати після друку. Будь-яка кампанія з визначеною датою завершення. Будь-який сценарій, де ви хочете знати, скільки людей сканували код, звідки та з якого пристрою. Будь-який код на упаковці, що постачається в різні регіони та потребує локалізованих сторінок. Будь-яка ситуація, коли фінальний URL ще затверджується в той момент, коли код уже потрібно віддавати в друк.

Динамічні QR-коди також зменшують «операційний радіус ураження» від непрацюючого посилання. Якщо в адресі призначення є помилка, ви виправляєте посилання, а не упаковку. Це своєрідна страховка, яка нічого не коштує під час створення, але іноді рятує все.

Дерево рішень з трьома запитаннями про зміну цілі, аналітику сканувань та офлайн-використання, що веде до вибору між динамічним або статичним QR

Дивіться також: власні домени для коротких посилань, де пояснюється, як використовувати власний домен для короткої адреси в QR-коді замість загального субдомену elido.me.

Третій варіант: динамічний QR з брендованим коротким URL#

Практичним стандартом для більшості команд є не вибір між «статичним або динамічним», а динамічний код із коротким URL на власному домені. Щось на кшталт links.acme.example/spring26 замість стандартного b.elido.me/spring26.

Чому це важливо саме для QR: брендований домен на кшталт links.acme.example зазвичай на 17–20 символів коротший за небрендоване посилання з UTM-параметрами. Ця різниця дозволяє використовувати версію 3 з рівнем корекції H, що дає значно меншу кількість модулів, ніж версія 7 для повного рядка з UTM. Менша кількість модулів означає кращу зчитуваність при малих розмірах друку та більше місця для логотипа.

Окрім фізики: власний домен на короткому посиланні означає, що QR-код залишиться дійсним, навіть якщо ви зміните постачальника послуг скорочення посилань. Ціль перенаправлення знаходиться на вашому домені, а домен належить вам. Налаштування власного домену описано на сторінці функцій, а інформація про тарифні плани - на сторінці з цінами (власні домени доступні в тарифі Pro та вище).

Для маркетологів, які керують QR-кодами у великих масштабах, сторінка рішень для маркетологів описує повний робочий процес кампанії, включаючи масову генерацію QR через API.

Операційні пастки#

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

Захистом є право власності, а не технологія. Знайте, хто володіє доменом, стежте за датою продовження, тримайте оплату в тій самій білінговій системі, що й усе інше важливе. Якщо ви використовуєте субдомени Elido elido.me, продовження - це наша турбота. Якщо ви використовуєте власний домен - це ваша відповідальність, і ви маєте ставитися до нього з тією ж операційною серйозністю, що й до api.acme.example.

Друга пастка - видалення посилання. Динамічний QR-код, що вказує на видалене посилання, видасть помилку 404 або перенаправить на резервну сторінку залежно від налаштувань сервісу. Elido перенаправляє видалені посилання на налаштовану сторінку «не знайдено» (Not Found) - це краще за звичайну 404, але все одно не є оригінальною ціллю. Якщо QR-код розміщено на фізичних матеріалах, архівуйте посилання, а не видаляйте його.

Обидва ці пункти є аргументами на користь того, щоб ставитися до коротких посилань для QR інакше, ніж до посилань для звичайних кампаній. Позначайте їх тегами, розміщуйте в окремій папці та встановлюйте нагадування перед будь-яким продовженням терміну дії. Стандарт GS1 для QR-кодів на роздрібній упаковці додає ще один рівень: GS1 Digital Link кодує ідентифікацію товару в самій структурі URL, що дає роздрібній екосистемі стабільний рівень роздільної здатності навіть тоді, коли окремі бренди змінюють сервіси скорочення посилань. Це варто знати, якщо ви працюєте в рітейлі.

Для ознайомлення з технічною анатомією шляху перенаправлення, що стоїть за динамічним QR (як працює кеш L1/L2, що відбувається при промаху повз кеш, як виглядає розподіл затримок у продакшні) - допис про розумні посилання описує ту саму edge-інфраструктуру, яка обслуговує кожне QR-перенаправлення.

  • Marius

Схоже в блозі#

Спробуйте Elido

Вставте URL - отримайте коротке посилання

Без реєстрації. Посилання живе 30 днів. Зареєструйтесь, щоб зберегти назавжди.

Безкоштовно, без реєстрації · 2 на день

Спробуйте Elido

URL-скорочувач із хостингом у ЄС: власні домени, глибока аналітика, відкритий API. Безкоштовний тариф - без кредитної картки.

Теги
dynamic qr code
static qr code
editable qr code
qr code redirect
url shortener

Читати далі