Аналитика воронки
без трекеров
Как считать конверсию по шагам на своём backend — без Google Analytics и сторонних скриптов слежки.
Как считать конверсию по шагам на своём backend — без Google Analytics и сторонних скриптов слежки.
Не трафик важен, а то, что происходит с ним дальше
Воронка — это путь пользователя от первого визита до целевого действия: заявки, покупки, регистрации. На каждом шаге часть людей уходит — и без цифр непонятно, где именно теряется больше всего.
Обычные счётчики вроде Yandex Metrika показывают общий трафик, но детальная воронка по конкретным шагам вашего сайта — не всегда то, что удобно вытащить из готового сервиса. Своя событийная аналитика решает именно эту задачу.
Проще, чем кажется — один эндпоинт и одна таблица
На фронтенде на каждом значимом действии (просмотр товара, клик по «Купить», отправка формы) отправляется небольшой POST-запрос на свой backend с названием события и анонимным ID сессии из cookie.
| Поле | Что хранит |
|---|---|
| event | Название события: page_view, add_to_cart, checkout_started |
| session_id | Случайная строка в cookie — не привязана к личности |
| timestamp | Время события — для расчёта времени между шагами |
| meta | Опционально: страница, товар, сумма — контекст события |
Четыре события — и видна вся картина
Дальше — простой SQL-запрос: сколько уникальных session_id дошло до каждого события. Если из 1000 просмотров форму открыли 200, а отправили только 40 — понятно, что проблема не в трафике, а в самой форме.
Меньше данных — меньше рисков и меньше бюрократии
Если не хранить IP, email или имя в привязке к событиям, а только анонимный ID сессии — это принципиально другой уровень ответственности, чем сбор полного профиля пользователя. Такую аналитику проще обосновать перед пользователями и проще администрировать.
Совет: обновляйте session_id раз в сутки или после закрытия вкладки — так вы не сможете случайно построить долгосрочный профиль конкретного человека, даже если очень захотите.
Короткие ответы на главное
Проще, но своя событийная аналитика даёт полный контроль над данными и не зависит от блокировщиков рекламы, которые часто режут сторонние трекеры.
Да, события нужно куда-то складывать — подойдёт любая простая таблица в PostgreSQL с полями: событие, время, анонимный идентификатор сессии.
Если не хранить email, имя или IP в привязке к событиям — это существенно снижает регуляторную нагрузку по сравнению со сбором полного профиля пользователя.
Настроим событийную аналитику и расчёт конверсии на вашем backend.