Woocommerce Refunds and Woocommerce Subscription renew GA tracking

Download plugin

Adding server side events (order refunds and subscription auto-renewals) to your Google Analytics reports.

Google Analytics is a free web analytics tool. Enabling Enhanced Ecommerce provides you with a number of insightful and actionable reports. Maintaining the accuracy and consistency of your e-commerce data is a critical aspect of your analysis.

Try to match the sales data between your Google Analytics account and Woocommerce reports. In many cases, you will find that Google Analytics and shopping cart sales data generally do not match.

Data discrepancy between Google Analytics and Woocommerce reports is a very common issue, faced by many online retailers. Fortunately this issue can be minimised by providing more data to Google Analytics. 

Why Google Analytics and Woocommerce reports data don’t match?

There’s a plethora of reasons for this, not limited to:

  • You are still using standard ecommerce tracking instead of enhanced ecommerce tracking. Enhanced Ecommerce provides many more ways, to collect ecommerce data than standard ecommerce tracking.
  • User’s action – analytics tools might be blocked by the user’s Adblocker
  • Tracking code errors – Incorrect ecommerce tracking code on the order confirmation page. The Analytics / Tag Manager tracking code has some errors.
  • You are not sending all of the ecommerce data to Google Analytics

Your Analytics / Tag Manager tracking code works fine. All user interactions are tracked….but what about server side events?

Once a customer has placed an order on the website, GA record that transaction. The WooCommerce code to track purchases was placed on the Thank You page. If later, the customer demand for a refund and the refund is issued, the refunded sales amount does not automatically reflect back in GA ecommerce reports.

WooCommerce Subscriptions is a premium WooCommerce extension that allows you to sell products and services with recurring payments. With automatic payments, a recurring payment is charged without involvement from the customer or store manager via the wp cron jobs…they also aren’t tracked in GA.


Our plugin monitors server side processes and uses the Google Analytics Measurement Protocol specifically to solve a problem with tracking subscription renewals and order refunds. 

The Google Analytics Measurement Protocol is used on server side and won’t affect your current tracking code.

Although, this plugin can be used as standalone plugin it is intended to be used just as an addon to other tracking solutions. You should keep using your current tracking solution:

In addition to all data collected by your current solution, your Google Analytic reports will now track refunds and subscription renewals also!

Dealing with automatic order renewals by WooCommerce Subscriptions

A key feature of a subscription is a recurring payment — a payment due at a regular interval over time. These payments are the foundation block of a larger renewal process in WooCommerce Subscriptions.

Subscriptions performs a number of tasks as part of renewal, including generating an order to record payment, emailing both you and the customer via email of the renewal and sometimes, processing the payment. The actual tasks performed differ depending on which method is being used to process the renewal.

Once the subscription renewal payment is complete, the subscription is successfully renewed and new order is created to record payment. Plugin will send new order data to Google Analytics!


Dealing with WooCommerce refunds

Once the order refund is created, plugin will send refund data to Google Analytics in order to adjust your sales data.


  • There is a difference between reversing a transaction and refunding a transaction. Reversing a transaction is done by sending a negative value while refunding a transaction will populate the native refund metrics available in Google Analytics. You can choose one of these options in plugin settings page.
  • In order to use refund data feature in GA you need to be utilizing Enhanced eCommerce.
  • you cannot issue refunds for transactions older than 6 months.
  • you should wait 24 hours before implementing the refund data to make sure the original transaction is present in the account (usually takes about 15-20 mins).
  • it can take up to 20-30 minutes before the refunds/reverse-data are shown in GA.

Simple as that!

Download plugin

Track server side events (order refunds and subscription auto-renewals) in your Google Analytics reports.


Screenshots and Settings

Plugin install

1. Upload the plugin files to the `/wp-content/plugins/plugin-name` directory, or install the plugin through the WordPress plugins screen directly.
2. Activate the plugin through the ‘Plugins’ screen in WordPress

Plugin Settings

Setting page is located in your WordPress Dashboard -> Settings -> WooGA Fixer

plugin settings

Google Analytics ID – fairly self-explanatory, you should provide your Google Analytics ID( format UA-XXXXX-X ).

If you are using WooCommerce Google Analytics  (by WooCommerce) or Enhanced Ecommerce Google Analytics Plugin for WooCommerce (by Tatvic), plugin will provide you ID’s stored in your database so you can use them here.

Track events – you can select which type of events you wanna track on server side ( “Refunds” and “Supscription Renew” available in version 1.0)

“Supscription Renew” option will be shown only if you have activated WooCommerce Subscriptions plugin on your site.

Track refunds as – you can select the way your refunds will be sent to GA. (options: “reversing transaction” or “refunding transaction”). Find more details here:

Difference between reversing a transaction and refunding a transaction >>


License Key – licence key provided with plugin purchase. Need this data filled in order to receive future plugin updates.

Download plugin

Track server side events (order refunds and subscription auto-renewals) in your Google Analytics reports.