Paid

Meta Ads integration for digital marketing agencies

Meta Ads is where iOS 14.5's Apple privacy changes hit hardest — pixel-only tracking lost most of its accuracy, and Conversions API (CAPI) became the only reliable conversion-feedback path. Agencies that don't track CAPI configuration explicitly per client ship campaigns optimising against degraded pixel data and quietly burn budget. Modeling Meta pixels and CAPI endpoints as typed objects is how mature agencies catch CAPI misconfigurations before they affect spend.

How Phloz models Meta Ads

What Phloz records about Meta Ads on each client's tracking map, and what it doesn't. Only GA4, Google Tag Manager and Google Ads connect to Phloz (read-only, through a connected Google account); everything else is recorded by your team. Health states are set by the person who checks, the structural audit re-runs weekly, and graph relationships show what each node connects to — so a node marked broken or overdue for verification shows up in the cross-client tracking-health view.

  • Meta pixel as a typed node with pixel ID, dataset ID, and Advanced Matching and CAPI on/off flags
  • Conversions API endpoint as a separate node, linked to the pixel — and the audit flags a pixel with no Conversions API path recorded
  • Meta ads account node (ad account ID, Business ID, currency) — the audit flags an ad account with no pixel on the map
  • Health status and last-verified date per pixel, set by your team — Phloz has no Event Match Quality or match-rate data; check those in Events Manager

Common Meta Ads configuration gotchas

The configuration mistakes agencies most often make with Meta Ads, surfaced here as a checklist agencies can run at every client onboarding. Honest, useful, not gated behind a sales pitch — these are real and you should audit for them regardless of whether you use Phloz.

  • CAPI deduplication: agencies enable CAPI without configuring the deduplication parameter (event_id), causing Meta to count the same event twice. Always set event_id when CAPI fires alongside pixel.
  • Customer Information parameters: CAPI requires hashed PII (email, phone) to match users. Agencies often send unhashed data, which Meta rejects silently. Verify the SHA-256 hash format at every CAPI rollout.
  • Checkout pages you can't paste code into: Shopify retired the Additional scripts box on the Thank you and Order status pages (August 28, 2025), so a purchase pixel still pasted there stopped counting. Checkout tracking runs through Shopify's Customer Events (Meta's app or a custom pixel) — verify with a test order after the move.

At launch (V1)

Meta ads accounts, pixels and Conversions API endpoints as typed nodes, with edges showing which platforms each pixel pushes audiences to. There is no Meta connection — Phloz reads no Meta data; your team records the setup.

Not built yet

Meta Marketing API sync: pixel events received, data quality score, CAPI match rate.

Why we built the integration this way

Most agency CRMs treat third-party tools as text fields: "GA4 Property ID" goes in a custom column on the client record. That works at one or two clients and breaks at five. With Meta Ads recorded on each client's tracking map — as its own typed node where Phloz has one, as fields and notes where it doesn't — the agency can answer "is this client's Meta Ads setup documented, and when was it last verified?" per client, and see every client ranked by tracking health.

Most of it is entered by hand at onboarding: only GA4 properties, GTM containers and Google Ads accounts can be imported from a connected Google account, and nothing syncs afterwards. The manual pass forces explicit verification at the exact moment the agency takes over the client's tracking — the cheapest moment to catch the gotchas listed above, before they become production issues.

When to use this in your client onboarding flow

The pattern we recommend: at every new client onboarding (see the client onboarding audit use case), spend 30 minutes documenting the client's Meta Ads configuration on the tracking map — IDs, tracking-code installations, conversion setup, the relationships to other systems. Verify each one fires by triggering a test event, then mark the node verified so the date is recorded. Add a recurring task (monthly, say) for the re-check, assigned to whoever owns tracking — the audit flags anything unverified for 30+ days either way.

Thirty minutes at onboarding costs far less than finding the same tracking issues during the first month of campaign optimisation — when finding them would mean a refund conversation. See the broader tracking infrastructure map use case for the agency-wide pattern.

Frequently asked questions

The three questions agencies ask most often about Phloz's Meta Ads integration. Honest answers — same data we'd give a friend evaluating the integration.

Does Phloz integrate with Meta's Aggregated Event Measurement (AEM)?
No. The Meta pixel node has no AEM fields, so if a client's event configuration needs documenting, write it in the pixel's notes. Phloz reads nothing from Meta, so AEM settings stay in Events Manager.
Can Phloz manage Business Manager accounts?
Not as their own node. The Meta ads account node records the Business (Manager) ID, so you can see which business a client's ad account sits under, and every node records whether the agency or the client owns the account. Partnership access levels (admin / advertiser / standard) stay in Meta's Business settings.
How does Phloz handle iOS 14.5 SKAdNetwork data?
It doesn't. SKAdNetwork conversion values are app-campaign settings, and the tracking map has no app or SKAdNetwork fields — note them on the Meta ads account node if a client's app campaigns need them documented.

Other paid and adjacent tools, and how Phloz handles each.

Start your free trial

14 days free for new workspaces · No credit card · Starter tier free forever