We just upgraded to Plus and we’re looking for an upsell app that will allow us to use some somewhat complex rules. Most notably, from the apps I’ve tried so far is a “NOT”.
Meaning, if a customer orders a table alone, we want to offer them some chairs. If they order a table and normal chairs, we’d like to suggest two of the end-chairs (with arms). If they have some of each we’ll go a different direction.
I’ve gone through three apps so far and none of them had the “NOT” logic I’m looking for in the upsell conditions – but we just upgraded so I’m looking for suggestions.
On Plus the right primitive for this is Cart Transform Function or Cart Validation Function written as a Shopify Function (Rust or JS) rather than a stock upsell app. You get full cart state inspection so the NOT logic, cross-variant detection, and multi-branch suggestion fall out naturally. Most apps in this space (ReConvert, Selleasy, etc.) use tag/SKU AND-OR rules which is why NOT logic feels missing. If you don’t want to ship custom code, Bundler.ai and Rebuy have rule builders that get closer but still struggle with the “has X but NOT Y” case. Curious what your cart sizes look like and whether the upsell is in-cart or post-purchase, since the right primitive changes between the two.
Hello @RSL_IT You’ll probably want something that supports conditional logic rather than basic product pairing rules. A lot of upsell apps handle simple “if product A then show B” setups, but the “NOT” condition is where most of them start struggling.
For the type of logic you’re describing, I’d look more into apps that support rule trees, cart conditions, or Shopify Functions compatibility on Plus. Some merchants also end up combining upsell logic with Flow because it gives more control over exclusions and mixed cart scenarios.
Your table/chair example is actually a good use case because the recommendations need to change dynamically depending on what’s already in the cart, not just what was added first.
1.1 If a customer orders a table alone, we want to offer them some chairs
When customers add a table to their cart, chairs will appear as upsell suggestions in the gift slider or directly in the cart. They can then choose whether to add them or skip the offer.
The NOT-condition gap is a real pain point and most upsell apps expose AND/OR matching but don’t let you say ‘offer X only when Y is absent from cart.’
A few things worth checking in any app you evaluate: (1) whether targeting rules support ‘product NOT in cart’ as a distinct condition, or whether you can approximate it by combining ‘cart contains table’ AND ‘cart does NOT contain chairs’ as separate rule fields. Some apps bury this under ‘exclusion’ or ‘suppress if’ logic rather than labeling it NOT.
Checkout Boost does rules-based upsell targeting at checkout; cart contents, cart total, customer tag and I’d want to verify whether their rule builder exposes explicit NOT/exclusion conditions before saying it fully covers your case. Worth take a look.
What does your most complex rule look like end-to-end? That would help narrow down whether any app can handle it natively or if you’d need workarounds.
So far, I went through:
Afersell
Essential Upsell
Checkout Plus
Came across ReBuy and am using the trial to put it through it’s paces. They do have an exclusion modifier that looks like it can get us where we need to go–but time will tell.
This sounds less like a traditional upsell problem and more like a conditional product recommendation / guided selling flow.
A lot of upsell apps support simple “if product A exists” logic, but more complex scenarios like:
table without chairs
table with standard chairs but without end chairs
mixed chair combinations
usually require a more structured rules engine.
We’ve been exploring similar logic through guided bundle / guided selection flows where recommendations and available options can change dynamically based on previous selections.
Your furniture example actually feels like a very strong use case for this kind of guided commerce experience.