Retention

Ecommerce Email Flows: The Five Worth Building

Most stores build a dozen flows and earn from about four. The other eight are maintenance with a dashboard. Here's which five carry the revenue and what each one triggers on.

Gabriel RuimyCofounder, Qosmic ·

Email is the channel that keeps working when the ad account has a bad month. Email and SMS together account for roughly 28% of ecommerce revenue across verticals, and higher in categories where people reorder.

Which is why every store eventually builds twelve flows.

Then about four of them produce anything, three send at the wrong moment, two haven't been opened in a year, and nobody can say which is which because the reporting is per-flow and nobody sums it.

The five

Welcome. Someone gave you an address. This is the highest-engagement message you will ever send them and most stores waste it on a discount code and a logo. Better: say what you make, who it's for, and what to look at first. If you're going to give a discount, give it at the end of the sequence rather than the start, so you're not paying people who were already buying.

Abandoned cart. Obvious, and usually built wrong. Cart abandonment runs between 70% and 74% and has barely moved in a decade, so the ceiling here is real but the flow isn't the fix for most of it. Send the first one within an hour while intent is warm. Lead with the product and the objection, not the code. Hold any discount for the third message, if at all.

Browse abandonment. Underbuilt almost everywhere. Someone viewed a product three times and didn't add to cart. That's a different person from the one who abandoned a cart, and they need a different message, usually the answer to whatever stopped them rather than a nudge.

Post-purchase. The most undervalued flow in ecommerce. It reduces support tickets, sets expectations on delivery, and is the only moment the customer is guaranteed to open. Use it to tell them what happens next and how to use the thing, not to sell them something on day one.

Winback. Triggered on time since last order, set against your actual repeat cycle rather than a generic 90 days. A coffee brand and a mattress brand should not use the same number, and most stores use the default because nobody looked up their own.

That's the list. Five.

[@portabletext/react] Unknown block type "ctaBox", specify a component for it in the `components.types` prop

The ones you can skip

A timeline of five email flows and the moment each one fires

Birthday emails, unless you're a gifting brand. You collected a date, you send a code, and the code goes to people at random moments with no relationship to intent.

"We miss you" at 30 days, for products with a 6-month replacement cycle. The customer doesn't miss you. They're still using it.

Re-engagement sequences for people who never engaged. If they've opened nothing in a year, the honest move is to stop mailing them. It protects your deliverability, which is worth more than the rounding error you'd recover.

A second abandoned cart flow because the first one underperformed. It wasn't the flow.

Anything triggered on a segment of fewer than a few hundred people. The build and maintenance cost more than the revenue.

The problem flows can't solve

Here's the uncomfortable part.

An abandoned cart flow is a recovery mechanism for a failure that already happened. It's valuable, and it's also a bandage. If seven in ten carts fail, the flow claws back a slice of that seventh, and the underlying reason all seven failed is untouched.

Most of those reasons live on the store, not in the inbox. Shipping cost that appears at checkout. A returns policy nobody can find. A product page that doesn't answer the question standing between interest and purchase. A price that looks higher than the tab open next to it.

You can tell which situation you're in by looking at what your cart recovery emails are actually doing. If they mostly convert with a discount, you're buying back orders you lost on price or trust. If they convert without one, the person just got distracted and the flow did its job.

That's the question our audit answers: 500 checks across the store, mobile and desktop, every page, scored against a pass bar. Then we build the change and adjudicate it against real revenue, both halves. Fixing the reason carts fail is worth more than recovering a share of them, and it compounds instead of running once per abandonment.

For the sending itself, Klaviyo is the default on Shopify and deserves to be. Omnisend is cheaper if you want email and SMS in one place. We don't build email platforms and don't plan to, so those are the right places to run the flows.

Build order, if you're starting

  1. Post-purchase. Cheapest to build, immediately useful, reduces tickets.
  2. Abandoned cart. Biggest single revenue line of the five.
  3. Welcome. Highest engagement you'll ever get.
  4. Browse abandonment. Most stores skip it, which is why it's still worth something.
  5. Winback, once you know your real repeat cycle.

Then stop. Go and fix the store.

Grow your store with one click.