Cart Conditions decide whether a shopper qualifies for a coupon before it is granted. This article lists every condition and what each one checks, so you can pick the right one for your promotion.
Note that some are available in the Free Version of Advanced Coupons (which you can download from WordPress.org) and some are only available in the Premium Version.
For a direct feature comparison between the two versions please see our pricing and features page for Advanced Coupons Premium.
What happens if they don’t meet the criteria for the coupon?
If the customer isn’t eligible, the system will not allow the coupon to apply.
Likewise, if the customer becomes ineligible (by breaking one of the coupon rules) it will remove the coupon.
You can safely use Cart Conditions as a way to ensure your WooCommerce coupons are not abused and that they’re only granted based under the conditions and rules that you set.
You can customize the message shown to shoppers when a coupon does not qualify from the coupon editor’s Non-Qualifying Settings tab.
Chaining cart conditions/coupon rules together
Cart Conditions are very powerful because you can chain them together to create complex tests.
For example, you could target a customer’s user role, ensure they have a specific product in the cart, and that they’re achieving a minimum subtotal all in one condition group.
You can also create groups of rules so you can test multiple scenarios at the same time (we call these Condition Groups).
As long as the conditions are all true at the end, it will grant access to the coupon. If the customer doesn’t satisfy each and every rule then it will not allow the coupon to apply.
Cart condition: Product Categories Exists In Cart
The Product Categories Exists In Cart condition lets you check if a product has been added from that category to the cart.
If a product from one of the specified categories has been added, it will pass the check.
Cart condition: Customer Logged In Status
Do you want to check if the customer is logged in or out before applying the coupon? You can check that with the Customer Logged In Status cart condition.
If it doesn’t match the condition, then they won’t be allowed to apply the coupon. Great for applying coupons only for guest users or vice versa.
Cart condition: Allowed Customer User Role
If you want to check specifically for customer user roles before applying a coupon then you can use the Allowed Customer User Role cart condition.
This will check that the customer has the required role in the allowed list before applying the coupon.
Cart condition: Disallowed Customer User Role
The Disallowed Customer User Role cart condition is very similar to the allowed version, only you are doing the reverse.
If they have one of the roles in the disallowed list they will not be able to apply the coupon.
Cart condition: Cart Quantity

Cart Quantity cart condition checks that the customer has a certain number of total items in the cart. If they do, it lets them apply the coupon.
This can be useful if you have a coupon to apply after a certain number of items purchased.
Cart condition: Cart Subtotal
A popular condition to check before applying a coupon is the Cart Subtotal. This lets you determine if the customer has reached a subtotal before allowing the coupon to apply.
Subtotal limits are a very popular restriction for coupons.
Cart condition: Cart Total
[📷 SCREENSHOT: navigate to a coupon’s Cart Conditions tab, add a new condition, and show the Cart Total condition selected with a comparison operator and amount set, plus the Include Tax? checkbox | ALT: Cart Total cart condition on a coupon edit screen with a comparison operator, amount, and Include Tax? checkbox | CAPTION: Coupon edit screen → Cart Conditions: Cart Total condition]
Cart Total checks the amount the customer would actually pay, after any price modifications. That is what separates it from Cart Subtotal, which looks at the value of the items before discounts are taken off.
The difference matters when another discount is already in play. On a cart holding 120 of goods with a 30 discount already applied, Cart Subtotal reads 120 and Cart Total reads 90. A “spend 100 to qualify” rule built on Cart Subtotal would let that coupon through, while the same rule on Cart Total would not.
Reach for Cart Total when the rule is about what the customer pays, and for Cart Subtotal when it is about how much they put in the basket.
The condition also has an Include Tax? option. It follows your store by default: if tax is enabled and your cart shows prices with tax included, the comparison includes tax too. Set it yourself if you want the rule measured the other way.
Cart condition: Category Subtotal

Cart Subtotal looks at the whole cart. If you only want to count part of it, use the Category Subtotal condition instead. It adds up the cart items that belong to the product categories you choose and checks that figure against your threshold, so you can run offers like “spend $100 or more on Coffee” without the customer’s other items pushing them over the line.
You’ll find it under the Cart Items group when you add a new condition. Pick your categories in the Categories field, then set Mode to Include to count only the items in those categories, or Exclude to count everything else in the cart instead. The condition dropdown and the Subtotal field work the same way as Cart Subtotal, and child categories of anything you select are counted too.
Two things to keep in mind. The figure it measures is the line subtotal before any coupon discounts are taken off, and items that Advanced Coupons adds to the cart itself through BOGO Deals or Add Products are not counted. The Include Tax? checkbox follows whatever your store uses to display cart prices until you tick or untick it yourself.
Cart condition: Product Quantities Exists In Cart
If you want to check that a customer has a specific product in a specific quantity in the shopping cart then the Product Quantities Exists In Cart cart condition will help you with that.
It will check for the product (or products) and measure their quantity to see if the customer is eligible to use that coupon based on that.
Cart condition: Custom Taxonomy Exists In Cart
Custom Taxonomy Exists In Cart is very similar to the Product Categories Exists In Cart condition but this is made for non-standard taxonomies.
You might have a custom taxonomy on Products for “Brands” for example and this would let you check on those before applying a coupon.
Cart condition: Within Hours After Customer Registered
It can be useful to check when a customer was registered on your store before applying a coupon which you can do with the Within Hours After Customer Registered cart condition.
You can use this in a number of ways, particularly if you let your customers register for an account prior to purchase.
Cart condition: Within Hours After Customer Last Order
Do you give customers a coupon for use within a certain time period to encourage a follow-up order?
Then using the Within Hours After Customer Last Order cart condition can help you restrict your coupons to ensure compliance with that rule.
Cart condition: Custom User Meta
Custom User Meta is great for integrating with non-standard systems that add extra user metadata to your customer records.
You’ll now be able to restrict coupons based on that extra custom user metadata.
Cart condition: Cart Weight
Cart Weight cart condition checks the total cart weight, in the weight unit your store uses (WooCommerce → Settings → Products). If the cart reaches that weight, it lets the customer apply the coupon.
This can be useful if you have a coupon to apply after a certain weight of items purchased.
Cart condition: Custom Cart Item Meta
There are a lot of plugins that add extra data to your cart items in order to manage things like product add-ons, extra services, subscriptions, and more.
The Custom Cart Item Meta cart condition is a tool you can use in specific situations where that custom cart item meta has been added and you need to target a coupon for that.
Cart condition: Total Customer Spend
Checking a customer’s total spend with your store can be very useful for rewarding customers after a certain amount.
The Total Customer Spend cart condition will let you create a coupon that is only active if they’ve spent a certain historical amount. This can also be used in reverse (to check they haven’t spent over an amount) and paired together to create a range.
Cart condition: Total Customer Spend on a Certain Product Category

The Total Customer Spend on a Certain Product Category cart condition is very similar to the feature mentioned above. The difference is, this cart condition targets a specific category. This gives you a more targeted marketing strategy.
Cart condition: Customer Has Ordered Products Before
Do you want to check if a customer has ordered something before letting them apply a coupon? This is what the Customer Has Ordered Products Before cart condition is useful for.
It lets you check a date range of orders or a number of previous orders for a product in a certain quantity.
Cart condition: Shipping Zone And Region
Restricting coupons based on the shipping zone is great when you need to apply coupons geographically.
You can use the Shipping Zone And Region cart conditions to ensure that they meet that criteria before applying the coupon.
Cart condition: Number of Customer Orders
Monitoring a customer’s order history with your store is an effective way to identify loyal customers who can be rewarded for their purchases.
Using our Number of Customer Orders Cart Condition, you can easily set up a coupon that will only activate after a customer has reached a specific number of orders. This feature can also be configured to check if a customer has not placed any orders, allowing you to create a coupon to encourage them to make their first purchase.
Moreover, you can pair the Number of Customer Orders cart condition with its reverse counterpart to create a range of order thresholds for offering rewards. With this level of flexibility, you can incentivize customer loyalty and drive repeat orders.
Cart condition: Product Stock Availability Exists In Cart
Restricting coupons based on stock availability of the item in the cart. The condition lets you check for:
- In Stock
- Out of Stock
- On Backorder
- Exactly
- Anything Except
- More Than
- Less Than
The Product Stock Availability Exists In Cart condition lets you build advanced coupon mechanics like shipping discounts for products on backorder.
Cart condition: Customer Has Ordered Product Categories Before
Restricting coupons based on the customer’s order history on a specific product category
You can use the Customer Has Ordered Product Categories Before condition to run coupons based on the number of orders placed by the customer within a specific period (days) or cart quantity.
Cart condition: Coupons Applied In Cart
By default, you can combine multiple coupons in one order. If you want to restrict a coupon so it can only be applied when other coupons have already been added, use the Coupons Applied In Cart condition.
Set the condition to AT LEAST or ALL depending on whether one matching coupon is enough, or every coupon you list must be present.
Use the Match type field to choose how the condition matches coupon codes. Leave it set to EXACT to pick specific coupons from the Coupon(s) field, or switch it to STARTS WITH, ENDS WITH, or CONTAINS to match by a text pattern instead.
Choosing a pattern-based match type replaces the Coupon(s) field with a Pattern(s) field, where you enter one or more comma-separated fragments, for example, black-friday or summer.

Pattern matching checks the codes of coupons already applied in the cart and is case-insensitive, so SUMMER and summer match the same coupons. Patterns are matched as literal text, so an asterisk or other wildcard character is treated as an ordinary character rather than as a wildcard.
With AT LEAST, the Quantity field counts the number of distinct applied coupon codes that match your patterns. With ALL, every pattern you enter must match at least one applied coupon before the condition passes. A coupon is never matched against its own code, so a coupon using a pattern condition cannot satisfy itself simply by being applied.
Pro tip: chain cart conditions together to create complex coupon rulesets
You can combine any of the rules above together and you can even add multiple groups of conditions (what we call Condition Groups).
This makes Advanced Coupons Premium the most powerful coupon rules engine for WooCommerce on the market.
Need help?
We have a dedicated support team for Advanced Coupons who knows our products, WooCommerce, and the industry very well. You’re welcome to make use of their expertise at any time, worldwide.
If you are an existing customer please go to the support ticket request form and send us a message.
If you are a free plugin user, please send us a support request on the forum. We actively monitor the WordPress.org support forums for the free plugin and help our users there as best as we can.




















