Skip to main content

I have an abandoned cart flow set up where they will receive a series of three emails if their cart is less than $3,000. When looking at the analytics for the past 30 days, it shows the initial email as 21 delivered and 15 skipped but the conditional split immediately afterwards shows 3 people in the ‘Yes’ category (have completed purchase) and 63 in the ‘No’ category (have not completed purchase).

Shouldn’t the ‘No’ category be 21, same as the 21 delivered for the initial email? Do I need to change any of my profile filters?

Here are the profile filters I have in place for the flow: 

The filters I have in place for the conditional split are the same.

Thank you!

Hi ​@rdraves - thank for your question, here is what is happening:

The email delivery count and the conditional split results often don’t match because:

  1. Timing matters: Klaviyo evaluates a contact at the exact moment they hit the conditional split, not when they receive the first email.
  2. People drop out of flows: Contacts can exit a flow before reaching the split (i.e. if they unsubscribe, get suppressed, or fail a filter update).

  3. Real-time behavior changes: Between receiving the first email and hitting the split, a customer might complete a purchase, start checkout, or no longer meet the filters, so they shift categories.

Example from your screenshot:

  • 21 emails delivered

  • But conditional split shows only 18 total (3 yes + 15 no)

That means 3 people likely exited the flow or skipped the split step due to:

  • Flow filters being re-evaluated mid-flow

  • Email address becoming suppressed, bounced, or unsubscribed

  • Customer behavior changing (i.e. they start checkout or purchase after receiving the first email)

Here is what I’d check:

  1. Check exit conditions

    • Go to the Flow → View Activity Feed → See if those 3 profiles show:

      • Flow exited

      • Suppressed

      • Failed filter due to updated profile data

  2. Add a “Flow Filter Snapshot” tag

    • Add a “Profile Property” or event capture at the first email to snapshot their status (i.e. cart value, checkout started, etc.) for comparison at later splits.

  3. Delay the conditional split slightly

    • Adding a 1–2 hour delay before the split helps ensure that flow filters and conditional logic aren’t being evaluated simultaneously as real-time behavior shifts.


Reply