UTM-метки — основа любой маркетинговой аналитики. Без них вы не отличите клиента из контекста от клиента из email-рассылки. С ошибками в метках — путаете каналы, теряете данные и принимаете неверные решения о бюджете.
Этот гайд закрывает 99% ситуаций, с которыми сталкиваются маркетологи в России: от первых 5 меток в Директе до сложной разметки кросс-канальных кампаний с офлайн-точками контакта.
Что такое UTM-метки
UTM (Urchin Tracking Module) — параметры в URL, которые передают информацию об источнике трафика в системы аналитики (Яндекс Метрику, Google Analytics) и CRM.
Пример размеченной ссылки:
https://growmatrix.ru/?utm_source=yandex&utm_medium=cpc&utm_campaign=brand_search&utm_content=ad_42
Когда пользователь переходит по ней:
- Метрика записывает:
источник=yandex, тип=cpc, кампания=brand_search - CRM получает данные через JS-скрипт и привязывает их к лиду
- Отчёты показывают, какой канал и какое объявление привели сделку
Без UTM весь этот трафик попадёт в "не определено" или будет агрегирован в одну запись "yandex".
5 стандартных UTM-меток
1. utm_source — откуда трафик
Источник: домен сайта или название платформы. Обязательная.
Примеры:
yandex— Яндекс Директvk— ВКонтактеtelegram— Telegram (Ads или каналы)email— рассылкиdzen— Яндекс Дзенvc— VC.rupartner_name— конкретный партнёр
2. utm_medium — тип трафика
Канал/среда: тип маркетингового действия. Обязательная.
Стандартные значения:
cpc— оплата за клик (контекст, таргет)cpm— оплата за показыsocial— органика в соцсетяхemail— email-рассылкиreferral— переходы с других сайтовaffiliate— партнёрский трафикdisplay— медийная рекламаqr— переходы с QR-кодовnotification— push-уведомления
3. utm_campaign — название кампании
Идентификатор маркетинговой кампании. Обязательная.
Структура должна быть единой по всему бизнесу. Пример хорошего шаблона:
{месяц}_{продукт}_{сегмент}_{цель}
Например: 2025_05_audit_smb_lead
4. utm_content — дифференциация креатива
Используется для A/B-тестов и различения объявлений внутри одной кампании. Опциональная.
Примеры:
headline_a / headline_b— разные заголовкиimage_red / image_blue— разные креативыcta_demo / cta_call— разные призывы
5. utm_term — ключевое слово
Изначально — для поисковой рекламы (Директ автоматически подставляет ключ через {keyword}). Опциональная.
Примеры:
kupit_lendingnmarketingovoe_agentstvo_moskvaroi_kalkulyator
Шаблон разметки для распространённых каналов
Яндекс Директ — поиск
Подставляется автоматически в шаблоне ссылки кабинета:
?utm_source=yandex
&utm_medium=cpc
&utm_campaign={campaign_id}_{campaign_name}
&utm_content={ad_id}
&utm_term={keyword}
&yclid={yclid}
{yclid} — обязательно для CRM-привязки и автоматического импорта расходов в Метрику.
Яндекс Директ — РСЯ
?utm_source=yandex
&utm_medium=cpm
&utm_campaign={campaign_id}_rsya
&utm_content={ad_id}_{position_type}
&utm_term={source}
{source} в РСЯ подставит площадку показа (yandex.ru, vc.ru, и т.д.).
VK Ads
?utm_source=vk
&utm_medium=cpc
&utm_campaign={campaign_name}
&utm_content={ad_id}_{ad_name}
VK Ads поддерживает {campaign_id}, {campaign_name}, {ad_id}, {ad_name} через макросы.
Telegram Ads
?utm_source=telegram
&utm_medium=cpc
&utm_campaign=brand_q2
&utm_content={ad_id}
В Telegram Ads нет автоматических макросов — UTM нужно прописывать вручную для каждого объявления. Используйте формат вложенных кампаний: tg_{месяц}_{креатив}.
Email-рассылки
?utm_source=email
&utm_medium=newsletter
&utm_campaign=q2_audit_promo
&utm_content=cta_top
utm_content=cta_top / cta_middle / cta_bottom — отслеживает, какая кнопка в письме сработала.
QR-коды на офлайн-материалах
?utm_source=offline
&utm_medium=qr
&utm_campaign=spbcamp25
&utm_content=banner_hall_a
Каждый QR-код должен иметь уникальный utm_content, иначе вы не отличите конверсии с разных носителей.
Партнёрские ссылки
?utm_source=partner
&utm_medium=affiliate
&utm_campaign=blog_vc
&utm_content={partner_slug}
utm_content={partner_slug} позволяет считать выплаты партнёрам по точным заявкам.
10 правил, которые сэкономят вам сотни часов
1. Только латиница и нижний регистр
utm_source=Yandex и utm_source=yandex — это два разных источника в Метрике. Кириллица в URL ломает фильтры.
Плохо: utm_campaign=Осенняя%20Распродажа
Хорошо: utm_campaign=autumn_sale_2025
2. Без пробелов — только подчёркивания или дефисы
Пробел = %20 в URL = ад в отчётах.
Плохо: utm_campaign=brand search
Хорошо: utm_campaign=brand_search или brand-search
3. Единая структура `utm_campaign` по всему бизнесу
Если в Директе вы пишете 2025_05_audit, в VK — osen_audit, в email — kampaniya_5, отчётность превращается в кашу. Зафиксируйте шаблон и пользуйтесь им везде.
4. utm_medium только из стандартного списка
Не плодите medium=context, paid, online, banner — используйте cpc, cpm, social. Это позволит группировать каналы автоматически в готовых отчётах Метрики.
5. utm_source — это платформа, а не продукт
Плохо: utm_source=audit_promo (это название кампании, а не источник)
Хорошо: utm_source=yandex + utm_campaign=audit_promo
6. Не дублируйте информацию
utm_source=email&utm_medium=email&utm_campaign=email_q2 — две ненужные email повторяются. Тратите место в URL и засоряете отчёты.
7. Передавайте UTM в CRM через скрытые поля формы
<input type="hidden" name="utm_source" value="">
<input type="hidden" name="utm_medium" value="">
<input type="hidden" name="utm_campaign" value="">
JS-скрипт читает параметры URL, записывает их в эти поля и sessionStorage. При отправке формы данные летят в CRM вместе с лидом.
8. Сохраняйте UTM в sessionStorage между переходами
Пользователь зашёл с Директа на главную, а заявку оставил через 2 минуты на странице услуг. Если не сохранить UTM — Метрика и CRM запишут переход с предыдущей страницы, а не с Директа.
// Сохраняем при первом заходе
const params = new URLSearchParams(window.location.search);
['utm_source','utm_medium','utm_campaign','utm_content','utm_term'].forEach(k => {
const v = params.get(k);
if (v) sessionStorage.setItem(k, v);
});
// Достаём при отправке формы
function getUtm() {
return ['utm_source','utm_medium','utm_campaign','utm_content','utm_term']
.reduce((acc, k) => { acc[k] = sessionStorage.getItem(k) || ''; return acc; }, {});
}
9. Длина URL — не более 2000 символов
Браузеры режут длинные URL. Если делаете глубокую вложенность параметров — проверяйте итоговую длину.
10. Никогда не пишите PII в UTM
Email, телефон, ФИО в UTM — нарушение 152-ФЗ. Эти данные попадают в логи Метрики и Google Analytics, доступны множеству служб, и могут утечь.
Типичные ошибки, которые видим у клиентов
Ошибка 1. Отсутствие меток на органике из соцсетей
Когда менеджер шерит ссылку в Telegram-канале без UTM, переход уходит в "(direct)" или "telegram referral". Решение — настроить шаблон ссылок в pretty link или Bitly с автоматическими UTM.
Ошибка 2. Один utm_campaign на год
utm_campaign=brand — и так для всего бренда круглый год. Невозможно понять, какие активности сработали лучше.
Ошибка 3. Микс автоматических и ручных меток
В Директе подставлены автоматические UTM через макросы, а в одном объявлении кто-то прописал руками — теперь в отчёте 80% точных данных и 20% мусора.
Ошибка 4. UTM на внутренних ссылках сайта
https://example.ru/page1?utm_source=internal
Так теряется реальный источник пользователя — он перезаписывается на internal. Внутренние UTM делать нельзя никогда.
Ошибка 5. Использование разных utm_source для одной площадки
utm_source=yandex.direct в одной кампании, yandex_direct в другой, yandex в третьей. В Метрике это три разных источника — статистика разваливается.
Как проверить, что метки работают
- Откройте Яндекс Метрику → Отчёты → Источники → Метки UTM
- Найдите вашу кампанию в списке
- Сверьте число визитов с числом кликов в рекламном кабинете (расхождение до 10% — норма, 20%+ — проблема)
- Проверьте конверсии в воронке Метрики — UTM должны передаваться вплоть до целевого действия
Если расхождение больше 20% — частые причины:
- Метки не скопировались во все объявления
- Ошибки в синтаксисе (опечатки, лишние символы)
- Неправильные макросы в кабинете
- Метки теряются при редиректе через сторонний домен (Bitly без сохранения параметров)
Шаблон для быстрого старта
Сохраните в Excel/Google Sheets как генератор:
| Канал | utm_source | utm_medium | utm_campaign шаблон |
|---|---|---|---|
| Яндекс Директ Поиск | yandex | cpc | direct_search_{месяц}_{продукт} |
| Яндекс Директ РСЯ | yandex | cpm | direct_rsya_{месяц}_{продукт} |
| VK Ads | vk | cpc | vk_{месяц}_{сегмент} |
| Telegram Ads | telegram | cpc | tg_{месяц}_{креатив} |
| newsletter | em_{месяц}_{тема} | ||
| SEO/органика | yandex/google | organic | (не размечается) |
| QR офлайн | offline | qr | qr_{ивент}_{носитель} |
Формула в Google Sheets для генерации полной ссылки:
=A2&"?utm_source="&B2&"&utm_medium="&C2&"&utm_campaign="&D2&"&utm_content="&E2
Разметка — это не разовая задача
Хорошая разметка живёт годами и расширяется по мере роста маркетинга. Один раз договоритесь с командой о структуре, зафиксируйте в notion или гайде, и проверяйте каждую новую кампанию по чек-листу.
Если хотите аудит вашей UTM-разметки и чтобы все каналы стали корректно атрибутироваться в одном дашборде — мы делаем это в рамках настройки сквозной аналитики.