← Все статьи

Промокоды и QR-коды: как связать офлайн-точку с аналитикой и понять, откуда пришёл клиент

05.09.20269 мин чтения
Готовил · Проверил и отредактировал

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

Промокод и QR-код с UTM закрывают этот пробел. Ни тот ни другой не требует сложной настройки, но оба дают конкретный ответ: вот этот канал привёл вот столько клиентов. В статье разберём логику каждого инструмента, как их правильно настроить и что делать с данными, которые они собирают.

Почему клиент с флаера остаётся «тёмным пятном» в аналитике

Онлайн-аналитика фиксирует каждое цифровое касание. Клик по объявлению в Яндекс.Директе, переход из органики, ссылка в письме — всё это попадает в Метрику автоматически. С офлайном иначе: флаер, листовка, наружный баннер, реклама в лифте, стенд на городском событии — ничего из этого в аналитику не попадает само по себе.

Если клиент пришёл с листовки и сразу позвонил, у вас есть звонок, но нет информации о том, что именно побудило его позвонить. Если пришёл в точку и купил без онлайн-шага, в Метрике визита не будет вообще. Единственный способ узнать источник — спросить напрямую, но даже тогда ответ оседает в памяти администратора, а не в CRM и не в аналитике.

Итог: бизнес тратит бюджет на несколько офлайн-каналов одновременно и не понимает, какой из них работает. Листовки у метро? Партнёрские стойки в соседнем кафе? Щит на оживлённой улице? Канал, который нельзя измерить, невозможно и оптимизировать.

Что такое офлайн-атрибуция

Атрибуция — присвоение конкретного клиента конкретному рекламному каналу. В онлайне это работает автоматически через UTM-метки и cookies. В офлайне нужен ручной инструмент: что-то, что клиент «принесёт» с собой из рекламного носителя.

Промокод и QR-код с UTM решают эту задачу по-разному и хорошо дополняют друг друга. Промокод работает там, где клиент приходит в точку или звонит без онлайн-шага. QR-код с UTM работает там, где клиент сначала сканирует его и попадает на сайт: в этот момент обычная онлайн-аналитика его «подхватывает».

Промокод как инструмент атрибуции

Промокод в контексте атрибуции не обязательно означает скидку. Это уникальный код, который клиент называет при покупке или вводит при заказе и который позволяет понять, откуда он пришёл. Скидка служит дополнительной мотивацией назвать код, но не является целью сама по себе.

Логика простая: разным носителям присваиваются разные промокоды. Клиент назвал код «ЛИСТОВКА» — пришёл с листовки. Назвал «КАФЕ» — пришёл через стойку у партнёра. Назвал «ИВЕНТ» — нашёл вас на мероприятии. Данные собираются там, где это удобно: в CRM, в таблице или как событие в Яндекс.Метрике.

Три варианта фиксации промокода

Выбор способа фиксации зависит от того, какой процесс продажи уже выстроен в бизнесе.

  • CRM. Оптимальный вариант при наличии системы. Промокод вносится в карточку сделки или контакта. Позволяет отследить не только факт прихода, но и дальнейшую историю: купил ли клиент, вернулся ли, на какую сумму. Даёт возможность посчитать реальный ROI по каждому каналу.
  • Таблица. Подходит при отсутствии CRM или простом процессе. Администратор вносит дату, промокод и сумму покупки. Раз в неделю составляется сводка по каналам. Не автоматически, но работает.
  • Цель в Яндекс.Метрике. Актуально для онлайн-заказов: клиент вводит промокод в поле на сайте, и это отправляет событие в Метрику. Тогда данные встают в один ряд с остальными онлайн-каналами и видны в тех же отчётах.

Как объяснить задачу персоналу

Самое слабое звено в системе промокодов — человек. Если администратор не спросил о коде или внёс его неточно, данные потеряны. Несколько простых мер снижают этот риск.

Распечатайте список активных промокодов и поместите его рядом с рабочим местом администратора. Каждый код с пояснением источника: «METRO — флаеры у станции «Название», CAFE — стойка в кофейне «Название»». Так можно быстро сверить, правильно ли клиент называет код.

Включите вопрос о промокоде в стандартный скрипт обслуживания. Не «есть ли у вас промокод?», а «назовите промокод, если он у вас есть». Первая формулировка сигнализирует, что без промокода ничего не изменится. Вторая — что код ожидается и важен.

Зафиксируйте порядок внесения в инструкции. Если промокод вносится в CRM, покажите конкретное поле. Если в таблицу, дайте ссылку и объясните формат. Когда процесс задокументирован, при смене сотрудника ничего не теряется.

Один промокод — один канал

Самая распространённая ошибка — напечатать один промокод на все носители сразу. Кажется удобным: клиент называет «СКИДКА», получает скидку, все довольны. Но в итоге вы знаете только, что за месяц код назвали 80 человек, и больше ничего. Сколько пришло с листовки, сколько от партнёра, сколько с ивента — неизвестно.

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

Канал / носительПромокодГде фиксируем
Флаеры у ближайшей станции метроMETROCRM, поле «Источник»
Стойка в партнёрской кофейнеCAFECRM, поле «Источник»
Участие в городском фестивалеFESTCRM, поле «Источник»
Листовки в бизнес-центреBCCRM, поле «Источник»
Публикация у блогера или партнёраPARTNERФорма на сайте → цель в Метрике

Нет жёсткого правила, насколько детально дробить коды. Главный критерий: каждый код должен отвечать на вопрос «откуда пришёл клиент» так, чтобы по итогам месяца можно было принять решение — продолжать вкладывать в этот канал или нет.

При трёх партнёрах с разными вложениями в каждого дробите до партнёра. При двадцати небольших точках с одинаковым форматом достаточно одной категории «партнёры».

QR-код с UTM: как офлайн-носитель становится онлайн-источником

QR-код — это способ упаковки данных (чаще всего — ссылки) в графический формат, считываемый камерой. Пользователь сканирует код и попадает на страницу. Если в этой ссылке есть UTM-параметры, переход фиксируется в Яндекс.Метрике со всеми атрибутами источника, как будто человек кликнул по обычной ссылке в интернете.

Это позволяет превратить физический носитель в полноценный отслеживаемый канал. Разные носители получают разные QR-коды, каждый ведёт на одну и ту же целевую страницу, но с разными UTM-параметрами — и в Метрике видно, какой носитель привёл сколько визитов.

Как сформировать ссылку с UTM

UTM-ссылка состоит из обычного адреса страницы плюс набора параметров через «?». Три параметра обязательны:

  • utm_source: источник трафика, откуда пришёл человек. Для офлайна: flyer, partner_cafe, banner_outdoor, stand_event.
  • utm_medium: тип канала. Для офлайна принято использовать: print для печатных носителей, outdoor для наружной рекламы, event для стендов на мероприятиях. Официального списка значений у Google и Яндекса нет — это устойчивые отраслевые конвенции. В GA4 нестандартные значения utm_medium могут попасть в категорию «Unassigned», если не настроить пользовательские каналы.
  • utm_campaign: название кампании или акции, удобно для группировки по периодам: summer2026, opening2026.

Четвёртый параметр необязателен, но полезен:

  • utm_content: уточнение внутри источника. Если листовки двух форматов, можно разделить: a4 и a5. Или: entrance и cashier, если листовки лежат в двух местах одного партнёра.

Пример итоговой ссылки для флаера у станции метро:

yourdomain.ru/?utm_source=flyer_metro&utm_medium=print&utm_campaign=summer2026

Из этой ссылки генерируется QR-код и печатается на носителе. Визуально адрес нечитаем, но при сканировании посетитель попадает на нужную страницу, а Метрика фиксирует все параметры.

Где сгенерировать QR-код

Подойдёт любой генератор QR-кодов: встроенный в отдельные сервисы управления рекламой, онлайн-генераторы или инструменты для работы с UTM-ссылками. Важен не инструмент, а правильно составленная ссылка на входе.

Перед отправкой в печать отсканируйте QR-код несколькими устройствами и убедитесь, что он ведёт на нужную страницу, страница открывается без ошибок, и в Метрике зафиксировался тестовый визит с правильными параметрами. После того как тираж отпечатан, исправить ошибку в ссылке невозможно.

Схема: разные носители, разные QR, одна страница — разная аналитика

Носительutm_sourceutm_mediumutm_campaign
Флаер у метро «Площадь»flyer_ploshchadprintsummer2026
Листовка в кофейне «Название»leaflet_cafeprintsummer2026
Наружный баннер на ул. Ленинаbanner_leninaoutdoorsummer2026
Стенд на летней ярмаркеstand_faireventsummer2026

Все четыре QR-кода ведут на одну страницу, но каждый несёт свои параметры. В отчёте Метрики появятся четыре отдельных источника — их можно сравнивать напрямую: кто привёл больше визитов, кто лучше конвертирует.

Что видно в Метрике и как читать данные

После того как первые посетители просканировали QR-коды, данные начинают накапливаться в Яндекс.Метрике. Найти их можно в разделе «Отчёты» → «Источники» → «Источники, сводка» (путь актуален в интерфейсе на момент написания статьи; Метрика обновляла навигацию в конце 2025 года, поэтому при необходимости сверьтесь с хелп-центром Яндекса). Здесь все каналы выстраиваются в одну таблицу: рядом с прямыми заходами, органикой и рекламой появляются офлайн-источники с названиями из utm_source.

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

Как правильно читать отчёты Метрики и на какие цифры смотреть в первую очередь, разобрано в статье про семь рабочих отчётов Яндекс.Метрики.

Пример: как сравнивать офлайн-каналы

Представьте: за месяц флаеры у метро привели 140 визитов, листовки в кофейне — 60, наружный баннер — 220. Без данных о конверсии кажется, что баннер самый эффективный. Но если из 140 визитов с метро 8 человек заполнили форму заявки, из 60 в кофейне — 5, а с баннера из 220 — только 4, картина меняется: листовки в кофейне дают лучшую конверсию при меньшем трафике.

Такой анализ возможен только при настроенных целях. Цель в Метрике — конкретное действие пользователя: отправка формы, переход на страницу «спасибо», клик по кнопке «Записаться». Без цели QR-коды дадут только данные о визитах, но не о том, привели ли эти визиты к реальным обращениям. Цели нужно настроить до начала кампании.

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

Если несколько офлайн-носителей объединены под одной акцией (все с utm_campaign=summer2026), можно отфильтровать отчёт по этому параметру. Тогда видна общая картина: сколько человек пришло со всех офлайн-точек суммарно и какой носитель дал наибольший вклад. Это полезно для квартального отчёта или при решении, стоит ли повторять кампанию в следующем сезоне.

Промокод и QR: что когда использовать

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

QR-код с UTM работает там, где клиент сначала заходит на сайт: сканирует код, попадает на страницу, и это автоматически фиксируется в Метрике. Если клиент пришёл в точку напрямую, не заходя на сайт, QR не поможет: онлайн-следа не будет.

СитуацияПромокодQR с UTM
Клиент пришёл в точку без онлайн-шагаРаботаетСледа в Метрике нет
Клиент зашёл на сайт и оставил заявкуЕсли ввёл код на сайтеАвтоматически в Метрике
Клиент позвонил после прочтения флаераЕсли назвал код по телефонуЗвонок не свяжется с QR
Нужно сравнить с онлайн-рекламой в МетрикеТолько через интеграциюВстаёт в один отчёт автоматически
Персонал принимает заказы в точкеПростой процессНе применимо

В большинстве случаев оптимальный вариант — оба инструмента на одном носителе. На флаере размещают QR-код для тех, кто зайдёт на сайт, и промокод текстом для тех, кто придёт в точку или позвонит. Так покрываются оба сценария без дополнительных расходов.

Для бизнесов с частыми офлайн-звонками есть отдельный инструмент — коллтрекинг, технология подменных номеров. Она присваивает разным рекламным каналам разные телефонные номера и фиксирует, по какому из них позвонили. Промокод коллтрекинг не заменяет.

Типичные ошибки, из-за которых данные не собираются

Один промокод на все каналы

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

QR-код без цели в Метрике

QR с UTM фиксирует визиты, но не конверсии. Если в Метрике не настроены цели (отправка формы, нажатие кнопки, переход на страницу подтверждения), видно только «сколько пришло», но не «сколько обратилось». Канал может давать много трафика и мало заявок, и без цели это незаметно. Итог: деньги потрачены на размещение, а оценить эффект невозможно.

Персонал пропускает вопрос о промокоде

Если администратор спрашивает о промокоде только иногда, данные становятся нерепрезентативными. Допустим, зафиксировано 40% клиентов с кодами, а 60% прошли мимо вопроса: вы анализируете частичные данные как полные, и выводы будут ошибочными. Объяснить персоналу смысл задачи так же важно, как настроить техническую часть.

Промокоды не обновляются при смене акции

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

QR-код не проверили перед печатью

Опечатка в UTM-параметре, ссылка на несуществующую страницу, редирект на главную вместо целевой — всё это обнаруживается после того, как тираж уже отпечатан. Проверять QR нужно несколькими устройствами до печати: отсканировать, убедиться, что страница открывается, и проверить, что в Метрике зафиксировался визит с правильными параметрами.

Один QR-код на все точки размещения

Распространённый случай: один QR-код напечатан во всех точках — и в кофейне, и на флаере у метро, и на стенде. Технически он работает, посетители попадают на сайт. Но без разных UTM-параметров их нельзя разделить в аналитике. В Метрике они окажутся в одной строке, и вопрос «какая точка работает лучше?» останется без ответа.

Как вписать офлайн-атрибуцию в общую систему

Промокоды и QR закрывают конкретный пробел: «откуда пришёл клиент с флаера». Но они не заменяют системный подход к аналитике, который охватывает весь путь клиента от первого касания до продажи.

Следующий шаг после сбора данных по промокодам — связать офлайн-источники с данными о продажах из CRM. Тогда можно считать не просто «сколько пришло с листовки», а «сколько из пришедших в итоге купили и на какую сумму». Один из инструментов для этого — офлайн-конверсии в Яндекс.Метрике: возможность загрузить данные о сделках из CRM и соотнести их с онлайн-источниками. Подробнее об этом в статье про офлайн-конверсии в Директе.

Для бизнеса с программой лояльности промокод может работать двойником: одновременно атрибутировать источник и начислять бонусные баллы клиенту. Если у вас уже есть CRM с программой лояльности, это логичная точка интеграции. О том, как выстроить механику удержания клиентов через промокоды и бонусы, рассказано в статье про программы лояльности для малого бизнеса.

Коротко: что важно запомнить

  • Клиент из офлайн-рекламы невидим в Яндекс.Метрике по умолчанию. Промокод и QR-код с UTM — два инструмента, которые закрывают этот пробел без сложной настройки.
  • Промокод работает для клиентов, которые приходят в точку или звонят. QR с UTM — для тех, кто сначала заходит на сайт. На одном флаере можно разместить оба: QR-код и промокод текстом.
  • Один промокод на все каналы — не атрибуция. Нужен отдельный код для каждого носителя или канала: флаер, партнёр, наружка, ивент — по отдельности.
  • QR-код — это ссылка с UTM-параметрами. Обязательные: utm_source (откуда), utm_medium (тип канала), utm_campaign (акция или период). Разные носители получают разные QR с разными utm_source.
  • Без цели в Метрике QR даёт только данные о визитах, но не о конверсиях. Цель нужно настроить до начала кампании.
  • Слабое звено — персонал. Список кодов рядом с кассой, вопрос о промокоде в скрипте обслуживания, задокументированный порядок внесения — три меры, которые снижают потери данных.
  • QR-код тестируется несколькими устройствами до отправки в печать. Нужно убедиться, что страница открывается и параметры фиксируются в Метрике. После печати исправить ошибку невозможно.