Відновлення purchase-конверсій у Google Ads через BigQuery
Коли GA4 фіксує покупки, але Ads перестає їх бачити
Результат: повернула в Ads ~90 purchase-конверсій за історичний період і відновила навчання Smart Bidding. Кампанії стабілізувались за 3–4 дні.
Що це дало бізнесу: Ads знову оптимізується по реальних продажах, без перезапуску з нуля і без зливу бюджету на “сліпе навчання”.
Проблема
У проєкті працювала стандартна схема GA4 → Google Ads (import purchase).
В один момент:
- покупки є в GA4
- але в Google Ads purchase перестали передаватись
- Smart Bidding втратив головний сигнал і почав приймати рішення майже “в темряві”.
Чому це критично:
коли Ads не бачить purchase, він оптимізується по сурогатам або випадкових сигналах. Це зазвичай = просідання ROAS, хаотичні CPA, нестабільна видача.
Типові причини (і чому “само не відлипне”): consent mode, зміни атрибуції, проблеми з gclid/wbraid/gbraid, збої зв’язки GA4 ↔ Ads.
Рішення
Я не робила ставку на очікування, що стандартний імпорт оживе.
Ціль була одна: Google Ads має знову бачити реальні покупки.
Оскільки GA4 був підключений до BigQuery і purchase-події коректно зберігалися в raw даних, я реалізувала імпорт purchase-конверсій напряму з BigQuery в Google Ads (offline conversion import).
Чим це краще за стандартний GA-імпорт:
це контрольована схема, де логіка даних — у ваших руках, а не в “чорній скриньці” інтеграції.
Як я це зробила
- Отримала доступ до GA4 raw events у BigQuery
- Побудувала SQL-логіку, яка дістає purchase і підтягує click identifiers (gclid / wbraid / gbraid), а також value, currency, transaction_id
- Створила в Google Ads нову conversion action типу offline purchase
- Завантажила історичні конверсії за потрібний період
- Перевірила дедуплікацію і відповідність подій, щоб не задвоїти покупки і не зламати оптимізацію
Важливо: це не “костиль”, а production-підхід, який застосовують, коли потрібна стабільність і контроль передачі даних у Ads.
Результат
- У Google Ads підтягнулося ~90 purchase-конверсій за історичний період
- Smart Bidding отримав назад “очі” і почав навчатися на реальних продажах
- Кампанії вийшли зі стану некоректного навчання
- Перші позитивні зрушення зʼявилися через 3–4 дні
Економіка рішення: алгоритм не стартував з нуля, а отримав втрачену історію. Це зменшило витрати на повторне навчання і знизило ризик зливу бюджету.
Чому цей кейс важливий для e-commerce
- Втрата purchase-конверсій = Ads починає оптимізуватися “не туди”
- GA4 не завжди є надійним джерелом для Ads у складних умовах трекінгу
- BigQuery дає:
- контроль логіки даних
- можливість відновити історію
- базу для масштабування трекінгу і аналітики
Що цей кейс говорить про мене як про спеціаліста
Я закриваю не тільки “рекламу”, а систему, яка цю рекламу годує даними.
У таких задачах виграє не той, хто “налаштує кампанію”, а той, хто поверне Ads правильний сигнал.
Моя роль тут:
- performance-маркетинг (розуміння Smart Bidding і сигналів оптимізації)
- data-логіка (події, ідентифікатори кліку, дедуплікація, історичні імпорти)
- системний підхід (швидко відновити керованість, а не гратись у нескінченний дебаг)
Коли це рішення доречне
- purchase є в GA4, але не доходить в Google Ads
- кампанії стали нестабільні, ROAS/CPA “пливе”
- потрібне відновлення історичних конверсій
- стандартний GA-імпорт працює нестабільно або непередбачувано
“Таке взагалі можливо?”
Коротко: так, можливо, і це нормальна практика
Google Ads вміє приймати конверсії як offline import — головне, щоб у події був коректний ідентифікатор кліку і витримана логіка дедуплікації.
Тобто: якщо бізнес має покупки, а Ads їх “не бачить” — проблему можна вирішити через дані, не зносячи рекламу і не перезапускаючи навчання.