How to search & filter your WooCommerce customers by order history

Have you ever wanted to be able to search and filter your WooCommerce customers by their order history? Do you want to find all the customers who have purchased one product but not another? In the following tutorial, I’m going to show you how to use Users Insights to search, filter and analyze your customers by using the WooCommerce customer order history data.

Your customers are not all the same, they differ in so many ways. Some are heavy shoppers, others are single time buyers. One customer might do all the shopping only during the holiday seasons, others might be all year around regulars. Some love only a specific product from your store and others might like to try new and different products. Your customers have different desires, needs and buying patterns and targeting them with the same message and products might not be the most effective solution.

Knowing your WooCommerce customer order history can give you a lot of insight on what kind of buyers they are.

You can use this information to create different marketing strategies that are curated for a specific type of customers. For example, you can create a campaign that awards your most loyal customers, by offering them discounts and rewards. Or perhaps an email campaign that is targeted towards all the customers who have purchased a particular product, offering them a related product, or the newest version of the same product.

 

Getting Started

Before we start, since we will use the WooCommerce module of Users Insights for this tutorial, you will have to make sure that this module is active. You can manage the active modules on your site from the Modules Options section of Users Insights. The WooCommerce module for Users Insights adds a few filters and features to the plugin that provide you with the tools to be able to segment your WooCommerce customers by their order history.

Please note that since the Users Insights plugin works with registered WordPress users, the following tutorial will only work for your WooCommerce customers who are registered as WordPress users on your website.

 

Filtering your customers by the number of orders

One of the columns that the WooCommerce module makes available in the Users Insights table is the “Orders” column. This field shows you the number of orders every customer has made in your store. By clicking on the title of the field in the Users Insights table we can order our customers list by the number of orders that they have made, in a descending order.

woocommerce customer order by order history

Clicking a second time will sort the customer list by the numbers of orders in an ascending order. This feature allows you very easily to find your customers with the highest or lowest number of orders.

The Number of orders data is also available in the smart filters section. This allows you to filter your customers by using the number of orders data. For example, if you want to see a list of all the customers who have made two orders from your WooCommerce store, all you need to do is add a filter “Number of orders is 2”:

woocommerce customer order history

 

You can also use the operators “is bigger than” or “is smaller than” to show only the customers who have more or fewer orders than a specific number. For example, here is a list of all the customers who have made more than 5 orders:

woocommerce customer order is bigger

 

The Users Insights plugin allows you to add multiple filters at once, which means that you can further filter the already filtered list of customers. For example, we can add one filter that lists the customers that have at least one order and another one that lists the customers that have less than three orders, so we can find the customers that have between 1 and 2 orders.

woocommerce customer order is smaller

Filtering customers by order status

The WooCommerce module also adds an option to filter your customers by their order status. In this way if you want to see all the customers who have been refunded you can just add a filter “Order status includes refunded”:

woocommerce customer order history

 

The available options for the order status include/exclude filter are:

  • Pending Payment
  • Processing
  • On Hold
  • Completed
  • Cancelled
  • Refunded
  • Failed

 

Filtering customers by the products that they have ordered

Another useful feature that the WooCommerce module adds to the smart filters is the “Ordered Product” filter. This filter allows you to filter your WooCommerce customers by the product they have (or have not) ordered. In the following article, you can learn more about how to filter WooCommerce customers by the product they have ordered.

Filter customers by order details (Placed an order filter)

When it comes to filtering WooCommerce customers by order history, there are many elements at play. That’s why when we use the “placed an order” filter, we get a whole new understanding of our customers. This is possible because this filter combines many aspects of your customers’ orders when filtering them.

There are 4 different options that can be used and used in single or multiple filters. They are:

  • Order date – select a date range, thus filtering customers who purchased only in that period
  • Status – gather different WooCommerce order status
  • Order total – filter users by the ticket size, which allows a range of values
  • Product – return only users who have ordered specific products

These filters can be mixed with other filters for detailed WooCommerce customer order history lists. They can be used by themselves as well, and gather interesting insights regarding customer history.

For instance, you may have run a campaign or are checking for seasonal sales performance. In this case, the date filter can be a valuable option to filter only users affected by your campaign.

How to filter customers by order date range

Then there are the different order status. This filter is a straightforward method to quickly check issues in your orders. It’s possible to filter users with refunds, pending or canceled orders. Once you identify these users, you can further investigate what is causing these issues.

WooCommerce customer order history by order status

In addition, the status filter can be used as a health check for your site. You can filter users who have non-completed orders in the last few days and check back with them. That’s a good approach to stay on top of everything and be proactive in your customer interactions.

WooCommerce customer history by order status and date ranges

Additionally, order price ranges are a quick way to filter customer history by price. This is a great addition to the lifetime value field. Thus, it’s possible to filter customers by each of their individual purchases’ totals as well as by their lifetime value.

A quick example of this would be on high ticket customer analysis. If you know that your average ticket size is $120, then you can filter all customers who have higher amounts. This gives you a list of WooCommerce customer order history for higher than average purchase customers.

Filter WooCommerce customer by order price and ticket size

Last but not least, there’s the product filter. These filters give you a WooCommerce customer order history by products ordered. Thus, if you want to know everyone who purchased a specific product, you can simply search for it:
Filter customers by products bought

As usual, you can combine this filter with others to get better searches. For instance, if you want to list users who bought NinjaProduct last month from the US, you can do that.
List customers based on products bought and date range

 

Using the WooCommerce customer order history with other filters

As we already mentioned, the Users Insights filters are stackable. This means that not only you can use multiple filters to segment your WooCommerce customers by their order history, but you can also combine the order filters with the rest of the available filters of Users Insights. Here is an example of a list of all the customers who have ordered a particular product and are from United States:

woocommerce customer order

Using lifetime value to search WooCommerce order history

Another filter that can be found handy when searching the order history is the Lifetime Value filter. The Lifetime Value field shows you how much in total each customer has spent in your store. With this field you can even further customise your order history search, so you can easily find your most valuable customers.

Let’s see an example. Let’s say that you need to find all the customers who have purchased a certain product and have spent more than $100 in your store. This can be easily accomplished by combining the Ordered Products filter with the Lifetime Value filter:

WooCommerce search order history by lifetime value

Showing the WooCommerce customer history on the profile page

The Users Insights custom profile page is the place that includes all of the available information for each WordPress user/customer. The user profile section has a dedicated section from WooCommerce in the activity section. This is where you can find some additional info about your customer order history like a list with the several most recent orders and info about the order status. Each of the orders has a link to the corresponding WooCommerce order page where you can view and edit all the order details. The list also includes a link to the WooCommerce Orders List page that shows only the list of orders for this user. You can access the customer profile page by clicking on the customer username from the Users Insights user table.

woocommerce groups profile page

Creating custom segments based on your customer purchase history

So, using this information you can create your own WooCommerce customer lists by using the segments. You may filter your users based on their activity, loyalty, lifetime value. In order to do that you can use the segments feature of Users Insights.

First, you need to create the filtering aspects that you are going to use for your customers. For instance, we’ll filter through our WooCommerce customers’ order history, and find out the repeat buyers who were active in the last month. We can do that with these filters:

Repeat buyers and active users

Now let’s save this list as a segment:

Adding a segment for the repeat buyers

In this way we can quickly gather WooCommerce customer list when you click again in that segment in particular.

As we mentioned earlier you can filter and order your customer based on different aspects. For example, you can order your users based on their lifetime value, you can filter them based on the number of orders. All of this can be seen in this video:

 

That’s it! Now you know how you can use your WooCommerce customer history to search and filter your WooCommerce customers. You can now segment your customers by using their purchase data and create your own custom marketing campaigns. We hope that you will find this article useful and that it is going to help you better manage and organize your WooCommerce customers.