События продукта: активация и тарифы, а не только заявки

Принято считать, что счётчик аналитики годится только для простых сайтов услуг («посмотрел лендинг → отправил форму заявки»), а если у вас онлайн-сервис, SaaS-продукт, калькулятор или личный кабинет пользователя — нужно сразу внедрять дорогие продуктовые системы вроде Amplitude, Mixpanel или строить собственное хранилище на ClickHouse.

На старте и среднем масштабе продукта это избыточная трата времени и денег. счётчик аналитики прекрасно умеет собирать полноценную событийную аналитику продукта, строить многошаговые воронки от регистрации до «Ага-момента» (Activation) и первой оплаты тарифа, а также передавать параметры пользователя (UserParams и params визита) — причём с одним огромным преимуществом: все эти продуктовые события можно в один клик передать обратно в контекстная реклама для обучения автостратегий на платящих и активированных пользователей!

В этой статье мы спроектируем карту продуктовых событий (Event-map), разберём синтаксис событие цели с параметрами и соберём сквозную воронку внутри продукта.

Коротко (TL;DR — за 30 секунд):

  • В продуктовом маркетинге регистрация (Sign Up) — это ещё не победа. 70% зарегистрировавшихся пользователей никогда не заплатят, если не пройдут ключевое действие активации (Aha-moment) в первые 15 минут.
  • Карта событий (Event-map) для продукта строится по 5 ступеням пирамиды AARRR: 1) Привлечение (landing_view, pricing_view) → 2) Регистрация (signup_success) → 3) Онбординг и Активация (project_created, first_action_done) → 4) Монетизация (paywall_view, payment_success с суммой) → 5) Удержание (feature_repeat_use).
  • Золотая фишка для контекстной рекламы: обучайте рекламные кампании не на дешёвые пустые регистрации (signup_success), а на событие успешной активации в продукте (aha_activated) — это снижает стоимость платящего подписчика (CAC) в 2–3 раза.

Видеоразбор на экране (23 минуты)

[счётчик для продукта — события, Event-map и воронка активации]

  • 00:00 — Почему цель «Регистрация в сервисе» обманывает маркетолога так же, как дешёвый квиз
  • 03:30 — Что такое Aha-moment (Точка активации) в SaaS, B2B-кабинете и онлайн-сервисе
  • 07:15 — Собираем Event-map (Карту событий) в таблице: синтаксис объект_действие
  • 11:40 — Код на экране: как передавать событие цели вместе с параметрами тарифа и выручки (params)
  • 15:50 — Строим Составную цель и Воронку в счётчике аналитики: на каком шаге онбординга отваливаются 60% людей
  • 19:30 — Как кормить автостратегии контекстной рекламы событием aha_activated вместо сырых регистраций

Оглавление

  1. Чем продуктовая аналитика отличается от лендинговой: почему регистрация ≠ клиент
  2. Что такое «Точка активации» (Aha-moment) и как её найти в своём продукте
  3. Проектируем Event-map (Карту событий) для счётчика аналитики (Эталонная таблица)
  4. Код для разработчика: событие цели с параметрами визита (params) и userParams
  5. Кейс на цифрах: как оптимизация рекламного кабинета на событие активации снизила CAC платной подписки в 2,3 раза
  6. Готовый артефакт: шаблон ТЗ на разметку продуктовых событий (Event-map)
  7. Частые вопросы (FAQ)

1. Чем продуктовая аналитика отличается от лендинговой: почему регистрация ≠ клиент

На классическом сайте услуг путь пользователя на сайте заканчивается в момент отправки формы: дальше звонит менеджер и ведёт клиента в CRM (Статья C1).

Но если у вас онлайн-сервис, SaaS, конструктор, B2B-платформа с личным кабинетом, мобильное веб-приложение или сложный интерактивный калькулятор, то после нажатия кнопки «Зарегистрироваться / Попробовать бесплатно» главная драма только начинается!

Посмотрите на типичную воронку B2B-сервиса:

  • 1 000 человек перешли с рекламы контекстной рекламы;
  • 100 человек зарегистрировались в бесплатный триал (CR1 = 10%);
  • Но 65 из этих 100 человек зашли в пустой личный кабинет, увидели 20 непонятных кнопок, ничего не настроили и закрыли вкладку навсегда!
  • До реального использования продукта (Активации) дошли только 35 человек, а до покупки платного тарифа — 12 человек.

Если в вашей счётчике аналитики настроена только одна цель — Регистрация, вы слепы на 80% пути клиента: вы не видите, на каком именно шаге внутри личного кабинета отвалились те самые 65 человек, и продолжаете закупать в рекламном кабинете трафик, который даёт «пустые регистрации».


2. Что такое «Точка активации» (Aha-moment) и как её найти в своём продукте

Точка активации (Activation / Aha-moment) — это первое конкретное действие внутри вашего продукта, совершив которое пользователь реально почувствовал на себе обещанную в оффере ценность.

Статистика любого подписного бизнеса (Статья B6) показывает жёсткую корреляцию: те пользователи, которые совершили ключевое действие активации в первую сессию, конвертируются в платную подписку в 4–8 раз чаще, чем те, кто просто зарегистрировался.

Тип продукта / сервиса❌ Ложная цель (Просто вход)✅ Настоящее событие Активации (Aha-moment)
Сервис аналитики для селлеров WB/OzonЗарегистрировался по email (signup)Успешно подключил API-ключ своего магазина и увидел первый отчёт по прибыли (api_key_connected)
Конструктор виджетов / квизов для сайтаЗашёл в личный кабинетСоздал первый виджет и скопировал код установки на сайт (widget_code_copied)
Сервис автоматизации обзвона / Чат-ботовПодтвердил номер телефонаЗапустил тестовый звонок / сценарий бота на свой номер (test_call_completed)
Сложный сайт услуг с онлайн-проектировщиком (Кухни / Дома)Открыл страницу 3D-планировщикаСобрал конфигурацию со своими размерами и сохранил смету (config_saved)

3. Проектируем Event-map (Карту событий) для счётчика аналитики (Эталонная таблица)

Чтобы в списке целей счётчика аналитики был идеальный порядок, все продуктовые события называются по единому стандарту snake_case: [этап]_[объект]_[действие] (в нижнем регистре, глагол в прошедшем времени — событие отправляется только тогда, когда действие уже успешно свершилось!).

Вот готовая карта из 10 базовых событий (Event-map), которая закрывает всю воронку продукта от первого визита до повторной оплаты:

№Этап воронки (AARRR)Идентификатор цели (Goal ID в счётчике)Когда именно срабатывает (Триггер в коде)Роль в аналитике и контекстной рекламе
1Привлечение (Acquisition)mkt_pricing_viewedПользователь открыл страницу тарифов или проскроллил до блока ценМикроцель интереса; сегмент для ретаргетинга в рекламной сети
2Регистрация (Sign Up)auth_signup_startedКликнул «Начать бесплатно», открылась форма регистрацииНачало воронки регистрации (оценка трения формы)
3Регистрация (Sign Up)auth_signup_completedАккаунт успешно создан в базе данных (ответ сервера 200 OK)Базовая конверсия верхнего уровня (передаём в рекламный кабинет на старте)
4Онбординг (Onboarding)onb_step1_profile_filledЗаполнил первый шаг приветственного мастера (например, нишу/роль)Контроль отвала внутри анкеты онбординга
5Онбординг (Onboarding)onb_step2_project_createdСоздал первый рабочий проект / загрузил файл / подключил интеграциюТехнический шаг настройки
6Активация (Activation) ⭐act_aha_completedПолучил первый полезный результат в продукте (Aha-moment!)⭐ ГЛАВНАЯ ЦЕЛЬ для обучения автостратегий контекстной рекламы!
7Монетизация (Revenue)pay_checkout_openedНажал «Оплатить тариф / Перейти на Pro», открылось окно оплатыСегмент горячего дожима (брошенная оплата для ретаргетинга и отдела продаж)
8Монетизация (Revenue) 💰pay_subscription_paidУспешное списание первой оплаты тарифа (передаём с ценностью в ₽!)💰 Финальная денежная цель для расчёта CAC и ROAS/ROMI
9Удержание (Retention)ret_day7_activeПользователь вернулся и совершил целевое действие на 7-й деньИндикатор выживаемости когорты (ранний Retention)
10Расширение (Expansion)pay_plan_upgradedПерешёл с базового тарифа на старший (Оптимальный / VIP)Оценка роста ARPU и LTV

4. Код для разработчика: событие цели с параметрами визита (params) и userParams

Многие не знают, что в метод ym(COUNTER_ID, 'событие цели', 'GOAL_ID', params) в счётчике аналитики четвёртым аргументом можно передавать объект с дополнительными параметрами события (название тарифа, период оплаты и точную сумму выручки order_price)!

Посмотрите, как чисто и компактно это пишется в коде вашего приложения (React / Vue / Astro / чистый JS):

const YM_COUNTER_ID = 12345678; // Ваш номер счётчика аналитики

// 1. Событие успешной регистрации + передача типа аккаунта в параметры посетителя (userParams)
function onUserSignupSuccess(userId, accountType) {
  // Привязываем постоянные свойства к профилю пользователя в счётчике
  ym(YM_COUNTER_ID, 'userParams', {
    UserID: String(userId),
    AccountType: accountType // например: 'agency' или 'direct_client'
  });

  // Фиксируем достижение цели регистрации
  ym(YM_COUNTER_ID, 'событие цели', 'auth_signup_completed');
}

// 2. Событие прохождения точки Активации (Aha-moment)
function onAhaMomentCompleted(integrationType) {
  ym(YM_COUNTER_ID, 'событие цели', 'act_aha_completed', {
    integration_source: integrationType // например: 'amocrm' или 'wildberries_api'
  });
}

// 3. Событие успешной оплаты тарифа с передачей дохода (order_price) для расчёта ROI в рекламном кабинете!
function onSubscriptionPaid(planName, billingMonths, amountRub) {
  ym(YM_COUNTER_ID, 'событие цели', 'pay_subscription_paid', {
    order_price: amountRub,     // Сумма оплаты в рублях (попадёт в столбец Доход в счётчике и рекламном кабинете!)
    currency: 'RUB',
    plan_name: planName,        // 'start' | 'optimal' | 'vip'
    billing_period: billingMonths // 1 | 6 | 12
  });
}

Что даёт передача order_price в событие цели? В отчётах счётчика аналитики и прямо в кабинете контекстной рекламы напротив каждой рекламной кампании и каждого ключевого слова у вас автоматически заполнятся столбцы «Доход по цели (₽)» и «Рентабельность (ROI / ДРР)»! Вы сможете включить стратегию «Максимум конверсий с ограничением ДРР» даже для SaaS-сервиса без модуля электронной коммерции (Ecommerce).


5. Кейс на цифрах: как оптимизация рекламного кабинета на событие активации снизила CAC платной подписки в 2,3 раза

Разберём реальный кейс онлайн-сервиса для автоматической генерации и проверки договоров/счетов для ИП и малого бизнеса (подписка 1 900 ₽/мес).

Что было («До»): В контекстной рекламе работали поисковые кампании и автоматические кампании с бюджетом 250 000 ₽/мес. Автостратегии были настроены на цель auth_signup_completed (Регистрация в сервисе по email).

  • рекламный кабинет приводил 500 регистраций в месяц по 500 ₽.
  • Но при анализе базы выяснилось, что 80% регистраций с рекламной сети и широких запросов — это студенты и физлица, которым нужно было скачать один бесплатный шаблон расписки. Они даже не создавали профиль организации в сервисе! В платную подписку переходило всего 15 человек (CR в оплату = 3%), а реальный CAC платящего подписчика составлял 16 667 ₽ (глубокий убыток!).

Что сделали («После»):

  1. Разметили по нашей Event-map промежуточные шаги: onb_inn_entered (ввёл ИНН своего ИП/ООО — сервис автоматически подтянул реквизиты из ЕГРЮЛ) и act_first_doc_generated (сгенерировал первый договор со своими реквизитами ИП).
  2. В отчёте «Воронки» в счётчике увидели: тот, кто ввёл реальный ИНН компании и создал 1 документ, покупает платную подписку с конверсией 32%!
  3. Переключили все автостратегии контекстной рекламы с цели «Простая регистрация» на цель act_first_doc_generated (Активация с ИНН).
счётчик воронки продуктаДо (Оптимизация рекламного кабинета на Регистрацию)После (Оптимизация рекламного кабинета на Активацию Aha)Результат
Рекламный бюджет (AC)250 000 ₽250 000 ₽Тот же бюджет
Сырые регистрации (auth_signup_completed)500 шт. (по 500 ₽)260 шт. (по 961 ₽)Пустых регистраций студентов стало в 2 раза меньше
Активированные юрлица (act_first_doc_generated)48 компаний (9,6% от рег.)115 компаний (44,2% от рег.!)Целевых активированных бизнесов стало в 2,4 раза больше!
Оплатили подписку (pay_subscription_paid)15 клиентов35 клиентовРост платных продаж в 2,33 раза
Стоимость платящего подписчика (CAC)16 667 ₽7 143 ₽Снижение CAC в 2,33 раза!

Алгоритм контекстной рекламы, получив сигнал только от тех пользователей, которые реально вводят ИНН бизнеса и создают документ, сам за 10 дней отсёк студенческий трафик и нашёл аудиторию реальных предпринимателей!


6. Готовый артефакт: шаблон ТЗ на разметку продуктовых событий (Event-map)

Скопируйте эту таблицу и отдайте вашему фронтенд/бэкенд-разработчику — внедрение всей карты событий в код занимает около 2 часов:

№Событие (На человеческом языке)Goal ID в событие целиМомент вызова в кодеПередаваемые параметры (params)
1Просмотр экрана тарифовmkt_pricing_viewedПри рендере /pricing или скролле до #tariffs{ source_page: window.location.pathname }
2Успешная регистрацияauth_signup_completedПосле 200 OK от /api/registeruserParams: { UserID, Role }
3Завершение шага 1 онбордингаonb_step1_completedПосле сохранения анкеты профиля{ segment: selectedSegment }
4Точка Активации (Aha-moment)act_aha_completedПосле получения первого результата в сервисе{ feature_used: featureName }
5Открытие окна оплаты (Paywall)pay_checkout_openedПри клике на кнопку выбора платного тарифа{ plan_name: selectedPlan }
6Успешная оплата тарифаpay_subscription_paidПри подтверждении платежа эквайрингом{ order_price: sumRub, currency: 'RUB', plan_name }

7. Частые вопросы (FAQ)

Как построить красивую пошаговую воронку по этим событиям внутри счётчика аналитики?

У вас есть два инструмента внутри счётчика:

  1. Составная цель (до 5 последовательных шагов): в разделе Настройка → Цели → Добавить цель → Составная цель укажите цепочку ваших Goal ID: Шаг 1 (auth_signup_completed) → Шаг 2 (onb_step1_completed) → Шаг 3 (act_aha_completed) → Шаг 4 (pay_subscription_paid). В отчёте «Конверсии» нажмите на значок воронки напротив этой составной цели — счётчик нарисует наглядную диаграмму с процентом отвала на каждом шаге!
  2. Отчёт «Параметры визитов»: чтобы посмотреть статистику по переданным внутри params тарифам (plan_name) или сегментам, откройте Отчёты → Содержание → Параметры визитов.

А что если оплата подписки происходит не в браузере, а списывается на сервере по вебхуку банка или через 5 дней после звонка менеджера?

Для этого в счётчике аналитики есть штатный механизм Офлайн-конверсий (через API счётчика или коннектор CRM). В момент регистрации пользователя на сайте сохраните его куку id_vizita (идентификатор визита счётчика) в базу данных вашего бэкенда рядом с user_id (код мы давали в Статье C2). Когда на сервере пройдёт оплата по вебхуку ЮKassa/Т-Банка или закрытие счёта в CRM — ваш сервер отправит идентификатор визита + Goal ID + Price напрямую в API счётчика аналитики, и конверсия идеально склеится с исходным рекламным кликом рекламного кабинета!

Хватит ли автостратегии контекстной рекламы данных для обучения, если мы переключим её с «Регистрации» на «Оплату»?

Смотрите на объём событий в неделю на одну кампанию:

  • Для стабильного обучения автостратегии нужно не менее 10–15 достижений цели в неделю.
  • Если у вас уже есть 15+ оплат в неделю на кампанию — смело ставьте целью pay_subscription_paid.
  • Если оплат пока 4–5 в неделю (не хватает для обучения), а активаций (act_aha_completed) — 20–30 в неделю, ставьте главной целью оптимизации именно Активацию (или связку Активация + Оплата с разной ценностью)!

Что читать и смотреть дальше в серии «счётчик и аналитика руками»