Elido
Help center

Integrations

Connect Google Analytics 4 to Elido

Forward Elido conversion events to GA4 via the Measurement Protocol — Measurement ID, API secret, and how client_id is mapped.

Updated 2026-05-12

Elido sends conversion events to GA4 server-side using the Measurement Protocol. This means conversions appear in GA4 regardless of whether the user has an adblocker, without any JavaScript on your page.

What you need#

  • A GA4 property (not Universal Analytics).
  • Access to the property's Admin panel.
  • About 5 minutes.

Step 1 — Find your Measurement ID#

  1. Go to Google Analytics.
  2. Click Admin (bottom-left gear icon).
  3. Under Property, click Data streams → Web.
  4. Click your web data stream.
  5. Copy the Measurement ID — it starts with G-, e.g. G-XXXXXXXXXX.

Step 2 — Create a Measurement Protocol API secret#

On the same data stream page:

  1. Scroll down to Measurement Protocol API secrets.
  2. Click Create.
  3. Give it a name ("Elido") and click Create.
  4. Copy the secret value. It's only shown once. If you lose it, create a new one — old secrets keep working until you delete them.

Step 3 — Configure in Elido#

  1. Go to Dashboard → Conversions → GA4 → Set up forwarding.
  2. Paste the Measurement ID and the API secret.
  3. Click Save. Elido immediately sends a test event (elido_test) to GA4.

Wait 30–60 seconds, then check GA4 → Reports → Realtime — you should see an active user from the test event.

How Elido maps client_id#

GA4 requires a client_id to attribute events to a user. Elido derives it from:

  1. If your short link destination page sets a _ga cookie and the value is passed back via your conversion pixel — Elido reads it directly.
  2. Otherwise, Elido hashes the Elido click_id (e.g. clk_abc123) to a stable UUID-shaped string and uses that as the client_id.

This means GA4 will show these events under a "user" that may not match your existing GA4 web sessions — they won't stitch together. For full session stitching, pass the _ga cookie value to your server and include it in the Elido Conversions API call.

Event names in GA4#

Elido forwards these events:

Elido eventGA4 event name
conversion.recordedpurchase (with value + currency)
link.clicked (if enabled)elido_click
threshold.exceededelido_threshold

The purchase event is used because GA4 has built-in reporting for it in the Monetization section. All events include utm_source, utm_medium, utm_campaign as event parameters.

Troubleshooting#

No events appearing in Realtime — Check the Measurement ID and API secret. A wrong API secret returns HTTP 204 (no content) but GA4 silently drops the payload. Verify by calling the Measurement Protocol endpoint directly:

curl -X POST \
  "https://www.google-analytics.com/debug/mp/collect?measurement_id=G-XXXX&api_secret=YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"client_id":"test","events":[{"name":"elido_test","params":{}}]}'

A successful debug call returns {"validationMessages":[]}.

Events appear in Realtime but not in regular reports — Measurement Protocol events can take 24–48 hours to appear in non-realtime GA4 reports. This is a GA4 limitation, not an Elido issue.

Wrong currency in purchase events — Elido reads the currency from the conversion event's currency field. Default is EUR. Set it explicitly in your conversion recording API call.

Duplicate events — If your site also fires a GA4 purchase event client-side, you'll see doubles. Disable the client-side event or use a different event name in the Elido mapping settings.

Was this helpful?
Need more? Email the team — replies within one working day.Contact support
Connect Google Analytics 4 to Elido · Elido