+42%
End-to-end атрибуція: Google Ads → CRM → Sheets
Наскрізне відстеження лідів від кліку до CRM: Contao + HubSpot + Google Sheets (Німеччина)
Цей кейс для вас, якщо...
Впізнали себе? Читайте далі — цей кейс покаже рішення.
Про проєкт
Бізнес із рекламним бюджетом у Google Ads на ринку Німеччини
Бізнес із рекламним бюджетом у Google Ads на ринку Німеччини. Сайт на Contao CMS, CRM — HubSpot. Потрібна повна прозорість: які кампанії реально приводять заявки.
Виклик
Немає зв'язку між кліком у Google Ads та заявкою в CRM. UTM-параметри губляться при переходах між сторінками. Менеджери не бачать джерело ліда в картці контакту.
Цілі
Що тут може піти не так
І чому більшість підрядників це запорюють
UTM зникають при навігації
Користувач клікає рекламу з UTM-параметрами, переходить на іншу сторінку — і параметри губляться. Форма відправляється без джерела. Менеджер не знає, звідки лід.
CRM не зберігає рекламні дані
HubSpot за замовчуванням не має полів для utm_*, gclid, gbraid. Без кастомних Contact properties атрибуція неможлива — навіть якщо дані є на сайті.
Ручний експорт = помилки і затримки
Копіювання даних з CRM у Google Sheets вручну — це затримки, пропущені ліди, помилки. Маркетолог отримує звіт із запізненням і приймає рішення на застарілих даних.
Що було зроблено
Модель даних у HubSpot
Створення Contact properties під utm_* і click IDs. Коректний мапінг полів форм. Уніфікація для кількох форм і сторінок.
Скрипт збереження параметрів (Contao)
Збір параметрів з URL, збереження у cookies/localStorage між сторінками. Підстановка в hidden-поля форми перед submit.
Автоекспорт у Google Sheets
HubSpot Workflow: trigger на form submission → створення рядка у Google Sheets. Мапінг колонок на Contact properties з контролем enrollment логіки.
Контроль якості даних
Тестові переходи з параметризованими URL, тестові сабміти. Перевірка значень у HubSpot Contact record та Google Sheets.
Що я зробила інакше
Від CRM-моделі — не від скрипта
Почала з моделі даних у HubSpot: кастомні Contact properties під кожен UTM і click ID. Тільки коли модель готова — писала скрипт для Contao. Це виключило ситуацію "дані є, але нікуди їх записати".
Збереження параметрів між сторінками
Скрипт зберігає utm_*, gclid, gbraid у cookies і localStorage при першому візиті. При submit форми — підставляє їх у hidden-поля. Працює навіть якщо користувач перейшов 5 сторінок до конверсії.
Автоматизація замість ручної роботи
HubSpot Workflow автоматично створює рядок у Google Sheets при кожному form submission. Маркетолог бачить дані в реальному часі, без затримок і ручного копіювання.
Цифри, що говорять самі за себе
До та після
Простіше кажучи: тепер менеджер одразу бачить, з якої кампанії прийшов лід — без запитань і без ручного копіювання.
Гайд: як зберегти UTM між сторінками сайту
Покроковий гайд для збереження UTM-параметрів і click IDs між сторінками. Працює з будь-якою CMS і CRM.
- PDF, 4 сторінки — готовий скрипт
- Схема інтеграції CRM + Google Sheets
- Без реєстрації, без спаму
Часті питання
Як зберегти UTM-параметри між сторінками сайту?
Потрібен скрипт, який при першому візиті зберігає utm_*, gclid, gbraid у cookies або localStorage. При submit форми — підставляє їх у hidden-поля. У цьому кейсі це вирішило проблему втрати атрибуції на сайті Contao CMS.
Як налаштувати автоматичний експорт лідів з HubSpot у Google Sheets?
Через HubSpot Workflow: trigger на form submission, action — створення рядка у Google Sheets. Потрібен коректний мапінг Contact properties на колонки таблиці та контроль enrollment логіки.
Чи працює ця схема атрибуції з іншими CMS, окрім Contao?
Так, принцип універсальний: збереження параметрів у cookies/localStorage → підстановка в hidden-поля → передача в CRM. Я використовувала цей підхід з WordPress, Contao та Shopify — логіка однакова.
Готові до зростання?
Обговоримо ваш проєкт — знайдемо рішення, що працює саме для вашого бізнесу.