Analytics

Google Analytics 4 integration for digital marketing agencies

GA4 is the analytics layer most digital marketing agency clients live on, and it's also the one most often misconfigured at handoff. A broken GA4 setup tanks attribution accuracy, breaks audience exports to ad platforms, and silently degrades campaign optimisation. Tracking GA4 properties as typed objects — not as URLs in a custom field — is the difference between catching a misconfiguration on day three and finding it after a quarter of bad spend.

How Phloz models Google Analytics 4

What Phloz records about Google Analytics 4 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.

  • GA4 property as a typed node with property ID, measurement IDs (one per web data stream), owner, linked Google products, and health status (working / broken / missing / unverified)
  • Graph edges to the GTM container that sends it events and to the ad platforms it reports conversions or pushes audiences to
  • Last-verified date and who verified it — the audit flags a property unverified for 30+ days, and a recurring task handles the re-check
  • Per-client maps, plus a cross-client tracking-health view that ranks every client by score

Common Google Analytics 4 configuration gotchas

The configuration mistakes agencies most often make with Google Analytics 4, 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.

  • Conversion events vs key events: GA4 renamed "conversions" to "key events" in 2024, but most older agency setups still use legacy conversion event names. Verify both surfaces match.
  • Cross-domain tracking: client domains + agency tracking subdomains break attribution if the GA4 property's data stream config doesn't list every host. Audit the data stream's "Configure your domains" list at every client onboarding.
  • Internal traffic exclusion: agencies forget to exclude their own IP ranges + their client's office IPs, polluting client analytics with agency review traffic. Set this once at property creation and the data stays clean.

At launch (V1)

Connect Google and import GA4 properties straight onto the tracking map with their real property and measurement IDs — or create nodes manually — then record the owner, health status, and last-verified date on each. Live Analytics Insights (sessions, conversions, channels, declining pages, 30-day deltas) pull read-only from the GA4 Data API per client.

Not built yet

Deeper sync: conversion-event and audience configuration read into the map, plus scheduled re-verification against the live property.

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 Google Analytics 4 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 Google Analytics 4 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 Google Analytics 4 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 Google Analytics 4 integration. Honest answers — same data we'd give a friend evaluating the integration.

How often should we audit a client's GA4 setup?
Quarterly at minimum, monthly during active campaign periods. Phloz records when each GA4 property node was last verified and by whom, and flags any left unverified for 30+ days; a monthly recurring task puts the re-check on whoever owns the tracking-engineering role at your agency.
Can Phloz import existing GA4 configurations?
Yes. Connect your agency's Google account in Settings → Integrations, then use "Import from Google" on any client's tracking map: Phloz lists the GA4 properties the connected account can see and imports the ones you pick as typed nodes with real property + measurement IDs (re-import is idempotent — nothing duplicates). Once a property is mapped, the client page can load live Analytics Insights from the GA4 Data API. Manual entry still works for properties outside the connected account.
How does Phloz handle BigQuery exports?
It doesn't model them. BigQuery export is a property-level configuration in GA4, and the GA4 node has no field for it — note it on the node if a client's dashboards depend on it. Phloz doesn't read the export or notice when it fails, so watch export health in Google Cloud.

Other analytics 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