Skip to main content
Question

Promoting an upgrade if not puchased initially

  • January 27, 2026
  • 1 reply
  • 7 views

Forum|alt.badge.img

We sell products that have upgrades associated with them. So Product A may have Upgrade A-1, for instance. When a customer buys Product A but does not buy Upgrade A-1, I’d like to send them an email after about a month to advertise the upgrade.

An ideal workflow would look something like:

  1. Customer buys Product A but not Upgrade A-1.

  2. In 30 days, Klaviyo assesses whether the customer has purchased Upgrade A-1 in the meantime.

  3. If the customer has not bought Upgrade A-1, Klaviyo sends them an email.

Is this possible in Klaviyo? 

1 reply

Byrne C
Community Manager
Forum|alt.badge.img+28
  • Community Manager
  • January 28, 2026

Hey ​@oguinn,

Yes, this is possible! Created a quick example in my test account showing how this would look, upon setup:

The above screenshot shows the basic setup for this. To accomplish this for a single item, you would:

  1. Create a flow with Placed Order as the trigger.
  2. Add a trigger filter. It should be “ItemNames contains Product A AND ItemNames doesn’t contain Product A-1”. This will make sure that the flow is only triggered when somebody buys Product A, but not A-1.
  3. Add an email underneath, and create that email, if you’re interested in sending them a thank-you email when they make a purchase. If not, then you can skip this step.
  4. Add a time delay under that. Set it to 30 days, or however long you want to wait before you send a follow-up.
  5. Add a conditional split under that time delay. Set the definition to “Has Placed Order at least once since starting this flow where ItemNames contains Product A-1”. 
  6. If somebody has bought Product A-1, they’ll go down the YES path, and leave the flow. If somebody has not bought that product since starting the flow, they’ll go down the NO path.
  7. Add an email under your NO path that tells people about this product.
  8. Make any other changes you’d like to the flow, and set it live.

Where this gets tricky is if you’d like to do this with multiple products. In that case, this is still possible, but it would either involve a more complex flow with lots of filters/splits, or multiple flows, one for each product. Either way, your goal is definitely doable. Feel free to reach back out with any questions.