How to Upsell Customers Based on What Is In Their Shopping Cart with WooCommerce

- written by

Upsells can be done so many different ways with WooCommerce. But what about an upsell to the customer after they have made the decision to purchase, and have it based on what was in the cart? And before you read on, this does involved a popup. So depending on how your clients view popups, this may be a deal breaker.

WooCommerce Conditional Upsell

This goes beyond even the product that sits in their cart. There are several different conditions you can use.

The General Settings

You can toggle the upsell popup and create a global upsell. You can also set the upsell flow to either submitting the order after adding the upsell or adding it and returning them to the checkout. Lastly, you can set the global title, message, bottom text here but it can be overwritten for the various upsells you will create. You can also add the success and error text.

upsell popup settings

You can view your upsells and your first upsell here.


Creating an Upsell

Here is where we create the upsell. Firs,t we select the product that we want to upsell. In this case, I am going to upsell with a boom arm to supplement a couple of microphones I sell on the shop.

If have numerous upsells for the same products, you can prioritize them.

select product to upsell

Next, we add the conditions that must be true so that the upsell will show appropriately. This can be grouped so that every condition must be met. And each upsell can have numerous groups of conditions.


As you can see, there are several conditions that you can set and/or group. This can be based on user role. Or day or day of week. Also there are several conditions around products from the single product in the cart to product categories, tags and volume. It can also be based on payment gateway, shipping method or geographical location.

all conditions for upsells

This first one is based solely on a single product that is in the cart.

single item in cart as a condition

Here we have the same item, but now it is only offered in the US and if the person is a registered customer.

multiple conditions must be met

Once you have set all of your conditions, you will add the info for the popup that will show.

A title, message and any bottom text can be added for the popup.

upsell popup

Now let’s take a look at how this will work. At checkout, once everything is filled in and they meet the conditions, when payment is submitted, the popup will appear.

final popup

Now I could have chosen to have this automatically process the order, but instead I have set it to take them back to checkout. Here you see that it has been added.

added to final order

It’s that easy. I must admit. I am not a huge fan of popups, but I do like the placement and timing of this one. It certainly draws the attention to a potential upsell vs it just sitting at the bottom of the product or cart page.

With the various conditions, there are so many ways you can use this. And the fact that you can choose the exact upsell to better fit the product is invaluable. If you want to learn more, check out the WooCommerce Conditional Upsell plugin here.

Only the posts on the builder blog here may include affiliate links. If you click on them and make a purchase, I'll get a commission, at no cost to you.