Проект кастомного трекінгу для інтерактивних DV360-банерів Флувір. Архітектура: HTML-банер → sendBeacon → Cloud Function → BigQuery → Looker Studio.
GCP Project: banner-analytics-fluvir
Region: europe-central2 (Warsaw)
BigQuery:
banner_analyticseventsevent_dateCloud Function:
trackhttps://track-<hash>-lm.a.run.app (перевір актуальний: gcloud functions describe track --region=europe-central2 --project=banner-analytics-fluvir)banner-tracker-sa@banner-analytics-fluvir.iam.gserviceaccount.comПодії в таблиці (ALLOWED_EVENTS):
impression — банер ініціалізувавсяview_start — ≥50% у viewportgame_start — почав груgame_finish — дограв до кінцяcta_click — клік на CTAexit — пішов до game_finish/cta_clickКорисні поля в events:
session_id, event_name, event_date, event_tsproduct (зараз: fluvir), size (300x250, 300x600), ver, devicecid (campaign_id), crid (creative_id), sitepayload (JSON, додаткові дані)Приклад SQL для аналізу:
SELECT
event_name,
COUNT(*) AS total,
COUNT(DISTINCT session_id) AS unique_sessions
FROM `banner-analytics-fluvir.banner_analytics.events`
WHERE event_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
GROUP BY event_name
ORDER BY total DESC
Вирва (funnel) по product='fluvir':
SELECT
event_name,
COUNT(DISTINCT session_id) AS users
FROM `banner-analytics-fluvir.banner_analytics.events`
WHERE product = 'fluvir'
GROUP BY event_name
Код проекту на Desktop: D:\Claude Code\banners\Інтерактивні банери\tracking\
[PASSEPARTOUT: google/banner-analytics-fluvir-reader.md]
Щоб VPS Claude міг читати BQ у цьому проекті — найпростіше:
додай ad-pipeline-worker@ad-analytics-hub.iam.gserviceaccount.com
як BigQuery Data Viewer у проект banner-analytics-fluvir:
gcloud projects add-iam-policy-binding banner-analytics-fluvir
--member="serviceAccount:ad-pipeline-worker@ad-analytics-hub.iam.gserviceaccount.com"
--role="roles/bigquery.dataViewer"
Після цього VPS може читати через вже існуючий /srv/passepartout/google/ad-pipeline-worker-sa.json [/PASSEPARTOUT]