By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.
Apr 27, 2023

Why Shopify's sales report is not very accurate

Which data do I need to align to get valuable and correct business information? By Fassil S. Yehuala

When we integrate data from Shopify into our customer's analytics dashboards we always get one question: Why is my Shopify Report showing different results? Of course, there are many reasons why the two reports are not the same. Most of the differences appear in the way KPIs are calculated. Since aggregated Shopify Analytics sales metrics are not available through the Shopify API, we do not pull data directly from Shopify Analytics and present it in our dashboard as it is. Instead, we pull raw data, clean, enrich, and transform them to run our analysis.

In this article, I'll show you the reasons behind the differences between the Shopify sales report and a strong eCommerce dashboard. But first, let's try to understand the logic behind the Shopify sales report and get a deeper understanding of how the metrics are calculated. Let's get started!

Shopify Sales Reports 

Shopify offers several reports that customers can base their decisions. Sales reports are one of the reports that help you view information about your customers' orders based on criteria such as sales (history), product, or channel. A sales overtime report shows the total number of orders and the money you've made over time. This report includes sales (gross, net, and total), discounts, returns, shipping, taxes, duties, and surcharges. The report is organized in such a way that you can change the time unit (hour, day, one hour, day of the week, week, month, quarter, etc.) using the drop-down menu.

Now let’s look at Shopify's most common sales metrics with their definitions.


The number of orders that were placed on a given date.

Gross sales

Equates to product price x quantity (before taxes, shipping, discounts, and returns) for a collection of sales. Canceled, pending, and unpaid orders are included. Test and deleted orders are not included.


Equates to line item discount + order level discount share for a collection of sales.


The value of goods returned by a customer. 

Net sales

Equates to gross sales - discounts - returns


Equates to shipping charges - shipping discounts - refunded shipping amounts.


The total amount of taxes is based on the orders.

Total sales

Equates to gross sales - discounts - returns + taxes + duties + shipping charges. Total sales will be a positive number for a sale on the date that an order was placed, and a negative number for a return on the date that an order was returned.

Net quantity

The total number of units sold during this period. Before deducting returns. 

Source: Shopify

What Causes Data Mismatch

There are many ways the mismatch in data can happen. Here are the most common ones:

  1. Time Zone Mismatch

Sales discrepancies occur when the time zone set on the Shopify store differs from the time zone in your dashboard. For example, let's say two separate orders (X and Y) are placed on November 15th for a Shopify store that uses the UTC +0 time zone. Further, assume that order X was made at 09:06 PM and order Y was placed at 11:30 PM. Shopify report shows the two orders on November 15th. However, if our dashboard is set at Berlin time (UTC +1), then order Y will be reported as if it was placed on November 16th. 

Such discrepancies do not happen when you have only one shop or when all shops are in the same time zone, as we always prepare reports to match the store's time zone. However, if you operate in multiple time zones and have one report for all your shops, you need to decide whether to keep using different time zones or transfer everything to the report's time zone. And if you choose to keep using multiple time zone, you should be careful while reading the report.

  1. Return Date Mismatch

In the Shopify sales report, returns are based on the return date, not the order date. According to Shopify, a canceled order “appears as a sale for the day that it was placed and a return for the day that it was canceled, so your sales numbers are zero for that order overall”. Since the difference between the return date and the order date can be several days, the refund date mismatch can lead to huge variations in reporting.

For example, suppose a product is sold on December 20th and returned on January 15th of the next year. In the Shopify report, you will see positive sales value in the December report and negative returns value in the January report. In our dashboard, however, sales numbers are zero in December since “sales” and “returns” are reported on the date the order was placed. 

One special case where you see a huge difference is on days with a high sales volume, like Black Friday. You generate 5x the sales or even more. So your expected returns are also 5x higher. When returns are reported on the day they are returned, your return numbers are too low for this particular day and too high for the upcoming weeks. If you have issues in your warehouse and your customers have lower satisfaction, it is hard to analyze the effect attributed to “returns”. 

Of course, there is a need to show return values on the day they arrive in the warehouse. In most cases, the financial department is interested in those numbers as it reflects the cash flow. But for that, we should use the KPI “refunds” not “returns”. And talking about that, we should also take the date the customer transferred the money, not the order date. For analyzing your operations, attributing the return to the order date is the smartest way to go. Overall, return date mismatch can cause significant variations across the board as returns affect most sales metrics.

  1. Filters Mismatch

The Shopify reports apply different filters to those in our dashboards. Shopify includes canceled, pending, and unpaid orders in its reporting. However, gift cards, tests, and deleted orders are not part of the Shopify sales report. Here, the mismatch lies in gift cards. As gift cards generate revenue for your company, we include them in our reports. Hence, if your store sells gift cards, there will be mismatches in sales numbers. 

  1. Pre Vs. After-Tax Values Mismatch

In the Shopify sales report, metrics such as discounts and shipping are reported after taxes. In our dashboards, however, discounts and shipping values are displayed before taxes by default, but can be customized and changed if needed.


Accurately matching metrics on Shopify sales reports can not be an easy task to do. This is especially true if you don’t have an in-depth knowledge of how the store is set up, how returns are reported, and how metrics are calculated. 

As discussed above, some sources of variance are easy to correct, while others (such as return dates) are sources of huge discrepancies. Overall, you should note that the two reports are not comparable in an apples-to-apples fashion. Therefore, you should be careful when comparing the two reports.

Further Links

Check out our LinkedIn account, to get insights into our daily working life and get important updates about BigQuery, Data Studio, and marketing analytics

We also started with our own YouTube channel. We talk about important DWH, BigQuery, Data Studio, and many more topics. Check out the channel here.

If you want to learn more about how to use Google Data Studio and take it to the next level in combination with BigQuery, check out our Udemy course here.

If you are looking for help setting up a modern and cost-efficient data warehouse or analytical dashboard, send us an email at and we will schedule a call.