
Welcome!
Today you’ll learn which Klaviyo flows you need to have live before Black Friday/Cyber Monday.
If done right, you'll not have to lift a finger for your flows during BFCM - and that is the main goal.
Because, you'll be busy with ad channels, customer support overflow, logistics, etc. so that flows should not be your problem during that time.
Yiqi, Jule & I have collectively built hundreds if not thousands of flows across brands of every size and I’ve personally helped over 500 brands. So yes, we've done this before.
That said, let’s make sure your flows are bulletproof.
Note: If you haven't created an account overview yet, please do that first. Here's how:
⸻
Goal:
After this post, you’ll know:
- Which flows you need (at minimum)
- How to adapt them for BFCM
- Where to add urgency and where to add discounts
- How to avoid overlap and compliance issues
- How to turn squeeze everything out of your abandonment flows
Principle:
The first 5 flows are the absolute basics. No matter your size. If you're making more than 100K/mo and/or have more than 30K subscribers that are active, you should also consider adding the advanced flows.
Regarding SMS flows:
We're not mentioning them here specifically but I always separate my channels like this:
- Always send the cheapest message first. If the customer doesn't convert, THEN you send out the next message with another medium. You can give customers a window of about 2-5 hours to convert before sending the followup with a 2nd channel.
Hierarchy: Email -> SMS -> WhatsApp -> Push -> Postcard
- If someone CAN'T receive email marketing, you can skip emails and go right into the other channels in that order.
⸻
1. Welcome Flow (Newsletter Signups)
Goal: Convert first-time visitors to buyers before BFCM even starts as well as during BFCM.
Filters:
- None. Only use conditional splits here. That can be "Placed order 0 times since starting this flow" for example.
Add:
- “Teaser” Emails for your upcoming BFCM sale
- Countdown or “Early Access” Invite
- Product blocks with high urgency
- Discount code (auto-applied is better. You can do that by getting a sharable link from your Shopify Discount page)

Don’t forget:
- Smart Sending OFF
- Track who claimed the discount but didn’t buy (segment for BFCM)

Tip:
- If you want to run a different welcome series and want to make sure they are being switched out, you can schedule that. No need to do it manually.
Final Result:

⸻
2. Abandoned Checkout
Filters:
- Has not been in flow in the last 7 days.
- Placed Order - zero times - since starting this flow
[Additional if they are in Germany for DSGVO we need this additional definition:
Has placed order at least once over all time OR can receive email marketing because person subscribed]
Add:
- Time-sensitive BFCM reminder
- Scarcity: “This deal expires tonight”
- Free shipping (or free product) reminder
- Auto-applied discount in CTA (as mentioned above with the sharable link)
Important:
- GDPR-compliant filter: Only email consented profiles
- Disable Smart Sending
- Delay: 30 mins, 4h, next day - test multiple if your traffic is high enough
Final Result:

⸻
3. Cart Abandonment
Goal: Recover browsers who added to cart but didn’t start checkout.
Filters:
- Has not been in flow in the last 7 days.
- Checkout Started - zero times - since starting this flow
- Placed Order - zero times - since starting this flow
[Additional if they are in Germany for DSGVO we need this additional definition:
Has placed order at least once over all time OR can receive email marketing because person subscribed]
Add:
- BFCM-specific version of your flow (tailored towards your offers)
- Dynamic product blocks
- Offers based on cart value (e.g. AOV, 2x AOV and so on)
Pro tip:
Split this flow for High vs Low-AOV customers. Add a trigger split like:
“If today cart value is [2x your AOV]” e.g. $60 if your usual AOV is $30.

Also:
- Smart Sending OFF (If your setup is done correctly you won't have overlapping flows anyway.)
Final Result:

⸻
4. Winback Flow
Goal: Bring back past buyers.
Filters:
- Placed Order 0 times since starting this flow
Add:
- BFCM-specific reminder: “It’s our biggest sale of the year.”
- Personal reminder based on past orders: “Last time you bought XYZ…”
Logic:
- Set trigger based on product lifecycle (30, 60, 90 days)
- Dynamic coupon (auto-expiring)
Note: This one will actually come in handy especially after BFCM to convert all those people again that might have bought from you for the first time during BFCM. It does not have a huge impact on BFCM typically but especially for brands that sell consumable products this is gold.
Final Result:

⸻
5. Post Purchase Flow
Goal: Turn buyers into repeat customers.
This can be done in one of 2 ways:
- Immediately send them a similar product with a dynamic product block so that they can add the products to the same order. (Shopify has apps for that)
- Send a thank you first and then educate them on additional products that they can buy separately/in their next order.
Filters:
- Placed Order 0 times since starting this flow
Add:
- Cross-sell emails based on what they just bought
- “Early access” for loyal customers (VIP segmentation)
- Ask for review → reward with upsell
- Invite to another channel (SMS, WhatsApp, Loyalty)
Don’t:
- Don't send “You just bought this – buy again” emails. Rather say something like "Your X goes well with Y." so that it seems complementary. And then add "You can now add it for 50% off to the same order and save your shipping costs."
Final Result:

⸻
6. Optional (Advanced) Flows
If you’ve got the time and team, here are a few extra flows that crush during BFCM:
a) Browse & Site Abandonment
When someone browses a product but doesn’t add to cart.
Add urgency: “Only X left – BFCM deal ending soon!”
Filters Browse:
- Has not been in flow in the last 7 days.
- Added to Cart - zero times - since starting this flow (Only if Added-to-Cart related flow exists)
- Checkout Started - zero times - since starting this flow
- Placed Order - zero times - since starting this flow
[Additional if they are in Germany for DSGVO we need this additional definition: Has placed order at least once over all time OR can receive email marketing because person subscribed]
Filters Site:
- Has not been in flow in the last 7 days.
- Viewed Product - zero times - since starting this flow
- Added to Cart - zero times - since starting this flow (Only if Added-to-Cart related flow exists)
- Checkout Started - zero times - since starting this flow
- Placed Order - zero times - since starting this flow
[Additional if they are in Germany for DSGVO we need this additional definition: Has placed order at least once over all time OR can receive email marketing because person subscribed]
Note: These are great if you have an extended Pixel like the one from Aimerce as the usual Shopify pixel is only valid for 14 days whereas the one from Aimerce holds for 365 days which makes these way more efficient.
b) Back In Stock
Especially strong if you expect fast inventory turnover.
Simply add a button that says “Reserve now” as the main CTA and send it to your VIP list first, e.g. 2 hours before you send it to everyone else.
c) VIP Flow
Do you have customers with high LTV? Segment them and give early access 24h before everyone else.
Works extremely well when paired with SMS or WhatsApp.
d) 30-Day No Order Flow
This one is for when someone signs up but doesn’t buy.
Here you can educate more and add more social proof as well as test different offer angles if the welcome flow offer didn't convert them.
⸻
What to Do Next:
- Review each of your active flows in Klaviyo (with the help of your Account Overview)
- Update copy and offers for BFCM
- Adjust delays, filters & logics
- Prepare BFCM-specific branches if needed
- Schedule flows ahead of time to avoid problems down the line
⸻
🏁 Once you're done with this session, make sure to tick the little box at the top right of this page. It will mark this as done and if I see that you marked all sessions as green/done (yes, I can see that) I'll send you a gift :)