Forum Replies Created

Viewing 4 replies - 1 through 4 (of 4 total)
  • Thread Starter koffeinfritt

    (@koffeinfritt)

    @adamdunnage

    Apologies, I must have missed your reply.

    We are currently running with a workaround to solve this; I will restore the setup in our staging environment and try this week.

    Thread Starter koffeinfritt

    (@koffeinfritt)

    Hi @adamdunnage

    I can confirm that the tests were done in a fresh incognito window (with tracking prevention turned off), and I was not logged in to WordPress.

    Could you please check the add_to_cart event under the Analytics tag’s “Hits
    Sent” output rather than only the shared event timeline?

    Regards,

    Thread Starter koffeinfritt

    (@koffeinfritt)

    Hi James,

    Thank you for looking into this and for sharing it with the team. I have now been able to reproduce the issue in a controlled staging test.

    The main finding is:

    Site Kit writes _googlesitekit_ga_purchase_event_tracked = 1 before the browser request has successfully reached Google Analytics. If that request fails, Site Kit does not retry the purchase on a later page load.

    This means that a temporary network problem, browser interruption, blocked request, consent timing issue, or the customer closing the page could permanently lose the purchase event even though the order has already been marked as tracked.

    Thank you also for suggesting Conversios and GIA GA4. I would prefer not to introduce a second tracking integration at this stage, as that could create duplicate purchase events and make attribution harder to verify.

    I understand that server-side measurement may provide a more robust long-term solution. However, the staging test indicates that the current tracked-marker behaviour is also a separate reliability issue within Site Kit’s existing browser-based flow.

    Test environment

    I used a password-protected staging clone with a separate GA4 property.

    • Site Kit plugin conversion tracking was enabled.
    • Google for WooCommerce was disabled to avoid another Google tracking integration.
    • Nexi was in test mode.
    • FunnelKit’s custom thank-you page remained enabled.
    • No production changes were made.

    Successful baseline test

    I first completed a normal Nexi test-card payment. Nexi returned the browser automatically to the custom FunnelKit thank-you page.

    Site Kit successfully sent one purchase event to GA4 with the expected ecommerce data, including:

    • transaction_id
    • value
    • currency
    • items
    • tax
    • shipping
    • googlesitekit_event_provider: woocommerce
    • event_source: site-kit

    The order then contained:

    _googlesitekit_ga_purchase_event_tracked = 1

    Reloading the thank-you page did not send another purchase, confirming that Site Kit’s duplicate prevention works when the initial request succeeds.

    Controlled failed-delivery test

    I then completed a second Nexi test-card purchase. Before completing checkout, I used Edge DevTools to block only requests to:

    region1.google-analytics.com

    Nexi still completed the payment normally and returned the browser automatically to the same FunnelKit thank-you-page flow.

    On the first load of the thank-you page:

    • Site Kit generated the correct purchase request.
    • The request contained en=purchase and event_source=site-kit.
    • DevTools showed that the request was blocked before transmission: 0 B, 0 ms.
    • The event therefore did not reach Google Analytics.

    Immediately afterwards, I checked the order metadata. Despite the failed browser request, Site Kit had already written:

    _googlesitekit_ga_purchase_event_tracked = 1

    I then removed the network block and reloaded the same valid thank-you URL. GA4 successfully received new page_view and scroll requests with status 204, demonstrating that communication with Analytics was working again.

    However, Site Kit did not retry the purchase event because the order had already been marked as tracked.

    Conclusion

    In both tests:

    • Nexi completed the payment and returned the browser correctly.
    • The FunnelKit thank-you page loaded correctly.
    • The WooCommerce purchase data was available.
    • Site Kit generated the correct purchase event.

    The reproducible failure is the order of operations:

    1. Site Kit marks the order as tracked server-side.
    2. The browser attempts to send the purchase event.
    3. If browser delivery fails, the stored marker prevents any later retry.

    This does not appear to be caused by Nexi omitting the standard WooCommerce flow or FunnelKit preventing the purchase event from being generated. In this test, the event was generated correctly but could not recover from a failed browser delivery.

    I have screenshots showing:

    1. The successful baseline purchase and its ecommerce parameters.
    2. The blocked Site Kit purchase request showing 0 B.
    3. The tracked order metadata already set to 1.
    4. The subsequent successful GA4 requests after unblocking, with no purchase retry.

    I would be happy to share these if they would help the team.

    Thank you again for taking the time to investigate this.

    Thread Starter koffeinfritt

    (@koffeinfritt)

    Hi Adam,

    Thank you. I have now completed all the suggested checks.

    To answer your main question directly: yes, the issue is that add_to_cart is
    not being sent by the Analytics tag connected through Site Kit,
    G-E65EG57QJS. The Ads tag does send an Add to Cart hit.

    I repeated the test under the following conditions:

    • Logged out of WordPress
    • New Microsoft Edge InPrivate session
    • No browser extensions allowed in InPrivate
    • All cookie categories accepted
    • analytics_storage and all other consent signals were Granted when the event
      occurred
    • Correct Site Kit Analytics property and Measurement ID confirmed
    • Internal Traffic data filter is in Testing state, not Active
    • Tag Assistant connected
    • Cart emptied before the test
    • Product added exactly once

    Tag Assistant does show add_to_cart in the shared event timeline for both tag
    views. However, the “Hits Sent” results are different:

    Google Ads tag AW-18092578153:

    • An Add to Cart hit was sent.

    Analytics tag GT-KDQHDMKV / G-E65EG57QJS:

    • “No hits were sent by this tag.”
    • Tag Assistant adds: “Other tags on this page may have taken action.”

    This appears to explain the initial discrepancy: add_to_cart is visible in the
    shared Tag Assistant event timeline, but the connected Analytics tag did not
    send a hit for it.

    The underlying dataLayer contains exactly one add_to_cart command:

    {
    “event”: “add_to_cart”,
    “parameters”: {
    “send_to”: “GLA”,
    “ecomm_pagetype”: “cart”,
    “event_category”: “ecommerce”,
    “items”: [
    {
    “id”: “gla_6172”,
    “quantity”: 1,
    “google_business_vertical”: “retail”,
    “name”: “Dilla Vanilla · Koffeinfritt Grönt Te med Vanilj”,
    “price”: 95
    }
    ]
    }
    }

    There is no second add_to_cart command with event_source=”site-kit”.

    The corresponding button and Site Kit state was:

    {
    “buttonValue”: “6172”,
    “dataProductIdAttribute”: null,
    “jqueryProductId”: null,
    “siteKitAddToCart”: null,
    “matchingSiteKitProduct”: null
    }

    GA4 DebugView was also tested successfully:

    • page_view was received
    • user_engagement was received
    • add_to_cart was not received

    The GA4 Realtime report likewise showed page_view, session_start, first_visit,
    scroll and user_engagement, but no add_to_cart.

    This rules out:

    • Incorrect Analytics property
    • Active internal-traffic filtering
    • Browser extensions
    • Denied Analytics consent
    • Standard report processing delay
    • A general failure of the GA4 tag, since page_view and user_engagement arrive
      correctly

    Site Health information has now been submitted through the private form. It
    confirms that Site Kit’s active WooCommerce conversion provider is configured
    for add_to_cart and purchase.

    The behavior is reproducible on multiple simple products, originally product
    6164 and now product 6172.

    Could you please check the add_to_cart event under the Analytics tag’s “Hits
    Sent” output rather than only the shared event timeline?

    The evidence indicates that Google for WooCommerce generates the GLA/Ads event,
    while Site Kit’s WooCommerce listener does not generate its Analytics event
    because the standard single-product button has no data-product_id and the
    current product is absent from wcdata.products.

    Thank you.

Viewing 4 replies - 1 through 4 (of 4 total)