Meta (Pixel and CAPI)
For anyone running Meta ads into a Zellify funnel. You'll have Pixel events in the browser and Conversions API events on the server, deduplicated and visible in Events Manager. You need a Meta Pixel ID, a CAPI access token, and a Zellify campaign.
What this integration does#
On a campaign with Meta as the source, Zellify fires Pixel events from the browser and the matching CAPI event from the server. Both carry the same event id, so Meta deduplicates them.
Connect Meta#
- Open Dashboard → Campaigns → <campaign> → Settings.
- Pick Meta as the source.
- Paste the Pixel ID, CAPI access token, and optionally a Test Event Code.
- Save.
Where to find your credentials#
-
Pixel ID: Meta Events Manager → Data Sources → <your pixel>.
-
CAPI access token: same pixel → Settings → Conversions API → Generate access token.
-
Test Event Code: Events Manager → Test events → Test event code.
Events sent to Meta#
| Funnel event | Meta event name | Type | Value? | Trigger |
|---|---|---|---|---|
| Page view | PageView | Standard | — | Every funnel page visit |
| Lead | Lead | Standard | — | User engagement beyond first page |
| Page completed | PageCompleted | Custom | — | User completes a funnel step |
| Email captured | CompleteRegistration | Standard | — | User submits email |
| Checkout presented | InitiateCheckout | Standard | Yes | Payment form loads |
| Payment method added | AddPaymentInfo | Standard | Yes | User enters payment details |
| Payment succeeded | Purchase | Standard | Yes | Payment completes successfully |
| Trial started | StartTrial | Standard | No (value: 0) | Free trial begins |
| Subscription started | Subscribe | Standard | No (value: 0) | Paid subscription begins |
PageCompleted is a custom Meta event. To analyse it in Events Manager, register it in Custom Conversions (or as a custom event) before going live.
See Event reference for the canonical taxonomy.
Purchase event payload#
When Purchase fires, the event carries:
value— charged amount (decimal)currency— ISO 4217 currency codecontent_ids— array containing the Zellify product idcontents— array with item detailsnum_items— item countcontent_type—"product"event_id— used for deduplication
User data forwarded#
Pixel (browser): email, session id, country, city.
Conversions API (server): email, session id, fbp (Facebook browser cookie), fbc (Facebook click id), country, city, client IP, user agent.
fbp and fbc are collected automatically from the browser to lift match rate on traffic from Meta ads. Email is hashed before it leaves Zellify's server — raw values are never sent.
Event deduplication#
The Pixel and CAPI events share the same event_id. Meta counts them as one — no extra configuration required. If you see double-counts, confirm the event id is consistent (it should be, out of the box).
Test and verify#
- Open Events Manager → Test Events → enter your Test Event Code.
- Walk through a test funnel to the paywall.
- Confirm
PageView,Lead,CompleteRegistration,Purchaseappear within 60 seconds.
:::tip Use the Test Event Code before going live. It filters test traffic from real data. :::
Going live#
Remove the Test Event Code to stop routing to Test Events. Confirm events land in the main Events Manager view.
Troubleshooting#
| Symptom | Likely cause | Fix |
|---|---|---|
| Events missing in Events Manager | Wrong Pixel ID for this campaign | Confirm Pixel ID in Dashboard → Campaigns → <campaign> → Settings matches Events Manager |
| Double-counted Purchase | Pixel + CAPI firing with different event ids | Report to support; Zellify should be unifying these out of the box |
| Low match quality | Missing email capture step before paywall | Add a Registration step with email before the paywall |