Google Analytics 4

GA4's Measurement Protocol accepts server events but silently drops invalid ones. Trakero validates, stitches server purchases into the browser session, and uses the order id as transaction_id.

Start freeDestination: availableIntegrations
  • Browser SDK
  • Your server
  • WooCommerce
Trakero
  • GA4

What you get

  • Joins the browser session

    Server events carry the client_id and session_id from the _ga cookies, so revenue lands in the right session and source.

  • One purchase per order

    transaction_id is always the order id, GA4's own safety net against duplicates.

  • Within GA4's limits

    Events older than 72 hours are not sent (GA4 would drop them); parameters are trimmed to GA4's limits.

  • Test events validated

    Test events go through Google's validation endpoint so setup problems show up before real orders.

Where browser-only tracking loses the sale

Pick a situation your shoppers are in and watch one order take both paths.

Today's deliveries

Purchase #1043

Chrome, ad blocker on · Meta CAPI · 0.4 s

The ad blocker stops the browser Pixel on its way to facebook.com. The same purchase leaves your server, reaches Meta through the Conversions API and is counted.

Sample deliveries. Pick a row to watch its route.

Shopper, Sent to, Took

Set up in minutes

  1. GA4 Admin → Data streams → your web stream: copy the Measurement ID.
  2. Measurement Protocol API secrets → Create.
  3. Add the GA4 destination in Trakero and send a test event.
track.yourstore.comTrakero

Your store → your domain → Meta, Google, TikTok

Questions

Should I keep my gtag?

Yes for page views and engagement, but let Trakero send the purchase (or remove the gtag purchase), because GA4 deduplicates only purchases by transaction_id, not other events.

Start counting every order today

Create a free account, connect your store and watch a test order arrive in Meta Events Manager.

Free plan · No card needed · Set up in one afternoon