WooCommerce Upsell vs. Cross-Sell:
What’s the Difference?
They both increase revenue. They both feel helpful when done right. But they work completely differently — and confusing one for the other costs you real money.
Updated 2026
WooCommerce Store Owners

Every seasoned WooCommerce store owner has heard both terms dozens of times. Upsell. Cross-sell. They get used in the same breath, dropped into the same conversations, and — more often than most people realise — used to describe the wrong thing entirely.
That might sound like a small semantic problem. It is not. If you set up your WooCommerce recommendations without understanding which is which, you will show the wrong product at the wrong moment — and both your revenue and your customer experience will reflect that mistake.
This guide draws a clear line between the two. Not just in definition, but in placement, psychology, real-world examples, and the practical WooCommerce mechanics that bring each one to life.
What is a WooCommerce upsell?
An upsell is a recommendation for a higher-value alternative to the product the customer is currently viewing. The key word is alternative. You are not suggesting something extra — you are suggesting something better. A bigger size. A premium tier. A more capable model. A version with more features, better materials, or longer coverage.
The customer does not have to add both. An upsell is a fork in the road, not an extra lane. You are saying: “Before you commit to this one, have you considered this?” That distinction — replacement rather than addition — is what separates an upsell from everything else.
On the single product page, below the main product description, under the heading “You may also like…” The customer sees the upsell while they are still evaluating the original product — exactly the right moment to offer an upgrade.
In WooCommerce’s admin, upsells are configured in the Linked Products tab inside the Product Data panel. You search for and select the products you want to appear as upgrade suggestions. Save, and they render automatically on the product page.
This native functionality is intentionally simple. It does not support cart-based triggers, targeting conditions, or checkout placement. For those capabilities — showing the upsell only to customers who added a specific product, or displaying it at checkout rather than on the product page — you need a dedicated plugin.
Upsell examples across different store types
What is a WooCommerce cross-sell?
A cross-sell is a suggestion for a different product that complements what the customer is already planning to buy. Unlike an upsell, it does not replace the original item — it adds to it. The customer keeps the main product in their cart and, if the suggestion is right, adds a second item alongside it.
Think of the fast food analogy that gets used constantly in marketing writing, because it happens to be perfect: “Would you like fries with that?” The burger is not being replaced. The fries are a cross-sell — a separate, complementary item that the customer probably wanted anyway and simply forgot to order.
On the cart page, beneath the cart table, usually titled “You may be interested in…” The customer has already made their choice and is reviewing their order. At this point, a small relevant addition is not a distraction — it is a last-minute reminder of something they genuinely might want.
Cross-sells are configured the same way as upsells in WooCommerce: in the Linked Products tab on the product edit screen. The field is labelled “Cross-sells.” Assign the complementary products there, and WooCommerce will render them automatically on the cart page whenever that product is in the cart.
Again, this native functionality is limited to the cart page and has no targeting, no discount logic, and no analytics. For cross-sells at checkout, on product pages as a “frequently bought together” section, or in a post-purchase modal, a plugin is required.
Cross-sell examples across different store types
Side-by-side: the key differences
| Dimension | Upsell | Cross-sell |
|---|---|---|
| Core intent | Buy better — replace the original item with a higher-value alternative | Buy more — add a complementary item to the original purchase |
| Product relationship | Same product category — different tier, size, or specification | Different product category — pairs with or enables the main item |
| Default placement in WooCommerce | Product page (“You may also like…”) | Cart page (“You may be interested in…”) |
| Typical price vs. main item | Higher — the point is a more valuable version | Often lower — an accessory or add-on, not a replacement |
| Customer action | Swap the original product for the suggested one | Keep the original and add the suggestion on top |
| Ideal timing | Before the purchase decision is fully made | After the decision — during cart review or checkout |
Why timing and placement change everything
The placement logic in WooCommerce’s defaults is not arbitrary. It reflects something real about customer psychology: the moment you are at in the buying journey determines what kind of suggestion feels helpful versus intrusive.
When a customer is on a product page, they are still evaluating. They have not committed to anything. Showing them a better version of the product they are looking at — an upsell — is useful here, because the decision is still open. Showing them a camera case at this stage does not make sense, because they have not confirmed they are buying a camera yet.
By the time they reach the cart, the primary decision is made. The camera is going into the bag. Now is exactly the right time to mention the case and the cleaning cloth — they have mentally committed to the purchase and are in a “yes” mindset. A cross-sell here does not interrupt anything; it slots into the natural momentum of the transaction.
The third type most store owners miss: the order bump
There is a third offer type that sits between upsell and cross-sell, and it is the highest-converting of the three: the order bump. It deserves its own category because its timing and mechanics are fundamentally different from both.
An order bump appears directly on the checkout page — not the product page, not the cart — as a small highlighted offer with a checkbox. The customer is about to pay. Their card details are already in. The purchase decision has already been made. Adding a relevant item here requires a single tick, not a separate transaction.
The order bump converts at 15–30% in most stores because three conditions align simultaneously: the customer’s intent is at its peak, the effort to add the item is minimal (one checkbox), and the item is relevant enough to feel like a reminder rather than a pitch. These conditions never coincide on a product page or cart page. That is what makes the checkout moment uniquely powerful.
WooCommerce does not include order bump functionality natively. A plugin is required. Smart Funnel is built specifically for this use case — checkout bumps, related products, and post-purchase upsells from a single clean admin, without replacing the WooCommerce checkout.
How WooCommerce handles upsells and cross-sells natively
Understanding what WooCommerce can and cannot do out of the box is essential before you decide whether you need a plugin. The good news is that native upsell and cross-sell support exists in every WooCommerce installation. The limitation is that it is manual and inflexible.
Should you use upsells, cross-sells, or both?
The honest answer is: most stores benefit from both, applied at the right moment. But if you are starting from zero and need to pick one to implement first, the decision depends on your catalogue and your conversion priority.
Common questions
Can the same product be both an upsell and a cross-sell?
How many upsells or cross-sells should I show?
Do upsells and cross-sells work on mobile?
What is a downsell and where does it fit?
Do upsells and cross-sells hurt the customer experience?
The takeaway in two sentences
An upsell says “here is a better version of what you are looking at.” A cross-sell says “here is something else you will probably want alongside what you are buying.” Get the timing right — upsells before commitment, cross-sells and order bumps after — and both feel like genuine service rather than a sales pitch.
WooCommerce gives you the basic wiring for both natively. For checkout bumps, post-purchase upsells, targeting conditions, and the analytics to know what is working, a dedicated plugin takes you the rest of the way. Smart Funnel covers all three checkout-stage offer types from a single, lightweight admin — without rebuilding your store around a funnel framework.
Add order bumps, upsells, and cross-sells to WooCommerce
Smart Funnel adds all three offer types — checkout bump, post-purchase upsell, and related product grid — from one admin panel. No checkout replacement. No builder required. Starting at $39/year.


This setup guide is way too overwhelming for something that should be quick. I spent 10 minutes just trying to figure out where to even begin, which doesn't help when you're in a hurry.
Bought this as a gift for a friend starting her online store, but it's way too basic. The guide says it "draws a clear line" between upsells and cross sells, but honestly?
This guide finally made the upsell vs cross sell difference click for me. i've been running my store for years but always treated them like they were the same thing just "more sales tactics
I get the difference between upsells and cross sells but how do you actually set them up in WooCommerce without messing up the customer flow? The guide mentions placement and psychology but where exactly do you configure this?