
Как отследить переходы по QR-коду: аналитика, UTM и события
Как отследить переходы по QR-коду — вопрос, который маркетолог задаёт сразу после первой офлайн-кампании. Статический QR не даёт никакой статистики. Динамический QR предоставляет базовую аналитику на стороне сервиса. Но полная картина складывается только при связке: QR-аналитика + UTM-метки + Яндекс.Метрика. В этом гайде разберём каждый слой и покажем, как собрать отчёт, который объясняет ROI офлайн-кампании вплоть до оплаты.
Что считает QR-аналитика на стороне сервиса
Любой сервис динамических QR-кодов фиксирует события на своём сервере — в момент, когда пользователь открывает URL редиректа. Это происходит до перехода на целевую страницу, поэтому данные не зависят от того, загрузился ли сайт полностью или нет.
Стандартный набор метрик QR-сервиса
Типичный дашборд динамического QR показывает: общее количество сканов, уникальные сканы (по IP + User-Agent с дедупликацией за сессию), распределение по времени (часы, дни, недели), географию (страна → регион → город), тип устройства (смартфон/планшет/десктоп), операционную систему (iOS vs Android — важно для таргетинга под разные магазины приложений) и браузер.
Ограничение этого слоя: сервис видит только то, что произошло до перехода. Сколько из этих людей дошли до корзины, оформили заказ или позвонили — вне зоны видимости QR-сервиса. Именно здесь нужны UTM-метки.
Зачем UTM, если есть QR-аналитика
UTM-метки и QR-аналитика решают разные задачи. QR-сервис считает физические сканы — это верхняя часть воронки. UTM передаёт в Яндекс.Метрику источник трафика — это вся воронка от первого визита до конверсии.
Разделение источников критично, когда у вас несколько носителей в одной кампании. Флаер в торговом центре и наклейка на упаковке могут вести на одну и ту же целевую страницу, но с разными UTM. В Метрике вы видите: с флаера 340 визитов, конверсия 2,1%; с упаковки 120 визитов, конверсия 8,7%. Вывод очевиден — упаковка эффективнее, туда нужно больше бюджета.
Атрибуция офлайн-конверсий
Метрика по умолчанию использует атрибуцию «последний значимый переход». QR-трафик с UTM будет правильно атрибутирован как отдельный источник. Без UTM все сканы сваливаются в «прямые заходы» (direct / none) — и вы не видите реального вклада офлайн-кампании.
Как собрать UTM правильно: utm_source/medium/campaign
UTM-метки для офлайн-кампаний требуют другой логики, чем для онлайн-рекламы. В онлайне есть конвенция Google/Яндекс; в офлайне — ваша собственная, которую нужно зафиксировать и соблюдать.
Рекомендованная структура для офлайна:
- utm_source — физический носитель:
flyer,packaging,banner,receipt,sticker,business-card - utm_medium — тип кампании или канал:
offline,print,pos(point of sale),outdoor - utm_campaign — название кампании:
spring_promo_2025,product_launch_spb - utm_content (опционально) — конкретная точка:
metro_nevsky,store_pushkin,box_sku12345
Примеры для типичных офлайн-сценариев
Флаер на вернисаже в Москве: ?utm_source=flyer&utm_medium=print&utm_campaign=exhibition_msk&utm_content=vernissage_march. Наклейка на товаре артикула 4521: ?utm_source=packaging&utm_medium=pos&utm_campaign=sku_labels&utm_content=sku_4521. Постер у метро «Площадь Революции»: ?utm_source=poster&utm_medium=outdoor&utm_campaign=metro_moscow&utm_content=pl_revolyucii.
Все значения — строчные буквы, без пробелов, дефис как разделитель слов. Кириллицу в UTM не используйте: она URL-кодируется и в отчётах Метрики превращается в нечитаемую строку.
Передача UTM в Яндекс.Метрику и события
Если UTM проставлены корректно, Метрика автоматически подхватывает параметры и отображает их в отчётах «Источники → UTM-метки». Дополнительных настроек не требуется — достаточно счётчика на целевой странице.
Цели и e-commerce
Для полной атрибуции настройте цели в Метрике. Для интернет-магазина это минимум: «Добавление в корзину», «Начало оформления», «Успешная оплата». Все эти события автоматически привязываются к UTM-источнику — и вы видите, сколько заказов принёс каждый офлайн-носитель.
Яндекс.Метрика поддерживает Enhanced E-commerce (расширенную электронную торговлю) по аналогии с Google Analytics 4. При правильной настройке вы видите не только количество транзакций с QR-трафика, но и средний чек, товары в заказе, возвраты. Для офлайн-конверсий (запись по телефону, визит в точку) используйте офлайн-конверсии Метрики или события из CRM через API.
Боты и накрутка сканов: как фильтровать
Реальная проблема QR-аналитики — загрязнение данных нецелевыми запросами. Источников несколько: боты поисковых систем (периодически индексируют доступные URL), системы антивирусного анализа ссылок (в мессенджерах и почте), корпоративные прокси с общим IP.
Методы фильтрации на уровне сервиса
Качественные сервисы QR-кодов фильтруют заведомо известных ботов по User-Agent (Googlebot, YandexBot, curl, Python-requests и т.д.). Дополнительно применяется rate limiting по IP: более 10 сканов с одного IP за 10 минут — скорее всего, бот или накрутка. Device fingerprinting помогает идентифицировать уникальных пользователей без cookies — важно для корректного подсчёта уникальных сканов.
На уровне Метрики: добавьте фильтр по параметру utm_source или создайте отдельный сегмент для QR-трафика. Аномальные сессии (время на сайте < 2 сек, 0 событий) исключайте из конверсионных отчётов — это признаки бот-трафика.
Сценарии аналитики по типу кампании
Каждый тип носителя требует своей логики анализа. Несколько типовых сценариев:
- Плакат у метро. Пик сканов — 8:00–9:30 и 17:30–19:00 в рабочие дни. Если скан-профиль другой, плакат, вероятно, не на входе в метро. Целевое действие — переход на страницу акции, конверсия 3–8% от сканов.
- Флаер в коробке. Скан-пик через 1–3 дня после отправки заказа (время доставки). Конверсия в повторную покупку 15–35% — один из самых эффективных постпокупочных каналов.
- Наклейка на товаре. Длинный хвост сканов: люди сканируют через недели и месяцы после покупки. Полезно для LTV-аналитики — когда именно покупатель возвращается за повторной покупкой.
- Баннер наружной рекламы. Данных о конверсии мало, так как скан требует остановки. Применяйте для проверки гипотез о локации: A/B-тест два баннера в разных районах с разными UTM_content, сравниваете скан-активность.
Пример отчёта для собственника
Маркетологу нужно объяснить ROI офлайн-кампании без технических терминов. Структура отчёта на одну страницу:
| Носитель | Сканов | Визитов (с UTM) | Конверсий | Доход, ₽ | CPL, ₽ |
|---|---|---|---|---|---|
| Флаер ТЦ Мега | 840 | 620 | 31 | 93 000 | 145 |
| Наклейка на товаре | 1 240 | 980 | 87 | 261 000 | 52 |
| Плакат метро | 380 | 210 | 8 | 24 000 | 312 |
| Чековая лента | 520 | 430 | 39 | 117 000 | 95 |
Где CPL (cost per lead) = бюджет носителя / количество конверсий. Вывод из этой таблицы читается за 5 секунд: наклейка на товаре в 6 раз эффективнее плаката у метро по стоимости лида.
Оптимизация на основе данных
После первого отчётного периода (минимум 4 недели) перераспределяйте бюджет в пользу носителей с наименьшим CPL. Меняйте текст призыва или место размещения у неэффективных носителей и тестируйте повторно. Динамический QR позволяет менять целевой URL без перепечатки — используйте это для A/B-тестов посадочных страниц: одна неделя одна страница, следующая — другая, сравниваете конверсию из одного и того же потока сканов.
QR-аналитика без UTM — это счётчик на двери. UTM без QR-аналитики — это отчёт Метрики без понимания, сколько людей подошли к двери. Вместе они дают полную воронку от офлайн-контакта до оплаты.
Попробуйте QRcode.website: создайте динамический QR с UTM-параметрами, подключите Яндекс.Метрику и уже через 2 недели получите первый отчёт по эффективности каждого носителя.