Your Average Order Value Might Be Way Off. Here's the Fix.

How to calculate accurate order value metrics in Shopify to increase revenue per order.

·5 minutes reading
Cover Image for Your Average Order Value Might Be Way Off. Here's the Fix.

The naive way of calculating average order value is to simply take the total revenue for the store and divide it by the number of orders, like this:

average order value = total revenue / number of orders

Simple enough, right?

However, this top-down method is limiting, because it can only tell us if average order value is increasing or decreasing. But we need to know why it’s changing and more importantly, what we can do about it.

For that, we need more than just the average revenue generated by each order. We’ll need to:

  1. see the whole distribution of order values to discover who spends the most,
  2. filter by new and returning customers to see how our remarketing campaigns perform,
  3. compare order values to other metrics like discounts and prices to create new strategies for increasing the revenue generated by each order,

And more.

To do that, we need to calculate the order value from the bottom-up by assigning every order in our store an accurate value. Then we can combine those values any way we like to discover how to increase our store’s profits.

Here’s how to do that with your Shopify orders.

Get accurate an complete ecommerce data in Google Analytics 4

How to Measure Order Value for Each Order

Shopify assigns each order a total value, which is the total revenue for that order. We can see that value on the order screen, as shown below:


That total number is the order value we’re interested in. But before calculating our order value metrics, we must account for refunds. There are two types of refunds in Shopify —full refunds and partial refunds.

Full Refunds

Fully refunded orders are those that were completely canceled. It’s best to completely remove these orders from our order value — in other words, to pretend like they never happened.

(This is a problem with using Shopify’s built-in analytics dashboard for average order value. It subtracts the fully refunded revenue from the numerator but doesn’t remove the order from the denominator).

To do so, you can filter orders like so:


One exception to excluding full returns might be if you sell products that are very costly to return. For instance, mattresses cannot be resold to new customers after they’re returned (the returned mattress has to be burned). So, a store like Purple that provides free refunds for its mattresses might want to include the cost of the returned mattress in its order value.

But most stores can safely resell returned items to new customers. As such, it’s best to consider return costs separately from your order value considerations.

Partial Refunds

Unlike full refunds, partial refunds should be included in order values.

Suppose you sell coffee makers, and one of them has a slight defect. As compensation, you offer the customer a 50% refund. In that case, the order shouldn’t be ignored but its total revenue should be halved.

Shopify’s order total number doesn’t account for this by default, so we need to subtract the partially refunded amount from the total to get an accurate order value.

You can download your orders to a spreadsheet (excluding the fully refunded orders, as shown above) and use the column Refunded Amount for partially refunded orders.


After accounting for refunds, our order value measurement looks like this for each order:

exclude fully refunded orders => order value = total - refunded amount


Upsells —selling additional items to customers after they complete a purchase — are a common way to increase order values. There are many Shopify apps built to do exactly that.

However, these apps don’t add the upsold item to the original order. Instead, they create a new order just for the upsell. If we don’t account for the additional order, upsells can decrease our average order value.

To remedy this, you’ll have to add the value of the upsell order to the original order and exclude the upsell order from your calculations, like this:

exclude upsell orders => order value = original total + upsell total

Use Cases

Once we’ve accurately measured the value of each order, we can use these measurements to calculate and display any order value metrics or charts that help us monitor and increase the amount customers spend per conversion.

Here are some examples:

1. Distribution of Order Value

Look at the distribution of order values to see which customers are spending more money, then increase your ad spend for those customers. OR, look at the other end of the distribution for your lowest margin orders and find ways to eliminate them.


2. Order Values Over Time

Shopify tags all orders with a created date. Use this date to see how your order values change over time. Zoom in and view daily results to compare Black Friday to Cyber Monday. OR, zoom out and view quarterly results to see the effect of seasonality on your sales.


3. Filtering‍

Filter your orders by returning customers to see how your remarketing campaigns perform.


4. Correlation‍

Run statistical correlations to determine the efficacy of your discounts.


5. Comparisons‍

Are customers with higher-order values buying more expensive products or buying higher quantities? Use a scatter plot to find out.



Many companies compare average order value to the cost of acquisition to get a leading indicator of a store’s profitability. For most stores, that may be useful. However, if your store offers subscriptions, we recommend you use average purchase value instead of average order value for that purpose.


Finding each order’s value individually and using it to calculate our metrics gives us a powerful tool for analysis that we can use to increase the amount customers spend per conversion. Doing so is often a more effective way to increase our store’s profitability than prospecting for new customers with different ad strategies or trying to increase the number of conversions with funnel optimizations.