Can I track WooCommerce conversions using server-side tracking?

Yes! If you’re running a WooCommerce store and your conversions aren’t tracking accurately—especially when you’re not using the default WooCommerce “thank you” page—you can enable server-side conversion tracking as a fallback.

This method triggers a conversion when the order status changes to “processing” or “complete”—making it much more reliable for custom checkout flows, third-party gateways, or cases where the user doesn’t reach the thank you page.


How to enable it

  1. Navigate to Advanced Tracking (UUID)

  2. Toggle Enable advanced tracking

  3. Save Settings.

Once enabled, AB Split Test will count a conversion when an order is marked as processing or complete—no thank you page visit required.

AB Split Test Settings page showing Data Management options, including toggles for cookie consent and advanced tracking, with an arrow pointing to the advanced tracking toggle.

Tracking Additional WooCommerce Statuses

By default, AB Split Test tracks conversions for orders marked as "completed" or "processing" in WooCommerce.

If you'd like to track other order statuses (such as "on-hold", "pending", "failed", etc.), you can easily do this with a simple WordPress filter.

Example: Track "On-Hold" Orders

To also treat “on-hold” orders as conversions, add this snippet to your theme’s functions.php file or a custom plugin:

add_filter( 'abst_convert_statuses', function( $statuses ) {
$statuses[] = 'on-hold'; // Add 'on-hold' to the tracked statuses
return $statuses;
});

Why Client-Side Order Value Tracking Can Fail

If you're using client-side WooCommerce conversion tracking (tracking on the thank-you page without server-side enabled) and have "Use Order Value" enabled, order values may not track correctly.

Common reasons this happens:

  1. Conversion status - By default, AB Split Test only tracks orders with status "processing" or "completed". If the order has a different status when the thank-you page loads, the order value won't be captured.
  2. The woocommerce_thankyou hook isn't firing - Client-side tracking relies on this hook. Some checkout plugins, custom checkout flows, or payment gateways skip this hook entirely.

This is why server-side tracking is recommended - About 30-50% of WooCommerce sites need server-side tracking for reliable order value tracking.

Custom Order Value Workarounds

If you need to track order values on the client-side thank-you page, you can pipe in your own window.abst.abConversionValue. However, individual fixes won't be a fix for all people due to different WooCommerce configurations and checkout flows.

Coming Soon: Dynamic Conversion Values

In the next update, AB Split Test will include dynamic conversion values. It will look through the page for an order total. If you check "Use Order Value," it will try to get it from WooCommerce or wherever. But if not, it'll search the URL and search the page for conversion values.

Leave a Comment

You must be logged in to post a comment.