Creating an Upsell or Cross-Sell Flow

Last updated at:


After a customer purchases a product, you may want to follow up with them to try to cross-sell or upsell similar or related products. Klaviyo has a built-in product review/cross-sell flow as well as new and repeat customer thank you flows that you can repurpose as upsell or cross-sell flows.

You can also create your own upsell or cross-sell flows from scratch. This guide will walk you through what you should keep in mind when customizing Klaviyo's built-in flows or creating your own.

Flow Trigger


Your flow trigger should be either Placed Order or Fulfilled Order. The Placed Order event tracks when someone places an order for an item, while the Fulfilled Order event tracks when an item is shipped. Klaviyo's built-in product review / cross-sell flow uses the Fulfilled Order event as the trigger because this is closer to when a customer actually receives a product. However, depending on your preferences, you can use either. 

Your trigger should include the trigger filter to Only include people if they have Fulfilled Order zero times since starting this flow. This ensures that if another item they purchased ships while they are in the flow, they don't receive the emails.


For an upsell flow, you may want to use a different trigger altogether. If, for example, a customer views a pair of shoes, but you'd like to sell them a different, more expensive pair of shoes, you'll want to use the Viewed Product event to trigger your flow. The full list of available event triggers depends on your particular integration and can be viewed in the Analytics tab of your account by clicking into Metrics.

Flow Filters

You may also want to filter your cross-sell and upsell flows by category or collection. This will make it easier to provide relevant recommendations in the content of your emails since you'll have a better idea of what a customer was looking at when they triggered the flow.



When creating an upsell or cross-sell flow, you should first decide whether you want your flow to be pre- or post-purchase.

If you'd like to cross-sell a customer, you probably want to send your flow post-purchase — you might even want to wait until your customer has received their order. This is why the default product review / cross-sell flow is set to go out 14 days after an order is fulfilled.

If you'd like to upsell a customer, you may want to send your flow pre-purchase instead. Choosing the appropriate flow trigger is important since it's important that you email customers at the right time during the buying cycle. You might even want to upsell products directly within a browse abandonment or abandoned cart flow by including a product feed of similar products.


Product feeds are a great way to upsell or cross-sell products within an email. Since you can constrain product feeds to a specific category or collection, you can provide more relevant recommendations based on what product a customer was interacting with (purchased, viewed, etc.) when they triggered the flow.


Additional Resources

Learn more about creating post-purchase flows in this guide.

Get details on building a product review flow.

Want to dive deeper into creating tailored content? Take this course on personalizing your emails

Was this article helpful?
125 out of 163 found this helpful