My Step-By-Step Blueprint For Learning and Mastering Google Analytics 4 (GA4)
Get the FREE e-book on Google Analytics 4 – GA4 (126 Pages)
Yes I want the FREE ebook
Last Updated: May 24, 2022
In this article, I will show you how to deal with Google Analytics Refund. You will learn to issue partial and full refunds.
If your business issues a lot of refunds on a daily/weekly/monthly basis (quite common in the case of large online stores) then you need to adjust your sales data accordingly in Google Analytics so that you can reflect the refunded sales amount in your ecommerce reports.
Almost all popular shopping carts (like Shopify) automatically adjust the sales data to reflect refunds (remove refunded sales amount from total sales). But this is not the case with Google Analytics.
Once a customer has placed an order on the website, GA record that transaction. If later, the customer demand a refund and the refund is issued, the refunded sales amount does not automatically reflect back in GA ecommerce reports. You need to manually or programmatically upload refund data into GA, in order to adjust your sales data.
Difference between refunding a transaction and reversing a transaction
Technically speaking and in the context of Google Analytics, both refund and reverse are the same things. Whether you are refunding a transaction or reversing a transaction, you are removing the sales associated with that transaction.
We use the word ‘reverse’ to remove sales amount associated with all those e-commerce transactions which are: unfulfilled orders and/or test orders.
We use the word ‘refund’ to remove the sales amount associated with all those e-commerce transactions which are requests for a refund from our real customers.
Difference between partial and full refund in Google Analytics
Through ‘refund data import’ feature, you can issue full refund or partial refund in Google Analytics.
What you actually refund/remove is the sales associated with a transaction.
A transaction is a purchase order placed on your website. People can buy one or more products in a single transaction. So a transaction may contain one or more products.
In case of a full refund, you reverse/remove the full sales amount associated with a transaction in your GA ecommerce reports. In other words, in case of a full refund, you reverse/remove the sales amount associated with all of the products which were purchased in a single transaction.
In case of partial refund, you reverse/remove only certain sales amount associated with a transaction in your GA ecommerce reports. In other words, in case of a partial refund, you reverse/remove sales associated only with certain products (which were part of the transaction), in your GA ecommerce reports.
Criteria for using ‘refund data import’ feature in Google Analytics
The following conditions must be met before you can use the ‘refund data import’ feature in Google Analytics:
#1 You are using Universal Analytics tracking code (analytics.js) and not the classic Google Analytics tracking code (ga.js) on your website.
If you wish to refund transactions which were set in the standard ecommerce format then do it by making changes to your ecommerce tracking code as explained in this article: How to reverse ecommerce transaction in Google Analytics
#3 The transaction ID that you use for the refund purpose must be the original ID and not the one modified by a GA view filter.
#4 The upload file that you use to import refund data into GA, should not contain data for both full and partial refunds. You should not upload full and partial refunds via the same upload file. Use separate upload files for full and partial refunds.
#5 You can only refund those transactions which were originally reported in the last 6 months.
Issuing a full refund in Google Analytics
Follow the steps below for issuing a full refund in GA:
Step-1: Navigate to the ‘Admin’ section of your GA view.
Step-2: Click on the ‘Data Import’ link under the Property section:
Step-3: Click on the ‘+ New Data Set’ button and then select ‘Refund data’ as the data set type:
Note: Data set is a container that holds the data you want to upload to GA.
Step-4: Name your data set:
Step-5: In the next step, define your data set schema (schema is the format in which you want to upload the data to GA):
In order to issue a full refund, we need only the ‘Transaction ID’. That’s why I did not select any other column from the ‘Any number of these columns may be provided’ drop-down menu.
Step-6: Click on the ‘Get schema’ button:
Note: If you wish to upload refund data via GA management API then follow the steps below:
#1 click on the ‘Get Custom Data Source ID (for API users)’ button
Step-7: Download the schema template (which is a CSV file) by clicking on the ‘Download Schema Template’ button and then click on the ‘Done’ button twice to create your new data set:
Step-8: Open the schema template file you downloaded from GA into Excel and then add and format your refund data according to the schema defined in the template:
In order to issue a full refund, upload only transaction IDs via the schema template file.
Each transaction is identified through a unique ID known as the transaction ID.
Here ‘ga:transactionId’ is the API name.
When we access Google Analytics via API, we use the API name of a dimension / metric / segment instead of the web view name (also known as UI name).
The API name of ‘transaction id’ is: ‘ga:transactionId’
Here we are accessing GA API via the ‘refund data import’ feature.
Step-9: Once you have finished adding the transaction data, save the schema template file as a CSV file. Your file is now ready to be uploaded to Google Analytics.
Step-10: Again navigate to the ‘Admin’ section of your GA view, Click on the ‘Data Import’ link under Property section and then click on the ‘Manage uploads’ link:
Step-11: Click on the ‘upload file’ button to upload the refund data to GA:
Step-12: Wait for the status to read ‘completed’:
The green right sign denotes that the refund data upload was successful.
Once you have uploaded the refund data, you can see it in the ‘Product Performance’ and ‘Sales Performance’ report under the columns: ‘Product Refund amount’ and ‘Refund Amount:
You can also create a custom report in GA, just for analysing refund data.
Follow the steps below for issuing a partial refund in GA:
Step-1: Navigate to the ‘Admin’ section of your GA view.
Step-2: Click on the ‘Data Import’ link under Property section.
Step-3: Click on ‘+ New Data Set’ button and then select ‘Refund data’ as data set type.
Step-4: Name your data set:
Step-5: In the next step, define your data set schema, like the one below:
In order to issue a partial refund, select: ‘Product SKU’ and ‘Quantity Refunded’ from the ‘Any number of these columns may be provided’ drop down menu.
‘Product SKU’ is the product code which is used to uniquely identify a product.
‘Quantity refunded’ is the total number of units refunded for a product.
Note: The refunded revenue is calculated automatically by Google, based on the product price and quantity refunded.
Step-6: Click on the ‘Get Schema’ button.
Step-7: Download the schema template by clicking on the ‘Download Schema Template’ button and then click on the ‘Done’ button twice to create your new data set:
Step-8: Open the schema template you downloaded from GA into Excel and then add and format your refund data according to the schema defined in the template:
To issue a partial refund, add transaction id, product SKU and quantity refunded, to each row of the downloaded schema template file.
ga:transactionId is the API name for ‘Transaction ID’
ga:productSku is the API name for ‘Product SKU’
ga:quantityRefunded is the API name for ‘Quantity Refunded’
Note: If you are using ‘product SKU‘ in the downloaded schema template file then it is mandatory to use ‘Quantity Refunded‘ with it.
Step-9: Once you have finished adding the data for a partial refund, save the schema template file as a CSV file. and then click on the ‘Manage uploads’ link > ‘Upload file‘ button to upload the refund data to GA.
Step-10: Wait for the status to read ‘completed’ and then check the ‘Product Performance’ and ‘Sales Performance’ reports to see the uploaded refund data.
Overriding the original reported product price and transaction revenue
If you want to override the original reported product price then add ga:productPrice column while defining your data set schema:
And then later provide the product price in the downloaded schema template for upload to GA:
Similarly, if you want to override the originally reported transaction revenue then add ga:transactionRevenue column while defining your data set schema:
And then later provide the revenue in the downloaded schema template for upload to GA:
Important points to remember:
#1 Once you have uploaded the refund data it may take up to 24 hours for refund data to appear in your enhanced ecommerce reports.
#2 You can not edit or delete refund data once it has been uploaded to your account. So be careful with the data you upload.
"How to use Digital Analytics to generate floods of new Sales and Customers without spending years figuring everything out on your own."
Here’s what we’re going to cover in this training…
#1 Why digital analytics is the key to online business success.
#2 The number 1 reason why most marketers are not able to scale their advertising and maximize sales.
#3 Why Google and Facebook ads don’t work for most businesses & how to make them work.
#4 Why you won’t get any competitive advantage in the marketplace just by knowing Google Analytics.
#5 The number 1 reason why conversion optimization is not working for your business.
#6 How to advertise on any marketing platform for FREE with an unlimited budget.
#7 How to learn and master digital analytics and conversion optimization in record time.
My best selling books on Digital Analytics and Conversion Optimization
Maths and Stats for Web Analytics and Conversion Optimization
This expert guide will teach you how to leverage the knowledge of maths and statistics in order to accurately interpret data and take actions, which can quickly improve the bottom-line of your online business.
Master the Essentials of Email Marketing Analytics
This book focuses solely on the ‘analytics’ that power your email marketing optimization program and will help you dramatically reduce your cost per acquisition and increase marketing ROI by tracking the performance of the various KPIs and metrics used for email marketing.
Attribution Modelling in Google Analytics and BeyondSECOND EDITION OUT NOW!
Attribution modelling is the process of determining the most effective marketing channels for investment. This book has been written to help you implement attribution modelling. It will teach you how to leverage the knowledge of attribution modelling in order to allocate marketing budget and understand buying behaviour.
Attribution Modelling in Google Ads and Facebook
This book has been written to help you implement attribution modelling in Google Ads (Google AdWords) and Facebook. It will teach you, how to leverage the knowledge of attribution modelling in order to understand the customer purchasing journey and determine the most effective marketing channels for investment.
About the Author
Himanshu Sharma
Founder, OptimizeSmart.com
Over 15 years of experience in digital analytics and marketing
Author of four best-selling books on digital analytics and conversion optimization
Nominated for Digital Analytics Association Awards for Excellence
Runs one of the most popular blogs in the world on digital analytics
Consultant to countless small and big businesses over the decade
Learn and Master Google Analytics 4 (GA4) - 126 pages ebook
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of all the cookies.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Duration
Description
cookielawinfo-checkbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.