Marketing Automation 9 min read

Ecommerce Marketing Automation: The Flows Playbook

How to design automated flows that hold up in production — triggers, delays, exit conditions, re-entry rules, and the six automations worth building before anything else.

LA
Laxman Anand Data Strategist at CampGain
Contents 8 sections
  1. 01 The anatomy of a flow
  2. 02 The six flows to build first
  3. 03 Exit conditions: the part everyone skips
  4. 04 Re-entry rules and duplicate triggers
  5. 05 Identity: who can actually be enrolled
  6. 06 Common mistakes
  7. 07 How CampGain runs flows
  8. 08 Start with one

The usual pitch for marketing automation is that it saves time. That is true and it is the least interesting thing about it.

The real argument is timing. A shopper abandons a cart at 11pm on a Tuesday. Nobody is going to notice, look up what they left, and write to them — but an automation will, an hour later, with the right products in the message. Automation is the only way to be present at the moment intent is highest, for every customer, indefinitely.

This guide covers how flows are actually constructed, the six worth building first, and the production details — exit conditions, re-entry rules, identity — that decide whether a flow earns money or quietly embarrasses you.

The anatomy of a flow

Every automation, in every tool, is the same five parts. Understanding them separately is what lets you debug one.

PartWhat it doesWhere it goes wrong
1. TriggerThe event that starts enrollment — added to cart, started checkout, placed an order, subscribed, viewed a productA flow does nothing at all until a matching event arrives
2. Entry conditionsFilters applied at the moment of the trigger. "Started checkout and cart over $100" lets you justify an expensive channel for high-value carts onlyFiltering on a field most contacts do not have
3. DelaysThe wait between steps — where most of the tuning happensTiming copied from a template that was tuned for someone else's purchase cycle
4. BranchesConditional splits. The useful ones are simple: did they open the last message, is this their first order, is the cart above your thresholdElaborate trees on data you cannot rely on. Two-way splits on facts beat them every time
5. Exit conditionsThe events that remove someone mid-flowThe most damaging mistake in the category — see below

The six flows to build first

FlowTriggerExitMessages
1. Abandoned cartAdded to cart, no purchase sincePurchase2–3 over three days
2. Abandoned checkoutCheckout started, not completedPurchase2 — higher intent, shorter sequence
3. Welcome seriesSubscribedFirst purchase (optional)3–5 over week one
4. Post-purchaseOrder placedOrder cancelled or refunded3–4 across delivery
5. Browse abandonmentProduct viewed repeatedly, no cart addCart add or purchase1
6. Win-backDays since last order crosses your lapsed thresholdAny purchase2–3 over a few weeks

What separates them is the message, not the mechanics.

  • Cart is the largest single pool of recoverable revenue most stores have — Baymard Institute's aggregate of published studies puts abandonment at roughly seven in ten. Resist leading with a discount: a meaningful share of abandonment is distraction, not price, and those people convert on a plain reminder.
  • Checkout is worth separating because the failure is usually mechanical — shipping cost at the last step, a payment method not offered, a forced account creation. Address that directly instead of repeating the product pitch.
  • Welcome sets expectations, explains what makes the product different, shows proof, then gives a reason to buy. If someone purchases at message two, exit them or branch into post-purchase.
  • Post-purchase does double duty: it builds the repeat purchase and deflects a real share of "where is my order" tickets. WhatsApp is often the better channel — utility-category messages are cheap and genuinely welcome.
  • Browse should answer the unanswered question — sizing, materials, delivery time, returns — rather than repeating the price.
  • Win-back needs a threshold set from your own repeat purchase interval, not a default.

Exit conditions: the part everyone skips

An abandoned-cart flow with no exit condition will, reliably, message customers about the thing they just bought. It is the fastest way to look like you are not paying attention, and it happens because exits are easy to forget: the flow works perfectly in testing, where you never complete a purchase.

Rules worth applying:

Flow typeMust exit onWhat it prevents
Any recovery flow
cart, checkout, browse
Purchase — no exceptionsChasing someone about the thing they just bought
Post-purchaseCancellation or refund"How are you enjoying your order?" to someone who returned it
Win-backAny orderTreating a returning customer as lapsed
Everything promotionalConsider a global suppression for recent buyersSomeone who ordered yesterday getting a promotion today, whatever triggered it

Re-entry rules and duplicate triggers

Two production problems that only appear once a flow is live.

Duplicate events. Platform webhooks are not guaranteed to fire exactly once. A fulfilment webhook can arrive twice, and a naive flow sends two shipping notifications. The fix is a short re-entry cooldown — an hour is usually enough — so a repeat trigger for the same contact is absorbed rather than acted on.

Re-entry policy. If a shopper abandons a cart in March and again in June, should they get the sequence twice? For cart recovery, yes — it is a new intent. For a welcome series, absolutely not. Set this per flow rather than accepting a default, and set a cooldown even where re-entry is allowed, or a shopper who repeatedly adds and removes items will get messaged repeatedly.

Identity: who can actually be enrolled

This is the constraint that surprises people most, and it explains most "why is my flow reaching nobody" questions.

What raises the identified share:

  • Capture email early — a newsletter signup, an account, or a first-step checkout field, rather than only at payment.
  • Make sure your tracking passes identity through. An event that fires but carries no email is invisible to enrollment even though it appears in your analytics.
  • Stitch sessions. If a shopper identifies themselves at checkout, earlier events in the same session can be attributed to them retrospectively — which turns a browsing session into an enrollable one.

Check this number before you blame the flow. Events arriving and events carrying identity are two different measurements, and only the second one produces enrollments.

Common mistakes

  • Building ten flows before validating one. Each live flow is something that can go wrong silently. Get two right, then add.
  • No exit conditions. Covered above, and worth repeating because it remains the most common failure.
  • Delays copied from a template. A template's timing was tuned for someone else's purchase cycle. Yours is different.
  • Branching on data you rarely have. A split on a field that is empty for most contacts sends almost everyone down the default path — and you will not notice, because it still looks like it is working.
  • Never auditing live flows. Catalogs change, templates get archived, integrations get disconnected. A flow that worked in January can be silently failing in June. Review each one quarterly.
  • Overlapping flows. A shopper who abandons a cart during a welcome series can end up in both. Decide which one wins and enforce it, or they get four messages in a day.

How CampGain runs flows

In CampGain, a flow is an event-triggered campaign built on a visual canvas, separate from scheduled blast campaigns because the two behave differently.

  • Start from a template or from scratch. Ready-made flows cover abandoned cart, abandoned checkout, welcome series, post-purchase, review request, win-back, and a transactional WhatsApp set for order confirmation, shipping, and delivery — each shipping with sensible timing and exit events already configured.
  • Drag-and-drop graph builder. Message nodes, delays, and conditional splits on a canvas, so the flow you see is the flow that runs.
  • Exit events on the trigger. Purchase exits a cart flow; cancellation and refund exit a transactional one. Configured on the flow, not bolted on per message.
  • Re-entry cooldowns so duplicate platform webhooks do not produce duplicate messages.
  • A readiness panel that checks a flow before you activate it — message nodes with no template chosen, channels with no connected provider, nodes nothing can reach, and abandonment flows with no exit event. Clicking a warning jumps to the node that caused it.
  • Mixed channels in one journey. A flow can send email, then WhatsApp, then SMS, using the same merge variables and the same synced Shopify catalog throughout.
  • Event ingestion built in — a storefront pixel and Shopify webhooks feed the events that trigger enrollment, with a live feed so you can confirm they are arriving and carrying identity before you go live.

See how flows and campaigns fit together.

Start with one

Build abandoned cart. Two messages, an exit on purchase, and a test where you enroll yourself and then complete the purchase to confirm the second message does not arrive.

Let it run for a month and measure revenue per enrollment. That single flow usually justifies the whole exercise — and it teaches you the mechanics you will reuse on every flow after it. For how these flows fit alongside scheduled sends, see our multi-channel campaign guide; for the audiences behind them, the segmentation guide.

Frequently asked questions

What should I automate first in ecommerce marketing?

Abandoned cart recovery, then the welcome series. Cart recovery reaches people at the highest intent they will ever have, and the welcome series reaches them at the moment they just chose to hear from you. Both trigger on unambiguous events and need only a few messages to pay for the setup time.

What is an exit condition and why does it matter?

An exit condition removes someone from a flow when the flow's goal is met — most often, a purchase ends a cart recovery sequence. Without it, customers who already bought keep receiving 'you forgot something' messages, which damages trust more than the flow ever earned.

What is the difference between a campaign and a flow?

A campaign is a one-time send to an audience you choose, with a start time. A flow is always-on: it has no audience and no start date, and it enrolls individual shoppers as they trigger it. Campaigns create spikes; flows create a revenue baseline that runs without anyone pressing send.

Do I need a large list before setting up automation?

No — automations built early scale with you, and a welcome flow performs best while every subscriber is fresh. The bigger prerequisite is event tracking: a flow can only enroll a shopper whose event carries an email address or phone number.

How many messages should an automated flow contain?

Two to four for most flows. Add a message only when you can say what it contributes that the previous ones did not. Extra steps in an always-on flow compound across every enrollment, so a weak message costs you continuously rather than once.

Marketing Automation Flows Abandoned Cart Triggers Ecommerce
LA

Laxman Anand · Data Strategist at CampGain

Writes about marketing automation for e-commerce teams — the same playbooks the CampGain platform automates every day.

More Marketing Automation articles →

CampGain is coming

In development

The playbooks on this blog are what we’re building into the product: one drip campaign, delivered over email, RCS/SMS, and WhatsApp, synced to your Shopify catalog.

Join the waitlist

Keep reading

Get in touch

Talk to a human

Join the waitlist to hear the moment we open, or write to us directly — questions about your channel setup, your Shopify store, or what we’re building are all welcome. We reply within one business day.