Send offline conversions into GA4

Send offline conversions into GA4

Analytics & Attribution
Google
The only way a sale that closes six weeks later gets attributed to the campaign that produced it.
Source
Google
Tools
GA4, your backend
Runs
On conversion
Cost
Free
Last updated
August 7, 2026

What it is.

Measurement Protocol lets your server send events straight to GA4 instead of relying on the browser. You can also run it fully server-to-server, which is how backend events reach analytics at all.

For B2B this is the missing piece. A demo request is measurable in the browser, and the deal it becomes is not, so campaign reporting stops at the form unless the server sends the rest.

The catch to design around: to attach an event to an existing session you have to include the session_id and send it within 24 hours of the session starting.

What you get.

  • Server-side event sending into GA4 without a browser.
  • A path for CRM outcomes to reach the same reports as your traffic.
  • Full server-to-server operation for backend events.
  • Event generation and renaming, so you control what GA4 receives.
  • Remarketing signals from events the browser never saw.
HOW TO USE IT

How to set it up.

1

Decide which offline events matter, and keep the list short because every one needs maintaining.

2

Capture and store the GA4 session_id and client_id when the visit happens, since you cannot recover them later.

3

Send the event from your backend with that session_id attached.

4

Send inside 24 hours of the session start if you want it joined to that session.

5

Name events to match your existing GA4 schema, or the reports will split.

6

Validate in GA4 realtime before you send historical data.

Use cases

Attribute a deal that closed late

Send the outcome server-side so a slow sale reaches the same report.

Get CRM results into GA4

Push the closed-won event without a browser involved.

Compare channels on revenue

Read acquisition against outcomes instead of form fills.

Best for

Long B2B sales cycles

The deal closes weeks after the click, and nothing in the browser can connect them.

Server-side conversions

Payments, approvals, and qualifications happen in your backend and never touch a page.

Paid channels needing better signal

Genuine conversion events feed bidding better than a form submit does.

Open the original.

Hosted on Google, free to open.
Open the Tool

Questions about Send offline conversions into GA4

What do I have to capture up front?
How long do I have to send?
Is this a marketing setup?

Questions about Analytics & Attribution

Why send offline conversions back into analytics?
What goes wrong most often?
Strengths
  • It is the documented route for backend events to reach GA4, with no workaround needed.
  • Session joining is documented precisely, including the 24 hour window.
  • Full server-to-server operation means events do not depend on a browser at all.
Limitations
  • Session joining needs the session_id and a send inside 24 hours, which forces you to store identifiers up front.
  • It needs backend development, so this is not a marketer-only setup.
  • Badly named events fragment your GA4 reports, and cleaning that up later is painful.
  • Sending identifiers has privacy implications, so review the settings before you enable remarketing.
Skip this if
  • Skip it if your closed-won revenue already flows back into GA4.
Ideal for
  • Analytics engineers
  • Marketing ops leads
  • Stage: Series A onward

Want this running without building it yourself?

TripleDart has scaled 300+ tech companies with expert operators and AI workflows behind every play.