The Latest/Email Flows & CopyLast updated October 4, 202617 min read

Post-Purchase Emails: How to Build a Flow That Earns a Second Order

The YOCTO editorial team is in-house lifecycle strategists, email and SMS specialists, and Klaviyo-certified operators behind every article on this site. YOCTO’s client work has been published by Klaviyo, Skio and Loop under their own names, and its retention methodology - the LTV Parthenon - is published in Forbes. Klaviyo Elite Master, 2025-2026.

A post-purchase email flow is the sequence that runs after someone orders. Its job isn’t to thank anybody. It’s to get the second order, because the gap between the first order and the second is where most ecommerce brands lose the customer they just paid to acquire.

The flow that works splits before it sends anything. One-time buyers and subscribers are in completely different situations the moment the order lands, and sending them the same sequence wastes the only window where the customer is actually paying attention.

This is how to build it: the split, the timing, what each message does, and how to tell whether it’s working.

Free Klaviyo audit

See what your Klaviyo account is leaving on the table.

Request a free Klaviyo audit
FreeLive walkthroughYou keep the scorecard

What is a post-purchase email flow?

A post-purchase flow triggers on the order itself, usually the Placed Order event, and runs for somewhere between two weeks and two months depending on how long the product lasts.

It isn’t the order confirmation. That’s a transactional message and it should stay separate, because transactional messages go to everyone regardless of marketing consent and get treated differently by both the platform and the mailbox provider.

The useful way to think about it: the order confirmation closes the transaction, and the post-purchase flow opens the relationship. Those are different jobs and they read differently.

It sits alongside the welcome, abandonment and win-back sequences in a lifecycle program. The full grid of Klaviyo flows covers every touchpoint worth triggering on and the order to build them in.

It’s worth knowing where this one sits in that grid, because it explains the split below. Every flow answers two questions: what did the person just do, and how many times have they bought. This flow is one row, placed an order, worked across the second axis. That’s all the one-time buyer versus subscriber split is, and once you see it that way you can apply the same move to every other row you have.

Should subscribers and one-time buyers get the same flow?

No, and this is the single decision that separates a post-purchase flow that earns a second order from one that just says thank you.

A one-time buyer hasn’t made any commitment past the thing in the box. The job of their sequence is to get the product used, then get a second order. A subscriber has already committed to the second order; it’s scheduled. Their sequence has a completely different job: make sure they’re still there when the renewal runs.

Send both groups the same emails and you do two bad things at once. You ask subscribers to buy something they’re already scheduled to receive, which reads as though you don’t know who they are. And you give one-time buyers subscriber content that assumes a commitment they haven’t made.

The build: two flows on the same trigger, with mutually exclusive entry filters. One filters to profiles where the subscriber flag is false or not set. The other filters to profiles where it’s true. Nobody can land in both, and each sequence can be written for one situation instead of hedging between two.

How do Klaviyo’s flow filters actually work?

This is where most post-purchase flows go wrong, and it’s worth being precise because the four filter types behave differently and the difference is not obvious from the interface.

Filter typeWhen Klaviyo evaluates it
Trigger filter, metric-basedOnly when the profile first enters
Trigger filter, custom objectAt every step
Profile filterAt entry, and again before every action
Re-entry criteriaOnly on organic entry

The row that matters is the profile filter. Klaviyo’s documentation puts it plainly: profile filters are checked when somebody first enters a flow and before each action takes place.

So a one-time buyer who subscribes two days into the sequence is removed from the one-time flow automatically, before the next email goes out. You don’t have to build anything to make that happen. People who put that condition in a trigger filter instead, which is only evaluated at entry, get the opposite: the person stays in the wrong sequence for the rest of its run.

The rule: if a condition describes something that can change while the flow is running, it belongs in a profile filter. If it describes whether the event itself qualified, it belongs in a trigger filter.

Why would you add a split you don’t need?

Here’s a technique worth stealing, and it looks like a mistake until you understand it.

In a well-built one-time buyer flow you’ll often find a conditional split, partway through, asking whether the person is now a subscriber. Given what we just covered, that split is redundant. The profile filter already removed them.

It isn’t there to control the sending. It’s there so the flow report can answer a question. The branch counts tell you at which step in the sequence people convert from one-time buyer to subscriber. Without the split you still get correct behavior, you just can’t see where the conversion happens.

That’s worth knowing because it tells you which email is doing the work, and whether the conversion happens early, where you could move the offer forward, or late, where the sequence may be too long.

The general version: a split is a measuring instrument as well as a control. Most people only ever use splits to decide who gets what, which is why their flow reports tell them so little.

How long should you wait before the first post-purchase email?

Minutes, not days, and then the gaps should widen. The spacing should track how fast the customer’s situation is changing, which is fastest right after the order and slows as the product gets used.

A delay ladder from a live subscription account, which is a reasonable shape to start from:

StageGapWhat has changed for the customer
Immediately after the order3 to 10 minutesThey are still on the site, still thinking about it
Same day9 hoursThe order is confirmed, nothing has arrived
Early sequence2 to 3 daysShipping is in motion
Main sequence4 to 5 daysThe product is arriving and being tried
Late sequence15 daysThey know whether they like it

None of that is an even cadence, and that’s the point. An email every three days forever is a schedule, not a sequence. The gaps should be short while things are changing and long once they’ve settled.

On channel mix, the same account runs roughly five emails for every SMS. SMS costs money per send and spends attention faster, so it’s worth rationing to the moments that are genuinely time-sensitive.

What should each post-purchase email do?

One job each. The common failure is an email that thanks, educates, cross-sells and asks for a review all at once, which does none of them.

  • Set expectations. What happens next, when it arrives, what to do when it does. This is the one people actually open.
  • Get the product used correctly. The first-use experience decides the second order more than any discount will.
  • Answer the question they haven’t asked yet. Every product has one predictable early doubt. Address it before it becomes a return.
  • Ask how it went. Feedback, and a segment you can act on afterwards.
  • Make the second-order case. By now they have used it and have an opinion, which is the only moment the case can land.

Only the last one sells. If the four before it did their job, it barely has to.

How do you branch by what they bought?

Below the customer-type split, branch on the product itself rather than on order value or collection. What’s in the box decides what the next three weeks look like, and a brand with four hero products usually needs four versions of the middle of the sequence.

In Klaviyo that’s a conditional split on the Ordered Product metric. The first and last emails can stay shared. The middle, where you’re teaching somebody to use the thing, has to be specific or it’s filler.

How do you know the post-purchase flow is working?

Attributed revenue won’t tell you. A post-purchase flow is sent to people who just bought, which is the group most likely to buy again anyway, so it attributes well no matter how good it is. It’s the most flattering report in the account and the least informative.

Hold out a random sample and compare. A profile-sample split inside the flow sends a small random percentage nothing, and the difference in second-order rate between the two groups is what the sequence actually caused.

The number to watch isn’t open rate. It’s the share of first-time buyers who place a second order, and how long that takes. If the flow is working, both move. Second-order rate is also the input that moves customer lifetime value more than anything else you can change in email.

One thing that quietly breaks measurement: Smart Sending. It skips anyone who received another marketing message recently, so a post-purchase email can be dropped because a campaign went out that morning, and the skip is silent. How Smart Sending decides what to skip covers which messages to turn it off for and how to see what it has already cost you.

What does a post-purchase flow look like end to end?

One-time buyerSubscriber
Entry filterSubscriber flag false or not setSubscriber flag true
Job of the sequenceEarn the second orderSurvive to the renewal
First messageMinutes after the orderMinutes after the order
Middle of sequenceBranch by product orderedSet up the renewal date
The askSecond orderKeep the subscription
EndsAround 3 to 4 weeksAt the renewal

What should you read next?

If you’d rather have somebody look at the flows you already have, our Klaviyo audit goes through the account and says what to fix first.

Frequently asked questions

What is a post-purchase email flow?

A post-purchase email flow is an automated sequence triggered by a customer’s order. It usually runs for two to four weeks and its job is to get the product used and earn a second order, which is separate from the transactional order confirmation.

How many emails should a post-purchase flow have?

Five to seven for a one-time buyer, each with one job: set expectations, get the product used, answer the predictable early doubt, ask how it went, and make the second-order case.

How soon should the first post-purchase email send?

Within minutes of the order. The customer is still engaged at that point. Later messages should widen to 2 to 5 day gaps as the situation stops changing.

Should subscribers get the post-purchase flow?

Not the same one. They’ve already committed to a second order, so their sequence should protect the renewal rather than sell again. Build two flows on the same trigger with mutually exclusive entry filters.

What is the difference between a trigger filter and a profile filter in Klaviyo?

A metric-based trigger filter is evaluated only when the profile first enters the flow. A profile filter is evaluated at entry and again before every action. Conditions that can change while the flow runs belong in a profile filter.

How do you measure whether a post-purchase flow works?

Hold out a random sample using a profile-sample split and compare second-order rate between the two groups. Attributed revenue overstates post-purchase flows, because they’re sent to the people most likely to buy again anyway.

Is the order confirmation part of the post-purchase flow?

No. It’s transactional, it goes to everyone regardless of marketing consent, and should stay a separate message.

Sources

The flow architecture described here is drawn from live subscription accounts we run. No client, product or category is identified, and no account data is published.

If you would rather hand the whole email program over, that is what an ecommerce email marketing agency is for.

START HERE

Do You Need to Maximize Your Profits?

We’ll run a free audit, hand you a written breakdown, and tell you honestly if we can help.

Free audit · no contract
Get Yours