Skip to main content

Overview

Dev ↔ agency contract

┌─────────────────────────┐
│ Biosphere site │
│ (custom) │
└───────────┬─────────────┘
│ dataLayer.push

┌─────────────────────────┐ ┌──────────────────┐
│ GTM Web │ ──────► │ Meta Pixel │
│ client-side container │ │ (browser) │
└───────────┬─────────────┘ └──────────────────┘
│ HTTPS (first-party)

┌─────────────────────────────────────────────┐
│ GTM Server (Stape) │
│ analytics.biosphereskincare.com │
│ │
│ ├─► Meta CAPI (same event_id = dedup) │
│ ├─► GA4 Measurement Protocol │
│ └─► Google Ads Enhanced Conversions │
└─────────────────────────────────────────────┘

Biosphere (dev):

  • Push events to window.dataLayer for each user action.
  • Include the parameters listed in this spec (item id, price, currency, etc.).
  • For events that happen after login or form submit, include user_data (email, phone…).

Agency (Charles):

  • Configure GTM Web (dataLayer variables, custom event triggers, Meta Pixel + GA4 + Google Ads tags).
  • Configure GTM Server on Stape (CAPI tag, GA4 MP, Ads Conversion API).
  • Set up Pixel/CAPI deduplication via shared event_id.
  • Connect the Meta Catalog (product feed) to the item_id you send.
  • Define Google Ads conversion actions and custom audiences.

What to track (summary)

User actiondataLayer eventNotified platformsPhase
Product list renderedview_item_listGA4, GAds dynamic1
Click product in a listselect_itemGA41
Product detail pageview_itemGA4, Meta ViewContent, GAds1
Add to cartadd_to_cartGA4, Meta AddToCart, GAds1
Cart pageview_cartGA41
Remove from cartremove_from_cartGA41
Start checkoutbegin_checkoutGA4, Meta InitiateCheckout, GAds1
Shipping submittedadd_shipping_infoGA41
Payment submittedadd_payment_infoGA4, Meta AddPaymentInfo1
Order confirmedpurchaseGA4, Meta Purchase, GAds conv.1
Sign upsign_upGA4, Meta CompleteRegistration2
Lead form / newslettergenerate_leadGA4, Meta Lead, GAds2
On-site searchsearchGA4, Meta Search2
Refund issuedrefundGA43
Promo banner shown / clickedview_promotion / select_promotionGA43
Page view (SPA only)page_viewGA4, Meta PageView3

What you don't have to do

  • ❌ Install Meta Pixel — agency injects via GTM.
  • ❌ Install gtag.js / GA4 — same.
  • ❌ SHA-256 hash PII — GTM Server does it before sending to Meta.
  • ❌ Manage _fbp / _fbc cookies.
  • ❌ Filter events based on consent — Consent Mode v2 handles it via GTM.

What you must do

  1. Insert the GTM snippet (provided by agency) in <head> and <body>.
  2. Push dataLayer events at the right times (this spec).
  3. Add the CNAME records for the server-side subdomains.
  4. (Optional) Expose a product feed for the Meta Catalog.