Стандартные события
Какие данные Trektik собирает автоматически и что можно отправлять вручную
autocapture: true (по умолчанию) SDK автоматически собирает pageview, клики, отправки форм и глубину скролла. Никакого дополнительного кода не нужно.Автозахват (Autocapture)
Собираются автоматически при autocapture: true
$pageviewautoПросмотр страницы. Отправляется при загрузке, переходах через History API, popstate и изменении хэша. В SPA-приложениях (React, Vue) трекается каждый переход.
titlestringpage_urlstringpage_pathstringreferrerstring$clickautoКлик по любому элементу на странице. Автоматически исключает password-инпуты и элементы с атрибутом data-trektik-no-capture или классом trektik-no-capture.
tagstringtextstringclassesstringelement_idstringhrefstring$form_submitautoОтправка HTML-формы. Значения полей НЕ собираются — только метаданные формы. Это сделано для приватности пользователей.
form_idstringform_namestringform_actionstring$scroll_depthautoГлубина скролла страницы. Отправляется при достижении порогов 25%, 50%, 75% и 100%. Каждый порог отправляется только один раз за pageview.
depthnumberdata-trektik-no-capture или класс trektik-no-capture.Выручка
Специальное событие для финансовой аналитики
$revenueСобытие для трекинга платежей. Используется в Revenue Analytics для расчёта LTV, MRR, ARPU. Отправляется вручную из кода при успешной оплате.
amountnumbercurrencystringproduct_idstringrevenue_typestringtrektik.revenue({
amount: 4990,
currency: "RUB",
product_id: "pro_monthly",
revenue_type: "subscription",
});Фрустрация
Автоматическое обнаружение проблем UX
$frustrationautoТрекается автоматически при включённом модуле фрустрации. Обнаруживает четыре паттерна пользовательского раздражения.
frustration_typestringselectorstringclick_countnumberrage_click3+ кликов по одному элементу за 1 секундуdead_clickКлик, после которого DOM не изменился в течение 500 мсerror_clickКлик, за которым последовала JS-ошибка в течение 2 секундthrashed_cursorХаотичное движение курсора с резкими сменами направленияHeatmaps
Визуализация взаимодействия с интерфейсом
При включённом модуле Heatmaps SDK собирает три типа данных для построения тепловых карт. Данные отправляются батчами на отдельный эндпоинт /v1/heatmap/events.
clickКоординаты клика (x, y), CSS-селектор, размер viewportscrollГлубина скролла в процентах, размер viewportattentionВремя в миллисекундах, которое пользователь провёл на видимой области страницыtrektik.init("tk_proj_abc123", {
endpoint: "https://collect.trektik.ru",
heatmap: true, // включить сбор данных для тепловых карт
});Session Replay
Запись и воспроизведение пользовательских сессий
Session Replay записывает DOM-мутации через библиотеку rrweb и отправляет их на сервер в виде сжатых чанков. Это не видео — это воспроизведение реальных действий пользователя.
maskTextInputМаскировать содержимое текстовых полей (по умолчанию: true)maskAllTextМаскировать весь текст на страницеblockSelectorCSS-селектор элементов, которые нужно полностью скрыть из записиtrektik.init("tk_proj_abc123", {
endpoint: "https://collect.trektik.ru",
replay: {
enabled: true,
sampleRate: 0.5, // записывать 50% сессий
maskTextInput: true, // маскировать инпуты
blockSelector: ".private-data", // скрыть элементы
},
});In-App Surveys
Опросы пользователей внутри продукта
SDK автоматически показывает опросы, настроенные в дашборде Trektik, и отправляет ответы на сервер. Поддерживаемые форматы:
NPSОценка от 0 до 10 — насколько вероятно, что пользователь порекомендует продукт
CSATОценка удовлетворённости по шкале (звёзды, смайлы)
Open-endedСвободный текстовый ответ на открытый вопрос
Multiple choiceВыбор одного или нескольких вариантов из списка
Product Guides
Онбординг-туры, тултипы и баннеры
SDK периодически запрашивает у сервера активные гайды для текущего пользователя и показывает их. Для каждого гайда автоматически трекаются события:
guide_viewedГайд показан пользователюguide_clickedПользователь нажал на CTA в гайдеguide_dismissedПользователь закрыл гайдПоддерживаемые форматы: tooltip, banner, modal, slideout. Настраиваются в разделе Guides дашборда.
Общие поля каждого события
Автоматически добавляются SDK ко всем событиям
Независимо от типа события, SDK автоматически добавляет следующие поля. Их не нужно передавать вручную.
user_idID пользователя (после identify)device_idУникальный UUID устройства (генерируется автоматически)session_idID текущей сессииgroup_idID группы/компании (если задан)page_urlПолный URLpage_pathПуть без доменаreferrerПредыдущая страницаutm_sourceИсточник трафикаutm_mediumКаналutm_campaignКампанияosОперационная системаbrowserБраузер и версияdevice_typedesktop, mobile или tabletscreen_width / screen_heightРазрешение экранаcountry_codeКод страны (определяется по IP на сервере)cityГородtimestampВремя события (ISO 8601)insert_idУникальный ID для дедупликацииsdk_versionВерсия SDKplatformweb, node, mobile и т.д.Кастомные события
Отправляйте любые события из кода
Помимо стандартных событий, вы можете отправлять любые свои события с произвольными свойствами. Используйте метод trektik.track().
// Покупка
trektik.track("purchase_completed", {
plan: "pro",
amount: 4990,
payment_method: "card",
});
// Действие в приложении
trektik.track("report_exported", {
format: "csv",
rows: 15000,
date_range: "30d",
});
// Онбординг
trektik.track("onboarding_step", {
step: 3,
step_name: "connect_sdk",
completed: true,
});trektik.identify().