ZobiResearchStart growing revenue

SMS Marketing Automation: Build Flows That Know When to Stop

Build ecommerce SMS flows with clear entry, send checks, exit rules and reply ownership. Compare documented controls, test collisions and use the filled workbook.

Written byRene Siller
About 14 min read
Updated:
GuideMake Zobi a preferred source
Learn about our editorial policyLearn about our research methodology

Sources checked 28 October 2026. Original source periods retained; additional primary documentation and study versions checked 28 October 2026.

Uses a selected article brief with sources. ChatGPT and Perplexity send the brief and start a request. Claude may need sign-in or paste; Gemini uses copy/paste. Full article below.

Full article, downloads and prompt
Download articleDownload AI source digest

Copy the complete article or download it for later.

Contents

Quick answer

SMS marketing automation uses customer events and rules to decide when a text should be sent. For an ecommerce store, that might mean welcoming a subscriber, following up on a cart or checking whether a repeat customer needs another order. The hard part is deciding what should happen when several of those rules are true at once.

Source context: Read Klaviyo’s distinction between entry and delivery; Read Omnisend’s audience-filter and exit-condition definitions.

SMS automation should choose the next useful action

A shopper can browse a product, begin checkout and ask a delivery question in the same visit. Three valid triggers do not mean three useful messages. Once the question arrives, another reminder may be the least helpful thing the store can send.

Build each flow around four decisions: who may enter, what must still be true before a message goes out, what ends the flow and who owns a reply. Then check how that flow interacts with the others. The workbook below starts with a filled example plan so you can work through those decisions without designing a spreadsheet first.

See the seven-flow plan · Use the failure tests · Compare the documented controls

A trigger, a send limit and an exit rule are different controls

A trigger explains why somebody enters a flow. It does not establish that the person should receive every message waiting inside it. A purchase, a reply, a change in stock or another relevant conversation can change the next good action.

Give each control one clear job
Control Question it answers What it does not establish
Entry rule Should this shopper join this flow now? Whether the next message will still be useful later
Send check Should this particular message go out now? Whether other journeys or future entries are stopped
Exit event What should end this active journey? Whether a past event disqualifies a new journey
Re-entry rule When may the same person enter again? Whether an earlier journey has already finished
Cross-flow rule Should another active workflow take precedence? Who should answer an unexpected reply
Reply ownership Who decides what the shopper needs next? Whether scheduled promotions have actually been paused

These distinctions matter in real products. Klaviyo documents Smart Sending as a limit on message delivery, rather than flow entry. Omnisend distinguishes audience filters checked at entry from exit conditions checked while a contact is in the workflow. Those are useful controls, but they are not interchangeable.

Entry, delivery and exit are three different decisions.
A useful operating model, grounded in documented differences between entry qualification, message suppression and workflow exit. Map these roles to your platform’s documented controls and evaluation order.

Read Klaviyo’s distinction between entry and delivery

Read Omnisend’s audience-filter and exit-condition definitions

Design each lifecycle flow backward from its exit

Before choosing the first message, write the event that makes the sequence unnecessary. A cart reminder normally has no job after the order is completed. A welcome offer may no longer fit after a first purchase. A replenishment nudge may be premature if the shopper has already reordered.

Use the following as an example store plan. It gives each flow a starting point, a current-state check and an exit. It is a way to make your policy explicit, not a universal timing recipe or a description of every platform’s defaults.

An example seven-flow operating plan
Flow Entry signal Check again before sending Exit or change course
Welcome New SMS subscriber No purchase or open service question Purchase or move to a more relevant conversation
Browse reminder Eligible product browse No checkout, purchase, or unresolved question Checkout begins or purchase
Cart recovery Eligible checkout started No completed order; current cart context still useful Purchase or cart no longer relevant
Post-purchase Completed order Message serves this order; no duplicate request Task completed, cancelled order, or new support case
Replenishment Expected consumption point Timing fits product and repeat-order history Repeat order or shopper says not needed
Win-back Chosen inactivity condition No recent purchase or open support issue Purchase, reply, or policy limit
Campaign Approved audience and launch No higher-priority unresolved need or recent relevant send Campaign completes or audience no longer eligible

Choose a named role to own each row, even if one person initially owns several. “The automation handles it” is not a reply owner. The person needs permission to stop a promotion, correct a rule and resolve a question that the flow cannot answer.

Start with the flows your store can operate well. If you cannot explain why a flow should stop, adding another message to it will not fix the uncertainty. A simple welcome or cart journey with clear exits can be a better starting point than a large lifecycle map with no accountable owner.

One shopper can trigger three flows without needing three messages

Suppose a shopper views a product at 9:00, starts checkout at 9:05 and asks about delivery at 9:07. A browse reminder, a cart reminder and a campaign audience may all be relevant to the rules on the screen. But the shopper has now told the store what is blocking the decision.

For this example store, the policy is to stop the browse reminder when checkout begins, put the delivery question with an answer owner and hold a conflicting promotion while that question is open. If an order arrives, the cart reminder exits. Those are proposed store rules; the actual platform settings and event timing still need to be tested.

A browse event gives way to checkout, then an open delivery question is assigned to an owner.
Worked sequence for an example store. The connections show the intended decision order as browsing gives way to checkout and an open question receives an owner.

Postscript’s browse-flow documentation gives a concrete cancellation example: beginning checkout can remove a subscriber from a browse automation. That is a better starting point than assuming every reminder should wait for a purchase before it stops.

Also test the opposite event order. Postscript explains that a purchase before a later browse-flow entry does not cancel that later entry. A recent-buyer qualification rule and a future cancellation event solve different problems. Your test set needs both.

Read Postscript’s browse-flow cancellation example

Read the purchase-before-entry troubleshooting example

Use the controls your platform actually documents

An operating policy is only useful if the platform implements it. Look up the behavior behind the setting, especially when two controls sound similar. The important question is what happens to this contact and this waiting message, not whether the interface has a box labeled frequency.

Documented controls have different scopes
Platform and control What the source establishes Practical implication
Klaviyo Smart Sending Each channel has its own window. Skipped messages are not automatically rescheduled. Transactional messages are exempt. A skipped marketing SMS is not a promise that it will be sent later.
Klaviyo re-entry criteria Control new flow entries. They do not skip other messages already scheduled within an existing entry. Inspect active journeys as well as the next permitted entry.
Postscript cancellation trigger An event can remove a subscriber from a flow; cancellation criteria are configurable. Choose the relevant exit and test event order.
Omnisend audience filter and exit condition Audience filters are checked at entry; exit conditions are checked during the workflow. Use the correct control for a condition that can change while a message waits.
Omnisend Frequency and Skip Contacts Frequency limits entry into the same workflow. Skip Contacts addresses overlap across workflows. Check existing cross-flow controls before building a new orchestration layer.

Do not copy a numeric default from this guide and treat it as the right cadence for your store. Klaviyo’s documented SMS Smart Sending default is 24 hours, but it is configurable. A default describes the product’s starting behavior. It does not prove the best frequency for your customers.

Treat timing restrictions, delivery suppression, workflow cancellation and a person taking over as separate behaviors to verify. A paused or skipped message is not necessarily an exited journey, and changing a setting may affect people already waiting differently from new entrants.

Read the current Smart Sending behavior and exceptions

Read Omnisend’s Frequency and Skip Contacts guidance

A shorter re-entry window can leave two journeys running

Consider a worked example with a 28-day journey and a 14-day re-entry window counted from the trigger. The first entry starts on day 0. A second qualifying event on day 14 can fall outside that entry window while the first journey is still running. From day 14 until day 28, two journeys may overlap unless another rule prevents it.

A 28-day example journey and a 14-day entry window can overlap from day 14 to day 28.
Worked 14/28-day example following Omnisend’s documentation. Its frequency timer starts at entry rather than exit. Actual overlap also depends on the configured trigger and cross-workflow rules.

Omnisend explicitly documents entry time as the start of the Frequency clock. It also notes that editing a workflow does not reset that timer. Klaviyo separately warns that limiting new entries does not remove other messages already scheduled in an existing entry.

So inspect the longest live path through the flow, including delays and branches. Then test a second qualifying event while the first journey is still active. Check which entry the messages belong to and whether your intended exclusion actually prevents the duplicate experience.

When publishing a change, decide what should happen to contacts already in the flow. In Omnisend’s documented frequency-change behavior, letting contacts finish preserves the original rules for those contacts. A settings screenshot alone does not show that the waiting population has adopted the new policy.

Read how the frequency clock and changes affect existing contacts

A reply needs an owner and a clear effect on the next send

A keyword branch can route an expected response. It does not mean every unexpected question will receive a useful answer. Decide what your system should do when it cannot resolve the shopper’s meaning from the information it is allowed to use.

For an example store, a routine delivery question can be answered from the current merchant-approved policy when the answer is clear. If the answer depends on missing order details, the next action can be a clarifying question or assignment to a person. A question outside the approved answer set should not be filled in with a confident guess.

The example store stops marketing for an opt-out, answers only from approved information, and assigns unresolved questions to a person.
Proposed reply policy for an example store. Define the approved answer set, stop rules and escalation owner, then test that each unresolved question reaches that owner.

Make handoff observable. Record who owns the question, what they need to resolve and whether the conversation was actually accepted. A “handoff requested” event is different from somebody taking responsibility. Give the owner a way to hold conflicting messages under the store’s policy and a clear event for returning the shopper to an appropriate journey.

Do not confuse manual approval of an outgoing flow message with handling an incoming reply. They are different tasks. Confirm the inbox, routing, ownership and suppression behavior your chosen setup actually provides.

Test the cases that should stop the next message

A happy-path test proves that a message can be sent. It does not prove that the system can avoid sending the wrong one. Use a small set of clearly specified cases before expanding the programme, then retain them when a workflow changes.

Use expected outcomes, then record what actually happened
Case Worked input Expected behavior
Purchase after cart entry An order arrives while a cart reminder waits Cancel the cart reminder
Purchase before later browsing A recent buyer browses another product Apply recent-buyer entry rule; do not rely on an old cancellation event
Repeated product views The same shopper triggers multiple entries Confirm entry policy and per-message suppression separately
Long flow, short re-entry 28-day journey with 14-day re-entry from entry time Inspect simultaneous journeys on days 14 to 28
Shopper asks a new question A reply arrives before the next promotion Assign an answer owner; pause conflicting promotion under store policy
Changed frequency setting The rule changes while contacts are waiting Verify behavior for existing and new contacts separately
Skipped SMS A message is skipped by a channel sending limit Log skipped status, do not assume it was automatically deferred

For every case, keep the shopper state, event timestamps, flow entry, send decision, exit reason and owner action together. Record the platform result in a separate field. The download includes the expected answers above and a clearly marked place to record the observed result after you run the test.

Add a negative control that would expose a broken rule. For example, purchase after entry should stop the reminder, while purchase before a later eligible entry needs the appropriate qualification policy. If both cases pass merely because no message was configured to send, the test has not proved the exit works.

Use the same discipline for missing data. If order context or an approved answer is unavailable, check that the system follows the intended fallback. A blank field should not silently become evidence that the shopper has not purchased or that a question has been answered.

Measure the change in shopper outcomes, not just flow revenue

First check operation: whether the intended messages were sent, which were skipped or cancelled, whether replies found an owner and whether conflicting promotions were held. These measures show whether the workflow behaves as designed. They do not, by themselves, establish added profit.

To evaluate business impact, define the comparison before the test. Use eligible shoppers drawn from the same population, a common observation window and the same outcome definition. Keep important service communication consistent. Do not compare different customers or different periods and attribute the whole difference to automation.

Here is a worked calculation. Suppose two equally sized groups each contain 1,000 eligible shoppers. The automation group records 40 orders and the comparison group records 35. At $20 contribution per order before message costs, the difference is $100. If the extra messaging cost is $80, the net contribution difference is $20. These inputs explain the calculation; they are not a study or a Zobi result.

Worked contribution arithmetic
Item Calculation Worked value
Order difference 40 minus 35 5 orders
Contribution before extra messaging 5 times $20 $100
Extra messaging cost Supplied worked input $80
Net contribution difference $100 minus $80 $20

The arithmetic does not establish that the difference is reliable or caused by the workflow. Decide the test duration, required precision, guardrails and stopping rule in advance. Watch unsubscribes, unresolved questions and avoidable service friction alongside revenue. A flow that gets attribution is not automatically a flow that should be expanded.

Build the smallest system that can make these decisions

Start with a flow register and the controls already available in your platform. Confirm a reliable purchase event, current eligibility, clear exits and an answer owner. Use native re-entry, cross-flow exclusions and message-level checks where they meet the need. You may not need another tool to fix a missing rule.

Add complexity only for a named failure that the current setup cannot handle well. That might be reconciling context across several journeys, interpreting a reply that a fixed branch cannot understand or giving a person enough information to resolve an exception. Keep the reason for each added component visible in the operating plan.

Before changing a live sequence, identify which contacts are already waiting and how the platform will treat them. Test the old and new paths with the same case set. Keep a record of the rule version so that a later delivery can be traced to the decision that scheduled it.

Use the filled automation control workbook to assign the flow owner, exit and first failure test. The three-page field guide keeps the same decisions compact for a team review.

Take the plan into your workflow review

Start with the filled seven-flow plan. Replace the green policy cells with your store rules, then run the collision cases with test contacts. Expected behavior and observed results stay in separate columns.

Automation workbook · Visual field guide · Read the field guide

Where Zobi fits the conversation

Rules can establish that a cart is still open. They cannot, by that fact alone, explain what a shopper means when they ask a new question. That is the part of the lifecycle where the conversation matters more than the next scheduled reminder.

Zobi’s EQ models are designed to read a shopper’s question in context and choose a relevant reply from merchant-approved information, within the programme parameters the merchant approves. For a DTC team, the useful evaluation is how that approach fits checkout questions and repeat-purchase conversations, including the cases that need a person.

Bring one live flow, the rules that end it and a handful of real recurring questions to the discussion. Walk through what information an answer needs, when a promotion should give way to the conversation and which exceptions your team must own. That is a more concrete buying decision than asking whether a product can “do automation.”

Discuss your lifecycle and reply rules with Zobi

How this guide was researched

We compared ecommerce SMS strategy guides with the platform documentation behind the controls that matter to this decision. The implementation sections use independently reread Klaviyo, Postscript and Omnisend documentation. Strategy advice was used to identify questions to investigate, not as proof of performance.

The seven-flow plan, collision sequence and reply policy are worked operating designs. The timing calculation follows Omnisend’s documented 14/28-day example; the contribution calculation uses worked inputs. Vendor behavior stays attached to the vendor that documents it. We have not treated a default sending window, a suggested cadence or a platform feature as a universal operating rule. Sources were checked on 28 October 2026.

Read our editorial policy · Learn about our research methodology

Questions about SMS marketing automation

What should an ecommerce store automate first?

Start with one useful lifecycle job that has a reliable trigger, current eligibility, an exit and an answer owner. Welcome or cart recovery can be candidates, but the right first flow depends on your store’s customer need and operating capacity.

Does a sending limit stop someone entering a flow again?

Not necessarily. Klaviyo explicitly distinguishes Smart Sending from flow entry. Check the re-entry behavior and the waiting messages separately in your platform.

Does a purchase automatically stop every reminder?

Do not assume that it does. Configure and test the relevant exits. Postscript documents a case where a purchase before a later browse entry does not cancel that later journey, so recent-purchase qualification can still matter.

How often should a store send automated SMS?

There is no cadence established by these sources that is best for every store. Match the message to the shopper’s current need, apply actual platform controls and test frequency with consistent outcomes and guardrails.

Can an AI replace the person who owns replies?

A useful evaluation needs an approved answer set, clear limits, an escalation policy and evidence that unresolved cases reach an accountable owner. Sending a message or requesting a handoff is not proof that the customer’s question was resolved.

Primary sources behind the operating decisions

Klaviyo, Understanding Smart Sending. Channel-specific delivery windows, skipped-message behavior and transactional exception.

Klaviyo, profiles scheduled multiple times. Re-entry criteria and the distinction between entry and message delivery.

Postscript, Guide to Automation Flows. Configured cancellation and the purchase-before-entry troubleshooting case.

Postscript, browse abandonment flow. Checkout-start cancellation example and platform-specific browse guardrails.

Omnisend, workflow settings. Entry-only audience filters and continuously checked exit conditions.

Omnisend, Frequency settings. Entry-time clock, existing-contact behavior and cross-workflow Skip Contacts.

Publisher disclosure

Zobi publishes this guide and offers conversational commerce services. Product descriptions, worked examples and source documentation have distinct evidential roles. This is an unranked editorial guide, not independent product testing.

Rene Siller

Rene writes about ecommerce retention and conversational commerce at Zobi. This guide combines primary documentation with practical decision tools.

Tell us about your store.

Start growing revenue