A brand I worked with recently got a two-star review. Not about the product. Not about shipping. The customer said she was getting too many emails.
She had placed her order about ninety seconds earlier.
That is what a broken post-purchase email flow looks like from the customer’s side. Three emails, three different systems, all landing before she had finished making a cup of tea. Nobody had mapped what actually fires after checkout, so nobody noticed the pile-up until it showed up as a public review.
Here is the thing. Every one of those three emails was defensible on its own. Stacked together in ten minutes, they read like spam from a brand she had just decided to trust.
Quick answer: why does a post-purchase email flow feel like too many emails?
Most stores send three automated emails within minutes of an order: the Shopify order confirmation, a transactional email from a second system (fulfilment, delivery or account setup), and the Klaviyo thank-you flow set to zero delay. The customer sees three emails from one brand. Fix it by delaying the Klaviyo flow to five to seven days and rewriting it as a genuine check-in.
Why do customers say they are getting too many emails after they order?
Because they are, and they are counting differently to you.
You see three separate systems doing three separate jobs. A transactional receipt. A fulfilment notification. A branded thank you. Sensible, tidy, all with a reason to exist.
Your customer sees three unread emails with your brand name in the sender field, in the same ten-minute window, on a phone that already has 4,000 unread emails in it. She does not know that one came from Shopify and one came from a third-party platform and one came from Klaviyo, the email and SMS platform built for ecommerce. She does not care. She just bought something and now her inbox is full of you.
Email frequency complaints are almost never about your campaign calendar. They are about the ten minutes after checkout.
The other problem is where the complaint lands. Nobody replies to your support inbox to say “that was a lot of emails”. They unsubscribe silently, or they leave it in a review, which is exactly what happened to the brand above. By the time you find out, it is public and it is attached to a product that had nothing to do with it.
What actually fires in the first ten minutes after someone buys?
More than you think. Here is the usual line-up for a product brand on Shopify:
- The Shopify order confirmation. Transactional, triggered on purchase, effectively a requirement. It goes out instantly.
- A second transactional email from another system. This is the one that catches people out. A fulfilment platform, a subscription app, a digital delivery tool, a warranty or registration system, a booking confirmation. It carries data that only that system holds, so it sends from that system, on its own schedule, usually within seconds.
- Your Klaviyo post-purchase flow. A post-purchase flow, meaning the automated sequence that fires when someone places an order, is very often built with no delay on the first email. Straight out the door.
- Your welcome flow, sometimes. If the customer signed up through your pop-up and bought in the same session, they also get welcome email one. That is a fourth email.
- An SMS, if you have one running. Same window, different channel, same feeling.
Four emails and a text message before the order has even been picked. And the two you are most likely to be blamed for are the two you built on purpose.
This is why I always want to see the whole automation map before we touch a single email. If you are still working out what should exist in the first place, start with the six core Klaviyo flows every ecommerce store needs and get the structure right before you get clever with it.
How do you audit every automated email that fires after a purchase?
You place an order. That is genuinely the whole method, and it is the step almost nobody does.
Not a preview. Not a test send. A real order, with a real card, using an email address that has never touched your store before. Then you sit with that inbox for 24 hours and you write down what arrives.
- Screenshot every email, with the timestamp visible. Include the sender name and the subject line, because that is all your customer sees in the list view.
- Build a simple timeline. Minute zero, minute two, minute six, hour four, day two. Put it on one page. If your team cannot see the sequence on one page, they cannot spot the clash.
- Mark each email transactional or marketing. Transactional means the customer needs it to complete or use their purchase. Marketing means you chose to send it. Be honest here. “Welcome to the family” is marketing.
- Run the test again as a new subscriber. Sign up through your pop-up, then buy in the same session. This is the scenario that produces the worst overlap and it is the one that never gets tested.
- Run it a third time as a repeat customer. Most brands have a separate thank-you path for returning buyers, and it is usually the one nobody has read since it was built.
Then apply one rule. In any given hour, one email from your brand stays and everything else moves. The one that stays is the one the customer actually needs.
Not sure what is firing in your account and not keen to place five test orders to find out? A Mini Klaviyo Audit is $69 and you get a 15-minute personalised video walking through what is actually running in your account and what is quietly working against you.
Should your order confirmation stay in Shopify or move to Klaviyo?
Stay in Shopify. Every time.
Founders ask me this constantly, usually because they have just moved to Klaviyo and assumed it replaces everything. It does not, and the order confirmation is the one email I say never to move.
It is transactional. It is triggered on purchase, it is tied to order data, and it is close to a legal requirement to send. It is also, almost certainly, the most-opened email your brand sends all year. People open receipts. They do not open your newsletter with the same enthusiasm.
The same goes for that second transactional email from a third-party system. If it carries something only that platform can generate, an access link, a licence code, a booking reference, a personalised document, then you cannot rebuild it in Klaviyo, no matter how much nicer it would look. Trying to consolidate it is a project that eats a month and delivers nothing.
You are not trying to reduce the number of systems. You are trying to reduce the number of emails landing in the same ten minutes.
So leave the transactional emails where they are, and move the one thing you fully control.
How long should you delay your Klaviyo thank-you flow?
Five to seven days for most product brands.
That window does a few things at once. It clears the transactional wave completely. It lands close to when the parcel arrives, or just after, so the timing feels considered rather than automated. And it puts a friendly email in front of someone at the exact moment they are either delighted or wondering where their order is.
Adjust it to your product:
- Physical goods with normal shipping: seven days. It usually lands with or just after the parcel.
- Digital or instant-access products: two to three days. Long enough to clear the receipts, short enough to still feel connected to the purchase.
- Made to order or long lead times: align the delay with your dispatch window, not with the order date.
- Consumables: seven days, then let your replenishment logic take over from there. That is a different job, and it belongs in the retention flows most product brands forget.
One caveat. If your delivery times are genuinely long or unpredictable, seven days can arrive before the product does. Test it against your real dispatch data, not your shipping policy page.
What should the delayed thank-you email actually say?
Not what it says now. I will bet money on it.
Most post-purchase emails are a second receipt in a nicer font. Order details, a product image, a bit of copy about the brand journey, a discount code stapled to the bottom. The customer has already had the order details twice. She does not need them a third time.
Once you have moved it to day five or seven, the job changes completely. It is a check-in now, not a confirmation. Write it like one:
- Open with the acknowledgement, not the transaction. Short, human, ideally from the founder. Say what their purchase actually means, in one or two sentences.
- Add a quiet service check. “Your confirmation and your tracking should both have landed by now. If anything is missing, just hit reply.” That single line catches problems before they become reviews.
- Give them one useful thing. How to get the most out of what they bought. The story behind it. The part of the community they have just joined. One idea, not five.
- Offer one soft next step. An invitation to explore something they might not know exists. A gift option, if that suits your product. Not a discount, and not a hard sell seven days after they paid full price.
- Make reply-to a real inbox. If you are inviting a reply, someone has to be reading them.
A thank-you email that repeats the order details is a receipt with better fonts. A thank-you email that asks how it is going is the start of a second purchase.
Why do flow names cause half of this problem?
This one sounds trivial. It is not.
On a call recently, three of us spent ten minutes talking past each other because “the welcome email” meant three different things depending on who was speaking. One person meant the flow that fires when someone joins the list. Another meant the first email in the post-purchase sequence, which happened to open with the word “welcome”. Feedback had been written on the wrong email entirely, and nobody realised until we said the trigger out loud.
When your team cannot name what fires when, nobody owns the timing. And timing is the whole problem here.
Fix it by naming every flow after its trigger and its audience, not its subject line:
- Subscribed to list, new subscriber, welcome series
- Placed order, first-time buyer, post-purchase nurture, day seven
- Placed order, repeat buyer, thank you, day seven
- Fulfilled order, all buyers, review request, day fourteen
Ugly names. Extremely clear. Then keep that one-page timeline from the audit somewhere the whole team can see it, so the next person who adds a flow can see what they are adding it next to.
While you are in there, it is worth checking that your actual welcome series is not overlapping with the post-purchase path for people who subscribe and buy on the same day. That overlap is the fourth email nobody counts.
Key takeaways
- Customers count emails by sender name and timestamp, not by system. Three emails in ten minutes reads as too many, no matter how justified each one is.
- Audit by placing a real test order and building a one-page timeline of everything that arrives in 24 hours. Run it as a new subscriber and as a repeat customer too.
- Leave your Shopify order confirmation and any third-party transactional email exactly where they are. They carry data you cannot replicate.
- Delay your Klaviyo post-purchase email flow to five to seven days so it clears the transactional wave and lands near delivery.
- Rewrite the delayed email as a genuine check-in with a service line and one useful idea, not a second receipt with a discount code.
- Name every flow after its trigger and audience so your team stops arguing about which “welcome” email they mean.
If your automations need a tidy-up, start here
Frequently asked questions
How many emails should a customer get after placing an order?
In the first hour, one. The order confirmation. If a second system has to send something transactional at the same time, that is unavoidable, but nothing you control should be added on top. Your marketing follow-up belongs days later, not minutes later.
Will delaying my post-purchase email flow hurt my email revenue?
No. The email that fires two minutes after checkout is competing with two receipts and almost never gets read properly. The same email at day seven gets opened, gets read, and has somewhere useful to send people. You are not sending less, you are sending it when it can actually work.
Can I just turn off the third-party transactional email and put everything in Klaviyo?
Usually not. If it carries an access link, a reference number, a personalised file or anything generated by that platform, Klaviyo cannot recreate it. Sequence around it instead of fighting it.
What is the difference between a welcome flow and a post-purchase flow?
A welcome flow triggers when someone joins your list, usually through a pop-up, and they may never have bought anything. A post-purchase flow triggers when someone places an order. They are different audiences at different stages, and they should never be running the same content.
How do I know if my post-purchase emails are annoying people?
Check unsubscribe rate on the flow itself, not just your campaigns. Read your recent product reviews for anything about communication. And place a test order. Most founders have never seen their own post-purchase sequence land in a real inbox.
Want someone to map the whole thing for you?
If reading this made you realise you have no idea what fires after someone buys from you, that is normal, and it is fixable. Most brands I look at have flows built at different times by different people, all set to send immediately, all quietly overlapping.
We map it, we sequence it, and we rewrite the emails so they earn their place in the inbox. You do not have to understand any of it.
Book a call and we will take a look at what your automations are actually doing: inflowmarketing.co/book-a-call
Chat soon,
Jess