The 5 Klaviyo Flows Every Shopify Brand Should Build Before Sending a Single Campaign
Here's something I see all the time: a Shopify brand connects Klaviyo, imports their list, and the very first thing they do is design a beautiful campaign. New collection, big hero image, "Shop now." It goes out, gets a few sales, and then the next one goes out a week later. Meanwhile, nothing is happening in the background when someone abandons a cart, signs up, or buys for the first time.
That's backwards. Campaigns are the bit everyone sees, but flows are the bit that pays the bills. A flow is built once and works every single day, triggered by what a customer actually does. A campaign is a one-off push you have to rebuild every time.
If I'm setting up Klaviyo for a brand from scratch, these are the five flows I build before I even think about the campaign calendar.
1. Welcome series
Trigger: someone joins your list (pop-up, footer form, checkout opt-in).
This is the first impression, and it's the one people are most likely to open because they've literally just asked to hear from you. Most brands send one email with a discount code and then go silent until the next campaign. That's a wasted window.
A solid welcome series is usually three to five emails over one to two weeks:
Deliver what you promised. If the pop-up offered 10% off, the code goes in the first line, not buried under a brand story.
Who you are and why you exist. This is where the brand story actually belongs.
Social proof. Reviews, UGC, your bestsellers.
Handle the objections. Shipping, returns, sizing, ingredients, whatever makes people hesitate in your category.
A gentle reminder that the code expires.
The important bit: add a flow filter so anyone who places an order exits the series. Nobody wants a "here's 10% off your first order" email two days after they've already ordered.
2. Abandoned checkout
Trigger: Started Checkout.
If you only build one flow, build this one. These are people who've picked a product, entered their email, and got as far as the checkout before something stopped them. The intent is about as high as it gets.
I usually go with three emails:
A simple reminder with the product image and a button straight back to checkout. No discount yet.
Reassurance. Reviews, returns policy, delivery times. Answer the "why didn't they buy?" question.
If your margins allow it, this is where an incentive can go. If not, a bit of urgency (low stock, popular item) works too.
Don't lead with a discount in email 1. You'll train people to abandon carts on purpose.
3. Browse abandonment
Trigger: Viewed Product (and didn't add to cart or start checkout).
This one catches people earlier in the journey. They looked, they were interested, they left. Intent is lower than abandoned checkout, so the tone should be lighter: "Still thinking about this?" rather than "You forgot something!"
One or two emails is plenty here. Show the product they viewed, then a few related products in case that one wasn't quite right. Keep the frequency in check with Smart Sending so people aren't getting a browse email every time they scroll your site on their lunch break.
4. Post-purchase
Trigger: Placed Order.
The moment someone buys is the moment they're most interested in your brand, and most stores just let Shopify's order confirmation do the talking. A post-purchase flow is where you turn a one-time buyer into a repeat customer.
At a minimum, split it by first-time vs returning customers:
Then add a review request timed to when the product has actually been used, not two days after the order when it's still in a warehouse. I've written a whole separate post on post-purchase flows because honestly, this is where I think most brands leave the most money on the table.
5. Winback
Trigger: Placed Order, with a time delay and a filter for people who haven't ordered since.
Every customer goes quiet eventually. A winback flow reaches out before they've forgotten you completely. The timing depends on your product. A brand selling something consumable like skincare or coffee might trigger it after 60 days. Something like furniture? Much longer.
If you've got enough order data, Klaviyo's predictive analytics can help here, using the expected date of next order to time things more precisely. If you're a newer brand without that data, start with a sensible guess based on how often your product needs replacing and adjust once you see results.
Two or three emails: a "we miss you" check-in, a reminder of what's new since they last bought, and a final incentive if they still haven't come back.
Why flows first?
Because flows compound. Every new subscriber, every abandoned cart, every first order gets handled automatically, whether you're at your desk or not. Once they're running, campaigns become the cherry on top rather than the whole cake.
It also makes your campaigns better. When flows handle the "always-on" messages, your campaigns can focus on what campaigns are actually good at: launches, stories, seasonal moments, and keeping the brand front of mind.
Where to start this week
If you've got none of these live right now, here's the order I'd build them in:
- Abandoned checkout (highest intent, quickest win)
- Welcome series (biggest volume of new people)
- Post-purchase (protects the customers you've already paid to get)
- Browse abandonment
- Winback
Get them live, even if they're not perfect. A simple flow that's running beats a perfect one sitting in drafts. Then check performance after a few weeks, look at where people drop off, and improve one email at a time.
Want these five flows built and running on your Shopify store?
Connect with me on LinkedIn →