Почему стандартный UTM-трекинг не работает в B2B и SaaS?
Стандартный UTM-трекинг создавался для конверсий в одну сессию — именно поэтому он ломается в B2B. Сделка B2B SaaS занимает от 30 до 180 дней от первого клика до закрытия. Окно атрибуции по умолчанию в GA4 — 30 дней. Это значит: если VP of Engineering кликнул по вашей рекламе в LinkedIn в январе, прочитал три статьи в блоге в феврале и записался на демо в марте — GA4 запишет демо как «Direct». Тот клик за $11 в LinkedIn, с которого всё началось? Невидим.
Это не мелкий пробел. Согласно отчёту LinkedIn B2B Marketing Benchmark 2025, средний B2B-цикл продаж включает 6–10 точек касания по 3–4 каналам до закрытия сделки. Если вы отслеживаете только последнее касание, вы даёте кредит финальному толчку и игнорируете всё, что выстраивало отношения.
В Q3 2024 я помогал SaaS-компании среднего сегмента разобраться, почему платные каналы выглядели убыточными. Они тратили $47 000 в месяц на LinkedIn и Google Ads вместе. GA4 показывал, что эти каналы привели 12 заявок на демо. CRM показывал 68. Разница? 56 лидов впервые пришли через платную рекламу, но конвертировались в последующий органический визит. Без данных UTM первого касания в CRM эти лиды выглядели так, будто появились из ниоткуда.
Решение не сложное. Но оно требует думать об UTM иначе, чем это делает маркетолог в e-commerce.
Как сохранить UTM-данные первого касания на протяжении 90-дневного цикла продаж?
Ключ к B2B UTM-трекингу — захват UTM-параметров при первом визите и постоянное хранение в CRM, а не опора на сессионную атрибуцию GA4. GA4 сбрасывает атрибуцию через 30 дней (или 90 на платных каналах с ручной настройкой). Ваша CRM — нет.
Вот архитектура:
- Посетитель кликает по ссылке с UTM-метками — попадает на ваш сайт с
utm_source,utm_medium,utm_campaignи т.д. - JavaScript захватывает значения UTM из URL и сохраняет их в first-party cookie или
localStorage - Когда посетитель заполняет форму (заявка на демо, скачивание контента, подписка на рассылку), скрытые поля передают сохранённые UTM-значения в CRM
- CRM хранит UTM первого касания навсегда в записи контакта — они никогда не перезаписываются
Третий шаг — место, где большинство команд терпят неудачу. Они захватывают UTM на лендинге, но теряют их, когда посетитель переходит на /pricing или /demo. URL-параметры исчезают. Если ваша форма не подтягивает сохранённые значения — данные потеряны.
Совет: UTM Generator включает кастомный параметр
first_touch, который объединяет source, campaign, content и term в одно значение — это позволяет передать полный снимок первого касания через одно скрытое поле вместо пяти.
Какая конвенция именования UTM лучше всего подходит для B2B?
B2B-компаниям нужна конвенция именования, которая переживёт 6-месячный цикл продаж и будет понятна, когда вы смотрите на закрытую сделку в CRM, а не только в отчёте GA4. Конвенция должна отвечать на вопросы: какой канал, какая кампания, какое предложение и какой сегмент аудитории привёл этот лид?
Используйте эту структуру:
| UTM-параметр | Шаблон значения | Пример |
|---|---|---|
utm_source | Название платформы | linkedin, google, meta |
utm_medium | Тип канала, совместимый с GA4 | paid_social, cpc, email |
utm_campaign | {цель}_{аудитория}_{квартал} | demo_cfo_2026q1 |
utm_content | Идентификатор креатива или ассета | whitepaper_cta_v2, video_testimonial |
utm_term | Ключевое слово или детали таргетинга | {keyword}, seniority_director |
utm_id | ID кампании платформы (динамический) | {{CAMPAIGN_ID}} |
Две вещи в B2B важнее, чем где-либо ещё.
Первое: включайте сегмент аудитории в utm_campaign. SaaS-компания, которая продаёт и CFO, и CTO, должна знать, какая персона конвертируется лучше из LinkedIn. demo_cfo_2026q1 против demo_cto_2026q1 — сразу ясно. Просто demo_2026q1 — нет.
Второе: всегда используйте utm_id. Кампании переименовывают. «Q1 Demo Push» превращается в «Spring Demo Campaign» на третьей неделе, потому что кому-то показалось, что так лучше звучит. Числовой utm_id из динамического параметра платформы переживает переименование. Без него CRM показывает две кампании, которые на самом деле одна.
Эти правила соответствуют принципу метода чистого сигнала «Правильное значение в правильном поле» — данные аудитории в campaign, данные креатива в content, данные таргетинга в term.
Как размечать каждый B2B-канал по-разному?
B2B-маркетинг работает минимум на пяти каналах одновременно: платный поиск, платные соцсети, email-нурчеринг, органический контент и мероприятия. Каждый канал требует своего подхода к UTM.
Реклама в LinkedIn (Главный приоритет B2B)
LinkedIn съедает 40–60% большинства B2B-бюджетов на платную рекламу. Используйте динамические параметры для автоматического трекинга:
utm_source=linkedin
utm_medium=paid_social
utm_campaign={{CAMPAIGN_NAME}}
utm_content={{CREATIVE_ID}}
utm_id={{CAMPAIGN_ID}}
Динамические макросы LinkedIn ограничены — доступно только 4 против 8 у Meta. Но {{CAMPAIGN_NAME}} и {{CAMPAIGN_ID}} покрывают основное.
Google Ads (Брендовый + небрендовый поиск)
Для Google Ads разделяйте брендовые и небрендовые запросы в конвенции именования. Лид, который ищет «цены Acme CRM», принципиально отличается от того, кто ищет «лучшая CRM для SaaS».
utm_source=google-{network}
utm_medium=cpc
utm_campaign={campaignid}_{adgroupid}
utm_term={keyword}
utm_id={campaignid}
Email-последовательности
B2B-email — тема тонкая. Холодные письма новым контактам? Размечайте. Нурчеринг-последовательности для существующих лидов? Подумайте дважды.
Принцип метода чистого сигнала «Не размечай свой дом» применим здесь: если кто-то уже лид в вашей CRM с атрибуцией первого касания, добавление utm_source=hubspot&utm_medium=email к нурчеринг-письму перезаписывает исходный источник. Тот LinkedIn-лид теперь выглядит как email-лид. Расчёт ROI платных каналов сломался.
Правило большого пальца: размечайте письма привлечения (холодные рассылки, рассылка новым подписчикам). Пропускайте UTM в нурчеринг-последовательностях для существующих лидов — используйте трекинг email-платформы.
Органический контент и SEO
Органический поиск не использует UTM — GA4 отслеживает его автоматически. Но когда вы делитесь статьями из блога в соцсетях, размечайте ссылки:
utm_source=linkedin
utm_medium=organic
utm_campaign=thought_leadership_2026q1
utm_content=blog_saas_metrics
Мероприятия и вебинары
Каждая ссылка регистрации на вебинар, QR-код мероприятия и follow-up после ивента нуждаются в отдельных UTM. В 2025 году B2B-компания по организации мероприятий отследила 14 вебинаров и обнаружила, что 23% участников, которые впоследствии стали клиентами, первоначально зарегистрировались через совместное письмо с партнёром — канал, невидимый без правильной UTM-разметки.
utm_source=webinar
utm_medium=referral
utm_campaign=partner_cloudcon_2026q1
utm_content=registration_page
Как подключить UTM-данные к CRM для атрибуции лидов?
Интеграция с CRM — это то место, где B2B UTM-трекинг становится по-настоящему ценным. GA4 рассказывает о сессиях. CRM — о выручке.
Техническая настройка включает три компонента:
1. Скрытые поля формы. Каждая форма захвата лидов на сайте должна содержать скрытые поля, соответствующие именам UTM-параметров. Минимум: utm_source, utm_medium, utm_campaign, utm_content, utm_term, utm_id. Если вы используете кастомные параметры вроде first_touch или funnel_stage, добавьте и их.
2. JavaScript, который заполняет скрытые поля. При загрузке страницы считывайте UTM-значения из URL (или из localStorage, если посетитель на следующей странице). Записывайте их в скрытые поля перед отправкой формы.
3. Маппинг полей CRM. В HubSpot, Salesforce, Pipedrive — чём бы вы ни пользовались — создайте свойства контакта, соответствующие каждому UTM-полю. Свяжите отправки форм с заполнением этих свойств. Установите свойства в режим «Только создание» или «Первое известное», чтобы они никогда не перезаписывались.
Минимальный сниппет JavaScript:
// Store UTMs from URL into localStorage on first visit
const params = new URLSearchParams(window.location.search);
const utmKeys = ['utm_source', 'utm_medium', 'utm_campaign',
'utm_content', 'utm_term', 'utm_id', 'first_touch'];
utmKeys.forEach(key => {
const val = params.get(key);
if (val) localStorage.setItem(key, val);
});
// Before form submit: fill hidden fields from localStorage
document.querySelectorAll('form').forEach(form => {
utmKeys.forEach(key => {
const field = form.querySelector(`[name="${key}"]`);
if (field) field.value = localStorage.getItem(key) || '';
});
});Это упрощённый пример. Продакшен-реализации должны обрабатывать согласие на cookies, кросс-доменный трекинг и срок действия (90–180 дней для B2B).
Совет: Создавайте UTM-ссылки с помощью UTM Generator — он поддерживает кастомные параметры вроде
first_touch,funnel_stageиlandingи генерирует готовый URL со всеми полями для вставки в рекламную платформу или email-инструмент.
В чём разница между атрибуцией первого и последнего касания для B2B?
Атрибуция первого касания приписывает конверсию каналу, который привёл лид. Последнее касание — каналу последнего визита перед конверсией. Для B2B SaaS эти модели дают кардинально разные результаты.
Реальный пример от SaaS-компании на стадии Series B, с которой я работал в 2025:
| Канал | Кредит первого касания | Кредит последнего касания |
|---|---|---|
| LinkedIn Ads | 34% пайплайна | 8% пайплайна |
| Google Ads (небрендовые) | 22% пайплайна | 11% пайплайна |
| Google Ads (брендовые) | 4% пайплайна | 29% пайплайна |
| Органический поиск | 18% пайплайна | 14% пайплайна |
| Прямой / Неизвестный | 6% пайплайна | 31% пайплайна |
| 16% пайплайна | 7% пайплайна |
Последнее касание показало, что LinkedIn принёс 8% пайплайна. Первое касание — 34%. Разница составила $1,2 млн квартального пайплайна. Если бы они использовали последнее касание для распределения бюджетов, то урезали бы канал, который на самом деле наполнял воронку.
Какую модель использовать? Обе. Отслеживайте UTM первого касания в CRM (постоянные, не перезаписываются). Пусть GA4 занимается последним касанием и data-driven атрибуцией. Сравнивайте ежемесячно. Разрыв между ними раскрывает реальный путь клиента.
Как работать с мультитач-атрибуцией через UTM?
Настоящая мультитач-атрибуция требует отслеживания каждой точки касания, а не только первой и последней. UTM сами по себе не справятся — они фиксируют один снимок на заполнение формы. Но в сочетании с данными CRM и аналитикой можно построить практичную мультитач-модель.
Прагматичный B2B-подход:
- Первое касание — сохраняется в CRM через скрытые UTM-поля (постоянное)
- Касание создания лида — сессия, в которой впервые заполнили форму (фиксируется инструментом форм)
- Касание создания возможности — сессия, в которой записались на демо или начали триал (ещё один UTM-снимок, если кликнули по новой ссылке)
- Касание закрытия — последняя маркетинговая точка контакта перед закрытием сделки
Эта четырёхточечная модель покрывает 80% потребностей B2B-команд. Согласно отчёту Salesforce State of Marketing 2025, только 31% B2B-маркетологов используют какую-либо модель атрибуции помимо последнего касания. Одно только наличие данных первого касания ставит вас впереди двух третей рынка.
Для полного мультитача инструменты вроде отчётов мультитач-атрибуции HubSpot, Dreamdata или Bizible (ныне Adobe Marketo Measure) сшивают каждое взаимодействие. Они по-прежнему зависят от чистых UTM-данных как основы. Мусорные UTM на входе — мусорная атрибуция на выходе.
Какие кастомные UTM-параметры наиболее важны для SaaS?
Стандартные UTM покрывают канал и кампанию. Но SaaS-компаниям нужна большая гранулярность для анализа пайплайна. Добавьте кастомные параметры для данных, которые нужны CRM.
| Кастомный параметр | Пример значения | Почему это важно |
|---|---|---|
first_touch | linkedin-demo_cfo_q1-whitepaper_v2 | Полный снимок первого касания в одном поле |
funnel_stage | tofu, mofu, bofu | Показывает, был ли контент на стадии осведомлённости или принятия решения |
landing | pricing, case_study_acme, demo | Какая страница конвертировала — ценно для оптимизации лендингов |
audience_segment | enterprise, smb, startup | Сегментация по выручке в CRM |
content_type | webinar, ebook, blog, video | Какие форматы контента двигают пайплайн |
Параметр first_touch заслуживает особого внимания. В 90-дневном цикле продаж лиды взаимодействуют с вашим сайтом десятки раз. К моменту конверсии оригинальные UTM-данные с первого визита могут давно исчезнуть из cookies. first_touch фиксирует полную картину в одном поле CRM.
SaaS-компания, продающая софт для управления проектами, отслеживала funnel_stage в течение 6 месяцев в 2025 году. Результат: контент верхней воронки (статьи блога, отраслевые отчёты) генерировал в 3,4 раза больше лидов, чем контент нижней воронки (страницы сравнения, страницы цен). Но лиды нижней воронки закрывались в 2,8 раза чаще. Без параметра funnel_stage обе группы выглядели одинаково в отчётах по пайплайну.
FAQ
Могут ли UTM-параметры пережить 90-дневный цикл продаж B2B?
UTM-параметры существуют только в URL первого клика. Чтобы пережить 90-дневный цикл, нужно захватить их при первом визите с помощью JavaScript, сохранить в localStorage или first-party cookie и передать в CRM через скрытые поля формы. GA4 сам по себе потеряет атрибуцию через 30 дней — ваша CRM является постоянной записью.
Нужно ли использовать UTM в нурчеринг-письмах для существующих лидов?
Нет. Добавление UTM к письмам, отправляемым существующим контактам CRM, перезаписывает атрибуцию первого касания. Если лид пришёл через клик в LinkedIn за $12, а вы пометили follow-up письмо как utm_source=hubspot, CRM теперь показывает «hubspot» как источник. Используйте встроенный трекинг кликов email-платформы для нурчеринг-последовательностей.
Какая модель атрибуции лучше всего подходит для B2B SaaS?
Отслеживайте и первое, и последнее касание одновременно. Храните UTM первого касания постоянно в CRM и позвольте GA4 заниматься сессионной атрибуцией. По данным Salesforce 2025, только 31% B2B-маркетологов выходят за рамки последнего касания. Даже просто добавление данных первого касания даёт вам значительное преимущество в распределении бюджета.
Как разметить рекламу LinkedIn с помощью UTM для B2B-трекинга?
Используйте 4 динамических параметра LinkedIn: {{CAMPAIGN_NAME}}, {{CAMPAIGN_ID}}, {{CAMPAIGN_GROUP_NAME}} и {{CREATIVE_ID}}. Добавьте их напрямую к URL назначения в Campaign Manager. Всегда включайте utm_id={{CAMPAIGN_ID}} — это единственный стабильный идентификатор, который переживает переименование кампаний.
Нужен ли utm_id для B2B-кампаний?
Да. utm_id — самый недоиспользуемый и самый ценный UTM-параметр для B2B. Он служит стабильным идентификатором кампании, который не меняется, когда кто-то переименовывает «Q1 Demo Push» в «Spring Demo Campaign». Он также необходим для импорта данных о расходах в GA4, если вы хотите видеть ROI прямо в Google Analytics.
Как подключить UTM-данные к HubSpot или Salesforce?
Добавьте скрытые поля формы с именами utm_source, utm_medium, utm_campaign, utm_content, utm_term и utm_id в каждую форму захвата лидов. Используйте JavaScript для заполнения из localStorage при загрузке формы. В CRM создайте соответствующие свойства контакта, установленные в режим «Первое известное» или «Только создание», чтобы они никогда не перезаписывались последующими визитами.
Какая конвенция именования UTM подходит для B2B с длинными циклами продаж?
Используйте описательную модель с сегментами аудитории, встроенными в название кампании: {цель}_{персона}_{квартал} — например, demo_cfo_2026q1. Включайте персону, чтобы сегментировать пайплайн по роли покупателя. Все значения в нижнем регистре с подчёркиваниями, следуя правилам дисциплины формата метода чистого сигнала.
Справляется ли GA4 с мультитач-атрибуцией B2B?
GA4 предлагает data-driven атрибуцию, но ограничен окном ретроспективы в 90 дней и испытывает трудности с длинными B2B-циклами. Для настоящей мультитач-атрибуции на протяжении 6+ месяцев нужен подход на базе CRM — хранение UTM-точек касания на каждом конверсионном событии (первый визит, заполнение формы, запись на демо, закрытие) и их анализ вне GA4.
B2B UTM-трекинг не сложнее e-commerce-трекинга. Он просто медленнее. Те же принципы работают — дисциплина чистого сигнала, последовательное именование, значения, совместимые с GA4 — но ставки выше, потому что каждый лид представляет тысячи потенциальной выручки, а не корзину на $30.
Начните с двух изменений сегодня: добавьте скрытые UTM-поля в каждую форму на сайте и настройте свойства CRM на сохранение данных первого касания. Всё остальное — мультитач-модели, кастомные параметры, дашборды пайплайна — строится на этом фундаменте.
Создайте свой первый B2B UTM-шаблон в UTM Generator — настройте конвенцию именования один раз, сохраните как шаблон и поделитесь со всей командой. Никаких таблиц. Никаких догадок, какое значение medium совместимо с GA4. Один чистый сигнал на лид.