Connect the store and check the events before you build anything
Install the store integration and then verify that the events you are going to trigger on are actually arriving. Building flows on data you have not checked is how stores end up with an abandoned cart email that never fires.
After connecting your ecommerce platform, place a test order and browse a few products from a browser that is not logged in as an admin. Then look at your own profile in the platform and confirm you can see the events for viewing a product, adding to cart, starting checkout and placing an order. If any of them are missing, fix that before going further.
The two that most often need attention are the on-site tracking snippet, which has to be present on every page including the cart, and the checkout event, which on some setups needs the store integration to be fully authorised rather than partially connected.
While you are there, check the catalogue has synced, because product blocks in emails depend on it. A flow that cannot pull a product image will send a message with a gap where the product should be, and you will only find out after it has gone to real customers.
Build four flows, in this order
Start with the four that cover the whole customer journey, and resist the urge to build eleven. Four working flows beat a dozen half-configured ones.
Welcome first, triggered by joining a list. It runs for people who signed up but have not bought, so it needs to explain who you are, show what a first-time buyer should start with, and give a reason to come back. Three messages over a week or so is a reasonable shape.
Abandoned cart second, triggered by adding to cart or starting checkout. This is usually the highest revenue flow in the account because it catches people mid-purchase. Two or three messages, the first within a few hours.
Post-purchase third, triggered by an order. Its job is not to sell. It is to confirm, set expectations about delivery, tell people how to use what they bought, and ask for a review at the point the product has actually arrived.
Win-back fourth, triggered by a period of no orders that matches your own reorder cycle. Build it last because it needs order history to be timed properly.
Only after those four are running should you look at browse abandonment, replenishment, back-in-stock or anniversary flows.
Triggers, filters and exit conditions are where flows go wrong
Spend most of your setup time on the logic rather than the copy, because the logic decides whether the right person gets the message at all.
Three settings do most of the damage when they are wrong. Flow filters, which decide who is allowed in: a welcome flow usually needs a filter excluding people who have already placed an order, or new customers get a first-timer introduction after buying. Exit conditions, which pull someone out mid-sequence: an abandoned cart flow must remove people the moment they order, or you will email a customer asking them to complete a purchase they already made. And smart sending, which stops the same person receiving several messages in a short window.
Also check the trigger timing. A delay measured from the trigger, rather than from the previous message, behaves differently when someone sits in a flow for a while, and mixing the two is a common cause of messages arriving in the wrong order.
Before anything goes live, draw the flow on paper with a customer in mind and ask what they would receive if they signed up, browsed, abandoned a cart and then bought, all in one afternoon. If that person gets four emails, the filters are wrong.
Test every flow end to end before it touches a customer
Run a real test of each flow yourself, as a genuine customer would, rather than relying on preview mode. Preview shows you the email. It does not show you whether the trigger fires.
Use an address that is not already in the account, sign up through the actual form on your site, abandon a real cart, and place a real order. Walk through each flow and check four things: that the message arrives, that it arrives at the interval you set, that the product blocks show the right products with images and prices, and that the exit conditions do what you expect when you complete the purchase.
Check the rendering on a phone with images blocked, which is how a meaningful share of recipients will first see it. Check the links go to the right pages and carry whatever tracking parameters you use. Check the from name and the reply address are ones a customer would recognise and that someone actually reads.
Then turn flows on one at a time rather than all at once, and watch the first day of each. Turning on four flows on the same morning makes it much harder to work out which one is behaving oddly.
Measure each flow separately, and against a holdout where you can
Report on flows individually rather than as one email number, because they do very different jobs and hide each other's problems in a total.
For each flow, watch revenue, orders, open and click rates, unsubscribe rate and how many people entered. That last one is the diagnostic that gets ignored. A flow with excellent conversion and almost no entries is not working, it is just rarely triggered, and the fix is usually in the trigger rather than the copy.
Attribution needs care. Flow revenue is credited on a click or open window, so a replenishment reminder will be credited with orders that would have happened anyway. Where a flow goes to a large enough audience, hold a portion back and compare, especially for win-back and replenishment. For abandoned cart, the honest framing is that some share of those people would have returned regardless.
Then improve one thing at a time. Change the timing of the first abandoned cart message, or the subject line, or the offer, and give it enough entries to read. Changing three at once on a flow with modest volume produces a number you cannot learn anything from.
Worked example, not a result
Timing for a first set of four flows
- Welcome message 1
- Immediately on sign-up
- Welcome messages 2 and 3
- Day 3 and day 7
- Abandoned cart message 1
- 4 hours after the cart
- Abandoned cart message 2
- 24 hours after the cart
- Post-purchase message 1
- On fulfilment
- Review request
- 7 days after delivery
- Win-back trigger
- 150 days with no order
Worked example, not a result