Skip to guide

Hey Sage · Guide 03 · Measurement

The Paid Media Measurement Stack

A step-by-step measurement system for knowing whether Meta, Google, GA4, your store and your CRM are recording the right actions—and what to do when they disagree.

35–50 min read Step-by-step 5 working files Updated July 2026
On this page
  1. 01 · What good measurement gives you
  2. 02 · Start with the decision, not the tag
  3. 03 · Design one event and data plan across the customer journey
  4. 04 · Secure access, ownership and a safe change process
  5. 05 · Configure GA4 and Google Tag Manager as a controlled layer
  6. 06 · Configure Meta Pixel, Conversions API and Google Ads deliberately
  7. 07 · Find duplicates, missing conversions and broken context
  8. 08 · Standardise UTMs and campaign naming
  9. 09 · Separate new from existing customers, and brand from non-brand demand
  10. 10 · Return lead quality, closed sales and revenue to the stack
  11. 11 · Run a test transaction and reconcile every layer
  12. 12 · Build a dashboard for decisions, not decoration
  13. 13 · Monitor the stack and triage incidents calmly
  14. 14 · Three worked measurement maps
  15. 15 · Frequently asked questions

What good measurement gives you

We connect business economics, customer events, analytics, advertising platforms and real revenue so you can decide what to scale, fix or stop. This guide applies to ecommerce, subscriptions and lead generation; allow roughly one to four weeks for an initial audit and repair.

The outcome

You should be able to follow a campaign from spend to a real business outcome, explain why numbers differ between systems, find a broken event quickly and make a budget decision without treating any platform’s dashboard as unquestionable truth. This guide gives you the operating system for doing that.

Step 1

Start with the decision, not the tag

Tracking is only useful when it changes a decision. Before opening GA4, write down what you need to decide weekly: whether to scale a campaign, change the offer, improve the page, qualify leads more tightly or protect margin. Then choose the business outcome and cost limit that support that decision.

We recommend a three-level KPI map. Business outcomes are revenue, contribution, new customers, retained subscribers or won opportunities. Decision KPIs include customer acquisition cost, contribution return, qualified CPA and payback period. Diagnostic metrics include CPM, click-through rate, cost per click, landing-page conversion, form completion and checkout rate. Diagnostic metrics explain the journey; they should not become the goal by accident.

Map your unit economics

MeasurePlain-language calculationUse it forImportant limit
CACAcquisition spend ÷ new customersFirst-customer efficiencyRequires a reliable new-customer flag and agreed spend scope.
CPASpend ÷ defined actionsPurchases, qualified leads, bookings or other conversionsThe action must be explicit; “lead” and “qualified lead” are not interchangeable.
ROASAttributed revenue ÷ ad spendDirectional platform/campaign efficiencyRevenue ignores product margin, returns and attribution overlap.
MERTotal net revenue ÷ total marketing spendBlended business-level trendInfluenced by seasonality, retail, repeat demand and non-paid activity.
Contribution after adsNet sales − product cost − variable costs − ad spendWhether growth creates cash contributionNeeds accurate refunds, discounts, fulfilment and payment fees.
Payback periodTime until cumulative contribution repays acquisition costSubscription and repeat-purchase cash planningDo not assume future retention that has not been observed.
Qualified opportunity CPASpend ÷ sales-accepted opportunitiesLead-generation acquisition qualityDepends on consistent CRM stages and prompt qualification.
Revenue per leadWon revenue ÷ valid leadsExpected lead value and bidding inputsUse an appropriate lookback and avoid letting one large deal distort short periods.

For ecommerce, calculate allowable first-order CAC using contribution before advertising, not gross selling price. For subscriptions, record first-payment contribution, expected payback window, second-payment retention and longer-term retention separately. For lead generation, model the funnel from raw lead to valid lead, booked call, attended call, qualified opportunity and won revenue. Choose the deepest stage available quickly enough to guide media, then return later-stage outcomes when they mature.

KPI decision statement

“We will scale when [primary outcome] is at or below/above [target], provided [quality or margin guardrail] remains within [range]. We will use [diagnostic metrics] to locate friction, not as substitutes for the outcome.”

Step 2

Design one event and data plan across the customer journey

An event plan defines what happened, when it becomes true, which identifiers and values accompany it, where it is sent and who owns it. Create this before adding tags. Keep event names stable and use parameters to describe the event; avoid making a new event name for every page or campaign.

Business modelCore eventsRequired dataCommercial outcome
Ecommerceview_item, add_to_cart, begin_checkout, purchase, refundItem ID, item name, quantity, transaction ID, net/gross value definition, discount, currency, customer statusNew-customer purchase and contribution after ads
Subscriptionplan_view, begin_checkout, subscription_start, renewal, pause, cancel, refundSubscription/customer ID, plan, billing frequency, first value, renewal value, currency, acquisition sourceAcquired subscriber, payback and retained contribution
Lead generationform_start (optional), generate_lead, booking_complete, lead_valid, opportunity_qualified, sale_wonLead ID, click IDs, campaign fields, service/region, qualification stage, expected/actual revenue, currency, timestampsQualified opportunity or won revenue

Define the firing condition

“Purchase” should fire after a confirmed transaction with a unique transaction ID, not when someone clicks “Pay”. “Generate lead” should fire after the system accepts a valid submission, not on a submit-button click that can fail validation. “Booking complete” should represent an actual booking, not a calendar view. The definition belongs in the event plan so developers, analysts and platform specialists do not interpret it differently.

Attach stable identifiers. Transaction IDs allow deduplication and reconciliation. Lead IDs connect advertising, analytics and CRM records without placing personal details in the browser data layer. Use a documented customer-status field to distinguish new from existing customers. Avoid transmitting email addresses, names, phone numbers, health details or other personal information to analytics unless a platform integration explicitly requires approved, appropriately protected customer data.

Choose value and currency rules

Decide whether purchase value means gross revenue, revenue after discounts, net of tax or another definition. Platforms and finance reports may use different conventions; that is acceptable only when documented. Always send a valid three-letter currency code with monetary events. Multi-currency stores should send the transaction currency and retain a reporting conversion method for the dashboard. Never mix AUD and USD values in one total without conversion.

  • Every event has one business definition and one technical firing condition.
  • Commercial events include stable transaction, subscription or lead IDs.
  • Value and currency are sourced from the backend confirmation, not scraped from formatted page text.
  • Customer and lead stages use controlled values, not free-text variations.
  • Each destination—GA4, Meta, Google Ads, CRM, warehouse—has an explicit reason to receive the event.

Step 3

Secure access, ownership and a safe change process

Many measurement failures are governance failures: nobody owns the property, an agency controls the only admin login, a developer publishes without review or an expired card stops a connector. Build an access register before auditing tags.

Minimum access checklist

  • Website CMS/store and a safe staging or preview method.
  • Domain, DNS and hosting access for approved cross-domain or verification work.
  • Google Tag Manager container with publish history.
  • GA4 property, data stream, key events and linked products.
  • Google Ads account, conversion actions, enhanced conversions and linked GA4/merchant accounts.
  • Meta Business Portfolio, ad account, dataset/pixel, Conversions API integration and domain settings.
  • Consent-management platform and documented regional behaviour.
  • Shopify/backend, payment, subscription, booking or form systems.
  • CRM with field, stage, integration and export/import permissions.
  • Reporting warehouse, spreadsheet or dashboard plus finance/store reports used for reconciliation.

Use named user access, multi-factor authentication and least privilege. The business should retain owner-level control of core assets. Avoid shared passwords and personal accounts that disappear when a staff member leaves. Keep emergency access secure and document how to revoke former users.

Before changing anything, export or screenshot the current setup: container version, GA4 stream settings, conversion actions, pixel IDs, event names, integrations, referral rules and recent conversion totals. Create a change ticket with owner, reason, expected effect, affected properties, test plan and rollback. Publish one coherent measurement change at a time where possible.

Step 4

Configure GA4 and Google Tag Manager as a controlled layer

Use the website or application data layer as the source of truth for browser-side events. The application should push a structured event when the relevant state becomes true. Tag Manager listens and sends approved fields to destinations. This is more resilient than tags scraping button text, CSS classes or thank-you page headings that designers can change.

Google Tag Manager build principles

Create clear naming conventions for tags, triggers and variables, such as GA4 – Event – purchase and DLV – ecommerce.transaction_id. Separate production and test workspaces. Use preview mode, record versions and write a short publish note. Prevent duplicate base tags from the theme, app, plugin and container. If a platform integration already owns an event, document whether GTM should supplement it or stay out of the path.

Configure consent so tags receive and respect the approved state. Test fresh arrival, acceptance, rejection and later preference changes. Do not assume a banner’s appearance proves tags were blocked or adjusted correctly.

GA4 configuration

  • Confirm the correct account, property, time zone, reporting currency and web stream.
  • Review enhanced measurement so automatic events do not duplicate custom ones.
  • Use recommended ecommerce event names and parameters where they fit.
  • Mark only genuine decision events as key events; do not turn every engagement into a conversion.
  • Configure internal/developer traffic handling without accidentally filtering customers.
  • Set unwanted referrals and cross-domain measurement for approved domains.
  • Review data retention, Google Signals/ads personalisation and product links according to consent and policy.
  • Register custom dimensions only for fields you will actually report on.

Remember that GA4 is an event-based analytics system, not an accounting ledger. Reporting identity, modelling, consent, attribution and processing can all affect totals. Use it to understand journeys and trends, then reconcile commercial events to backend records.

Step 5

Configure Meta Pixel, Conversions API and Google Ads deliberately

Meta browser and server events

The Meta Pixel sends browser events; Conversions API sends server events. Using both can improve resilience and match quality, but it can also double-count if the same outcome arrives as two unrelated events. For a shared purchase or lead, send the same standard event name and the same event_id through browser and server paths so Meta can deduplicate. Keep event time, value, currency and source URL consistent.

Use Meta’s test-event and diagnostics tools, then inspect live event counts after launch. Confirm the event is associated with the intended dataset and ad account. Send customer information only through an approved integration and according to consent. Event Match Quality is a diagnostic indicator, not permission to collect more data than needed.

Google Ads conversions

Decide which conversion actions are primary and included in campaign goals. A campaign optimising simultaneously to purchases, page views and low-quality forms may learn the easiest action rather than the valuable one. Use secondary actions for observation and diagnostics. Configure value, count setting, conversion window and attribution model according to the outcome: ecommerce purchases usually count every transaction; many lead actions should count one per ad interaction, while later imported sales can have their own value.

You can use a native Google Ads tag, import selected GA4 key events, or combine carefully chosen sources. Do not create several primary versions of the same purchase without a plan. Where appropriate and authorised, enhanced conversions can improve matching using protected first-party customer data. Validate the implementation and status rather than assuming it works because the setting is enabled.

QuestionRequired answer
What does the platform optimise to?A named primary action tied to real value.
How is a duplicate prevented?Transaction/lead identifier and documented platform-specific deduplication.
Where do value and currency come from?Confirmed backend order, subscription or CRM outcome.
What customer data is shared?Only approved fields through a documented, consent-aware integration.
Who owns break/fix?A named owner with access, alert and rollback steps.

Step 6

Find duplicates, missing conversions and broken context

Most tracking defects fall into four groups: the event never fires, it fires when it should not, it fires more than once, or it fires with the wrong data. Debug the journey in that order. Use a unique test transaction or lead so you can follow one record across systems.

Common duplicate causes

  • The ecommerce platform, an app and GTM all send the same purchase.
  • A thank-you event fires on every page refresh or history change.
  • Browser and server versions lack a shared event ID.
  • A GA4 conversion is imported into Google Ads while a separate Ads tag records the same action as another primary conversion.
  • A form success listener and confirmation-page view both generate a lead.
  • A customer retries payment and the system reuses or mishandles transaction state.

Fix the source, not the dashboard. Select one owner for each event path, add stable identifiers and make success handlers idempotent—repeating the same confirmation should not create another conversion.

Currency and value defects

Check whether 99.00 is sent as 99 or 9900, whether tax and shipping are included, whether a comma-formatted string is parsed incorrectly, and whether the currency belongs to the order or a default site setting. In multi-region reporting, store original value/currency and a separate converted value with the exchange-rate source and date. Never “fix” a currency mismatch by changing the symbol in the dashboard.

Cross-domain and self-referral defects

A journey across landing page, store, payment provider, booking tool or application can start a new session and replace campaign attribution with a referral. Confirm the domains you control, configure cross-domain linking only across that allowlist, and add legitimate payment/booking referrals to the appropriate unwanted-referral settings. Then test the actual journey. The expected result is not always “one session at any cost”; it is a documented, privacy-compliant session and source treatment.

Step 7

Standardise UTMs and campaign naming

UTMs make traffic readable outside the ad platform and help preserve campaign context through downstream systems. Create a controlled taxonomy before campaigns launch. Use lowercase, no personal information, one separator style and values your team can interpret months later.

ParameterWhat it answersExample
utm_sourceWhich platform or partner sent the visit?meta, google, klaviyo, partner_name
utm_mediumWhat marketing channel/mechanism was it?paid_social, cpc, email, affiliate
utm_campaignWhich durable initiative or promotion?au_prospecting_winter_2026
utm_contentWhich creative, ad or link?video_problem_hook_creator01_v2
utm_termWhich keyword, audience or other useful targeting detail?nonbrand_running_shoes

Decide whether dynamic platform tokens or fixed names will populate each field, then test the rendered URL from a published ad. Keep a human-readable mapping when IDs are used. Do not rename live campaigns merely to tidy historical reporting without understanding platform learning and connector consequences; establish the standard for new work and map legacy names separately.

Use campaign names to express stable reporting dimensions, not every implementation detail. A practical pattern might include market, funnel stage, objective, product/theme and period. Ad-set or asset naming can contain audience, placement and creative concept. Maintain a data dictionary so “prospecting”, “cold” and “acquisition” do not become three values for the same dimension.

Example naming contract

Campaign: [market]_[stage]_[objective]_[product-or-theme]_[period]
Ad group/set: [audience]_[geo]_[placement]_[optimisation]
Creative/content: [format]_[angle]_[hook]_[asset-id]_[version]

Step 8

Separate new from existing customers, and brand from non-brand demand

A platform can report a profitable purchase that came from a loyal customer searching your name. That purchase has value, but it answers a different question from “Did this campaign acquire a new customer?” Build reporting dimensions that separate demand capture from demand creation.

New versus existing customers

Define “new” once. For ecommerce, the most useful source is usually the backend customer/order record: no prior completed order before this transaction, with rules for guest checkout, email changes, cancellations and merged records. For subscription, decide whether a returning cancelled subscriber is new, reactivated or existing. For lead generation, deduplicate against your CRM using an approved identifier and lookback period.

Send or join the status downstream using a non-personal flag such as customer_type=new. Report new-customer revenue, new-customer CAC, first-order contribution and repeat revenue separately. Do not rely only on platform “new customer” features unless their definition matches yours.

Brand versus non-brand demand

Split paid search campaigns and query reporting into brand, non-brand category/problem, competitor (where appropriate) and shopping/performance activity. Brand campaigns protect and capture existing intent; non-brand campaigns more directly test acquisition. Performance-style campaigns can serve across brand and non-brand inventory, so use search-term insights, new-customer data, experiments and blended trends rather than assuming every attributed sale is incremental.

For paid social, separate prospecting and existing-customer/retention audiences as far as platform controls allow, while recognising identity limitations. Track reach, overlap and new-customer outcomes. At the business level, compare spend changes with new customers, direct/organic demand and total contribution. Platform attribution is one lens; incrementality tests such as geo holdouts, conversion-lift studies or controlled spend changes can provide stronger causal evidence when scale permits.

Step 9

Return lead quality, closed sales and revenue to the stack

Optimising lead campaigns to form submissions teaches platforms to find people who complete forms. If valid leads, attended appointments and won sales matter, send those outcomes back after your team assesses them.

Build a reliable CRM bridge

  1. Generate a stable lead ID when the form or booking succeeds.
  2. Capture approved campaign fields and click IDs such as GCLID, GBRAID/WBRAID or the relevant platform identifier.
  3. Store original values in dedicated CRM fields; do not overwrite first touch with each interaction.
  4. Use controlled lifecycle stages with entry rules and timestamps: new, valid, contacted, booked, attended, qualified opportunity, won/lost.
  5. Require a reason for invalid or lost leads using a short controlled list.
  6. Attach expected value at a meaningful stage and actual revenue/currency when won.
  7. Upload or integrate eligible conversions within platform timing and privacy requirements.
  8. Monitor match/upload success and reconcile uploaded IDs to CRM records.

Choose conversion actions carefully. A valid lead may arrive quickly enough for bidding, while sale won may take months and be too sparse. You can use the earlier qualified stage as a primary optimisation signal and keep won revenue as a reporting or value signal until volume supports it. Never assign an invented high value merely to make a stage look important; base expected values on historical stage-to-sale rates and realised revenue.

For phone calls, bookings and offline consultations, connect the call/booking ID to the original lead and click where authorised. Train sales teams on stage hygiene. The best technical integration cannot compensate for every lead remaining “open” forever.

Step 10

Run a test transaction and reconcile every layer

Never launch or sign off from a tag-manager preview alone. Complete the exact journey a customer takes using a unique test URL, order or lead. Capture the same identifier at every layer.

  1. Prepare: create a timestamped test case, realistic UTMs and, where possible, a safe test product/payment or clearly labelled lead.
  2. Browser: inspect the data layer, tag-manager preview and network requests. Confirm consent state, event order and fields.
  3. Analytics: inspect GA4 DebugView/realtime, then confirm processed reporting after the normal delay.
  4. Ad platforms: inspect Meta test events/diagnostics and Google Ads tag/conversion status. Check deduplication and enhanced/server integrations.
  5. Backend: find the order, subscription, booking or lead. Confirm value, currency, products/service, customer type, campaign fields and click IDs.
  6. CRM/operations: verify assignment, notification, follow-up and stage movement.
  7. Warehouse/dashboard: confirm the record arrives once and joins to spend using the intended dimensions.
  8. Clean up: cancel/refund the test safely, label it for exclusion and retain the IDs/screenshots as evidence.

Create a daily reconciliation

Compare backend completed transactions or accepted leads with GA4 and platform conversions by day, market and currency. Use backend totals as the commercial reference, then calculate each system’s capture ratio. Define a tolerance range based on consent, platform windows, refunds, processing delays and known scope differences. A stable 85% analytics capture rate may be more trustworthy than totals that swing between 50% and 140%.

Reconcile spend too. Compare dashboard spend with platform billing for the same time zone, currency, account and tax treatment. If invoices matter for finance, keep invoice amount and media spend distinct. Document late conversion adjustments and refund timing.

LayerQuestionIf it fails
BackendDid the real outcome exist once?Fix commerce, booking or CRM process before attribution.
Data layer/serverWas the correct event and ID created?Fix application logic or integration source.
Tag deliveryWas it sent under the expected consent state?Fix trigger, variable, consent or network issue.
DestinationDid the platform accept and deduplicate it?Fix schema, identifier, permissions or destination settings.
DashboardWas it transformed and joined correctly?Fix connector, time zone, currency, mapping or calculated field.

Step 11

Build a dashboard for decisions, not decoration

Begin with an executive scorecard that answers: how much did we spend, what did the business receive, what portion was new, did we stay within economics, and where is intervention needed? Then add diagnostic pages for channel, campaign, creative, landing page and funnel. Every metric should show source, definition, date/time zone, currency and refresh time.

Recommended dashboard layers

  1. Business overview: net revenue or pipeline, contribution, spend, new customers/qualified opportunities, blended CAC or CPA, MER and target comparison.
  2. Acquisition view: channel/campaign spend, new-customer or qualified outcome, CAC/CPA, attributed revenue, contribution guardrail and budget status.
  3. Demand view: brand versus non-brand, new versus existing, prospecting versus retention and market/region.
  4. Funnel diagnostics: impression, click, landing session, product/form step, checkout/booking, conversion and quality/retention rates.
  5. Creative/page diagnostics: spend, hook/format/angle, click rate, post-click conversion and commercial outcome at a sample threshold.
  6. Data health: backend outcomes, analytics capture ratio, duplicate rate, missing IDs, currency exceptions, connector freshness and upload success.

Show targets and variance, not just totals. Use enough history to see weekday and seasonal patterns. Let users filter market and currency without silently adding incompatible values. Record definition changes so a sudden “improvement” is not simply a revised formula.

Agree a weekly decision ritual. First review data health. Then review business outcome and capacity. Next identify where results differ from target. Only then use funnel diagnostics to decide whether the next action belongs in media, creative, offer, page, sales follow-up or operations. Assign each action, deadline and expected effect.

Weekly decision note

Signal: [metric moved from/to, over what period]. Validity: [data health and material context]. Diagnosis: [most likely driver and evidence]. Decision: scale / hold / investigate / pause. Action: [owner, deadline, expected effect]. Review: [date and success threshold].

Step 12

Monitor the stack and triage incidents calmly

Tracking is production infrastructure. Monitor it. At minimum, alert on zero conversions during an active period, sharp capture-ratio changes, duplicate transaction IDs, missing currency/value, sudden direct/referral growth, connector staleness, rejected offline uploads and spend without downstream activity.

Incident triage sequence

  1. Confirm business reality: are orders or leads still arriving in the backend? Check outages, stock, forms, payments and call handling.
  2. Define scope: start time, domains, devices, markets, browsers, events and destinations affected.
  3. Check recent changes: site release, theme/app update, GTM publish, consent update, domain migration, CRM field change or platform integration.
  4. Reproduce: run one labelled test journey and follow its ID layer by layer.
  5. Contain: roll back the smallest safe change, switch to a proven event source or pause automated decisions if optimisation is using corrupted data.
  6. Repair and verify: test consent variants, device paths, deduplication and downstream reporting.
  7. Backfill if valid: use backend IDs and approved upload processes; never invent missing conversions.
  8. Document: impact window, root cause, fix, affected decisions and prevention.
PriorityExampleResponse
P0 — business journey brokenCheckout, form or booking cannot complete.Escalate immediately; protect customers and revenue before reporting.
P1 — optimisation data materially corruptPurchases doubled, wrong values sent or primary event stopped.Contain quickly; consider pausing affected automated bidding decisions.
P2 — reporting degradedDashboard stale, campaign field missing or one secondary event broken.Use source reports and repair within the agreed service window.
P3 — cosmetic/documentation issueLabel, description or non-decision chart is wrong.Add to normal maintenance without distracting from material faults.

After an incident, update the audit checklist and alert that would have caught it earlier. The goal is not a stack that never changes; it is a stack whose changes are visible, testable and recoverable.

Three worked measurement maps

Example 1: Multi-currency ecommerce

An online retailer sells in AUD and USD. The backend is the commercial source of truth and stores original order value/currency, discounts, tax, shipping, refunds and customer status. GA4 and ad platforms receive transaction ID, purchase value under the documented net-sales definition and transaction currency. The warehouse stores original values plus AUD-converted reporting value using a dated exchange-rate table.

The dashboard shows new-customer CAC and contribution by market. A reconciliation panel compares backend orders with GA4 purchase IDs and flags duplicate IDs, missing currency and a capture ratio outside tolerance. Platform ROAS remains visible for optimisation, but scaling decisions use new-customer contribution and market capacity.

Example 2: Subscription acquisition

A subscription brand records subscription start, first payment, renewal, pause, cancellation and refund against a stable subscription/customer ID. Paid campaigns optimise initially to subscription start, but reporting pairs CAC with first-payment contribution, second-payment retention and 90-day contribution. Introductory offers are tagged so discounted cohorts are not compared blindly with full-price cohorts.

If a campaign reports excellent first-payment ROAS but poor second-payment retention, it is held rather than scaled. The measurement stack makes that quality issue visible before acquisition volume creates a cash-flow problem.

Example 3: High-consideration lead generation

A service business receives forms and bookings from paid search and social. The browser event records a successful lead with a lead ID. UTMs and eligible click IDs are written to dedicated CRM fields. Sales marks each record valid/invalid, attended/no-show, qualified and won/lost using controlled stages. Qualified opportunities are uploaded frequently enough to inform campaigns; won revenue is uploaded later for value reporting.

The scorecard shows raw lead CPA, valid-lead rate, qualified-opportunity CPA, win rate and realised revenue. Search brand and non-brand are separate. A campaign with the cheapest forms but the worst valid-lead rate is not allowed to consume the budget simply because the platform reports more “conversions”.

Frequently asked questions

Which system should be our source of truth?

Use the system where the real outcome is confirmed: commerce/backend for orders and refunds, subscription platform for billing/retention, and CRM/finance for qualified pipeline and won revenue. GA4 and ad platforms remain essential for journey and optimisation insight, but they are not your accounting ledger.

Why does Meta or Google report more sales than GA4?

They use different attribution windows, identity/matching, view-through rules, consent inputs, time zones and models. A sale may be claimed by more than one platform. Compare definitions and transaction IDs, inspect changes over time and evaluate blended business results rather than expecting identical totals.

Should we import GA4 conversions into Google Ads or use the Google Ads tag?

Either can be valid. Choose based on implementation quality, required data and governance. Avoid making both versions of the same action primary. Document which path owns bidding, keep the other secondary if useful and reconcile both to backend outcomes.

Do we need both Meta Pixel and Conversions API?

Using both can provide more resilient measurement when implemented correctly. Shared browser/server events need matching event names and event IDs for deduplication. Follow consent and privacy requirements, and verify live diagnostics; do not add a server feed without an owner and test plan.

What is a good tracking match rate?

There is no universal percentage. Consent, browser mix, business model and system scope affect capture. Establish your expected range by reconciling stable periods. Alert on material deviations from that baseline rather than chasing 100%, which can indicate duplicate or improperly collected data.

How often should we test conversions?

Run an end-to-end test before every material site, checkout, form, consent, CRM or tracking release. Add automated daily monitoring and perform a scheduled manual journey at least monthly for critical paths, more often during migrations or peak trading.

Can UTMs include customer names or email addresses?

No. URLs are widely logged and shared. Never put personal information in UTMs. Use controlled campaign values and internal IDs, and use approved protected processes for customer matching or offline conversion uploads.

How do we measure new customers accurately?

Create the flag from backend order/customer history or CRM deduplication using a documented rule. Handle guest checkouts, merged records, cancellations and reactivations. Pass or join a non-personal status field into reporting, then validate it against customer records.

When should an offline event become a primary optimisation conversion?

When its definition is consistent, upload is timely and reliable, and volume is sufficient for the campaign strategy. Until then, keep an earlier valid stage as primary and use the deeper outcome for observation or value analysis. Do not optimise to a sparse, months-late event merely because it is closest to revenue.

What should we do if tracking breaks during a major campaign?

Confirm whether the customer journey or only measurement is broken, define the incident window and contain the smallest safe component. Preserve backend records and click IDs for potential valid backfill. Avoid large automated budget decisions on corrupt data, repair and test end to end, then document the impact.

Want us to run the system with you?

You can use every guide yourself. If the work starts eating the week again, we can step in with paid media management, creative production and practical growth support.

Talk to Hey Sage