Skip to main content

GA4 Measurement Protocol session_id purchase event bug

· 3 min read
Aleksandar Vucenovic
Chief Growth Officer

featured image

Update

We have identified the root cause. Please read our new post GA4 Measurement Protocol purchase event processing bug for more information.

  • Certain purchase events not processed through GA4 Measurement Protocol
  • We identified the root cause and have a fix in place

What happened?

Starting from April 28 we started getting reports from Pixel Manager users that purchase events were not being processed anymore.

We quickly identified that the issue only happened to users of the Pro version of the Pixel Manager who had the Measurement Protocol enabled.

However, the cause was not immediately clear.

We had not changed the Measurement Protocol implementation in the last few releases, so we were puzzled by the sudden issue.

Also, our logs showed that the purchase events were being sent to GA4, GA4 accepted the network requests without errors, but purchase events were not showing up in the reports.

What did we do?

We immediately started investigating the issue, added a lot more logging to the Measurement Protocol code, and started comparing the network requests sent by the Pixel Manager to order data.

Also we informed our users who reached out to us, that in the meantime they could simply disable the Measurement Protocol in the Pixel Manager settings to get their purchase events processed again through the browser pixel (which was not affected by this issue).

What did we find?

After further investigation, we found that GA4 stopped processing purchase events from April 21, 2024, if the session_id parameter was included in the Measurement Protocol request. The session_id parameter is optional and we have been including it in the Measurement Protocol requests for a long time to help GA4 display purchase events in the real-time reports. We tried to help our users with this because regular purchase events sometimes take 24 hours to show up in GA4 reports. This is a processing delay that happens entirely on the GA4 side and is not related to the Pixel Manager.

Adding the session_id to show events in the real-time reports is a documented feature of the Measurement Protocol (show user activity in real-time reports).

What did we do to fix it?

Update

We have identified the root cause. Please read our new post GA4 Measurement Protocol purchase event processing bug for more information.

We removed the session_id parameter from the Measurement Protocol requests in the Pixel Manager and confirmed that purchase events are now being processed correctly by GA4.

This change has been released with the version 1.42.6 of the Pixel Manager.