I really like it when revenue numbers match across the board. This can often be much harder than it should with different platforms attributing sales in what seems like a haphazard manner, however, I think it is important to decide where your point of truth will sit.
My preference is for having Google Analytics sales data be as close to my store sales data as possible. If this is correct, I can spend more time tweaking analytics tracking code and groupings etc. to iron our revenue sources and attribution models, but that is a whole other blogpost.
Two of the issues I often see which can cause discrepancies are refunds and test transactions
Refunds
In the perfect scenario, a visitor comes to your website, buys what they are looking for, accepts your special offer in the checkout process and then views the thankyou page. The sale is processed and Google Analytics shows the sale and the value. In this case, however, the customer isn’t happy with their purchase and wants to return it. This almost takes the transaction offline or at least breaks the chain.
The sale is attributed and displayed in Google Analytics but the refund isn’t. If you run a high volume online business or have lower sales values a few refunds won’t make a significant difference, however, if you have a smaller number of transactions, or large purchases, the discrepancy can be much larger and cause issues.
Test Transactions
Launching a new website or post-upgrade tests can lead to test transactions. In some cases, these will also be logged in Google Analytics and cause tracking anomalies, again when the sales reports in your online store don’t match Google Analytics.
How to issue a full refund in Google Analytics
Google Analytics has a data uploader tool built in which will allow you to amend the sales data by. It won’t allow you to delete transactions, but it will allow you to process a refund which will ‘balance the books.’
The instructions are as follows:
Through the admin panel, go to the Data Import tool. (As a note, I had some challenges with permission denied, so opened an incognito tab in Chrome and it worked for me.)
Click the Create button to create your first Dataset
Chose the refund option as we will be uploading refund data. As you can see there are lots of other data imports you can do.
Give the dataset a name. In the case of this store, a monthly refund schedule will be appropriate.
You are able to configure what data you would like to upload. In the case of a straight forward refund, we simply need to enter the transaction ID. More to follow.
When this is complete go back to the data import options which will show you a list of all your imports.
Select your import from the list
To make life easy we are going to allow GA to create the file for us to fill in and upload, so chose the Get Schema option.
Download the excel file
In the transactionID column, ad the Id’s of the orders which should be refunded. These should match your shopping platform and show in your product performance report.
Upload the file
Wait for the status to show completed
After between 15mins and 24 hours you will see the refunded amount appear, which will match the file you uploaded.
There are lots of ways to use the data import, which I will cover in future posts, but hope this one helps all your numbers match and establish your point of truth!