Abandoned Cart Recovery: WhatsApp, Email and SMS Flow (2026)
Abandoned cart recovery on WhatsApp, email and SMS: the 3-step flow, message templates, subject lines and the checkout branch, from an operator who ran it.

Updated October 2026.
Abandoned cart recovery works best as three messages, not one, led by WhatsApp with email and SMS behind it. The first goes out 30 minutes after someone leaves and simply reminds them. The second, six hours later, tells them why your brand is a safe one to buy from. The third, at 21 hours, makes an offer, but only if your brand is comfortable discounting.
Each message has a fallback. If WhatsApp isn't delivered, an email goes out. If there's no email address, an SMS does.
I've run this flow at PNG Jewellers, HealthifyStore and Cumin Co, and I'm running it for a client today. Cart recovery is one of the 13 journeys in my guide to ecommerce automation flows, and the one most brands start with.
Why people abandon their carts
About 70% of online carts are abandoned, according to Baymard Institute's average of 50 studies. Most of those people were browsing. Among shoppers who left for a reason, the biggest ones in Baymard's US survey were extra costs (40%), slow delivery (20%) and not trusting the site with their card details (19%).
That last one matters more than most brands think. Someone who added a product to their cart already likes the product. What stops them is often a quieter question. Is this the right brand to buy it from?
Most of the pages ranking for this topic are written by companies selling WhatsApp tools, so they focus on the tool. The flow below focuses on the shopper.
Who you can message on WhatsApp
You can only message a shopper on WhatsApp if you have their phone number and their permission. Meta's opt-in rules ask for both, and the opt-in has to name your brand and say they're agreeing to hear from you.
So the size of your cart flow depends on how early you know who the shopper is. A cart left by an anonymous visitor can't be followed up at all. Across the brands I've worked with, shoppers get identified before checkout in three ways.
Shoppers identified by an identity tool, no login needed. Tools like GoKwik's KwikPass, Shopflo's ShopPass and Nitro's NitroX recognise shoppers who would otherwise be anonymous. In my experience with KwikPass, the shopper doesn't have to complete an OTP sign-in on your store. If their phone number is already known in the network, it's passed into your automation with the cart event. You just have to call that event in your flow. ShopPass works through a one-click login pop-up, and NitroX says it uses its own identification technology to recognise visitors.
Pop-up sign-ups. Someone who gave their phone number or email in a pop-up, say for a first-order code, is tied to that session. When they abandon a cart, you know it's them.
Checkout starters. Anyone who reached checkout and typed their details has given you a phone number. Strictly, this is checkout abandonment, and it goes into the same flow.
Being identified isn't the same as agreeing to hear from you. Make sure the shopper has opted in to WhatsApp messages from your brand, and send the email version to anyone who hasn't. Shoppers who gave only an email go straight to the email version.
The 3-message abandoned cart flow on WhatsApp
Cart abandoners are a high-value segment, so the timings are tight. Each message goes out only if the shopper hasn't ordered or replied since the last one.
| When | Job | What it says |
|---|---|---|
| 30 minutes after leaving | Remind | Something may have come up. Your cart is saved. No discount |
| 6 hours, no response | Reassure | Why this brand is a safe choice |
| 21 hours, no response | Close | An offer, or a warm invitation back if the brand doesn't discount |

Entry, exit and conversion rules
A flow is only as good as its rules. These are the ones I set before a single message goes live.
| Rule | Setting |
|---|---|
| Entry event | Added to cart |
| Entry condition | No order or completed checkout 30 minutes later |
| Who qualifies | Known shoppers only: identified by a tool like KwikPass, pop-up sign-up or checkout starter |
| Channel check | WhatsApp opt-in, else email, else SMS |
| Re-entry | Once every 7 days at most, so nobody gets the flow on every visit |
| Exit at any step | Order placed, cart emptied, opted out, or replied to the brand |
| Conversion event | Order placed within 3 days of entering the flow |
Exit on order. This is the rule that matters most. Nobody should get a discount message after paying full price an hour earlier.
Exit on reply. When a shopper taps "Chat with us" or writes back, a person should take over the conversation, and the automated messages should stop.
Count the conversion properly. Measure orders and revenue from shoppers who entered the flow, against the same window. If you have the volume, hold back a small group that gets no messages, so you can see how many would have ordered anyway.

Abandoned cart WhatsApp message templates
These examples are written for an illustrative jewellery brand, not copied from a client. Words in bold change for each customer. The buttons sit under each message, and each button label can be up to 25 characters.
Message 1: a reminder, not a discount
The first message assumes the best. Something came up, the phone rang, the delivery boy arrived. So it's a gentle nudge to finish, with nothing else in it. No discount, no product pitch.
Leading with a discount teaches people that leaving their cart pays. Your best customers learn it fastest.
Hi Priya,
Looks like you got pulled away before checkout. Happens to all of us.
Your gold-plated hoop earrings are still in your cart, saved exactly as you left them.
Buttons: Complete my order, Chat with us
The "Chat with us" button matters. It tells the shopper you want a conversation, not just a sale, and a reply often surfaces the real question (size, delivery date, cash on delivery) that a template can't answer.
Message 2: answer "is this the right brand?"
Six hours later, don't sell the product again. They've seen it and liked it enough to add it. Sell the brand. Give them the two or three facts that make buying from you feel safe.
Hi Priya,
Buying jewellery online means trusting a brand you can't touch first. So here's what you get with us:
18K gold plating, anti-tarnish coated
Free returns within 7 days
Rated 4.6 by 12,000+ customers
Your hoops are waiting.
Buttons: Take me to my cart, Chat with us
Use your real proof only. If your returns policy, ratings or materials aren't strong yet, fix those before you write this message.
Message 3: the offer, if your brand gives one
The last message is where an incentive belongs, and whether to give one is a brand decision. Mass brands are good at discounting, and that's fine. Quality-led brands may choose not to chase anyone who won't buy without a discount. That's fine too. Each brand to its own.
For a brand that discounts. Keep the terms plain and the deadline real. A countdown that resets is noticed and remembered.
Hi Priya,
Last note from us on this one.
If you'd like to finish today, here's ₹150 off your hoops. Code COMEBACK150, valid till midnight tonight.
Buttons: Apply my offer, Copy code
For a brand that doesn't. Invite them back with help instead of money.
Hi Priya,
Your hoops are still waiting for you, and we'd love to see them on you.
Not sure about the size, the finish or what to pair them with? Just reply here and we'll help you choose.
Your cart stays saved whenever you're ready.
Buttons: View my cart, Chat with us
Before you set a discount, check what a returning customer is worth to you with the customer lifetime value calculator. A small offer that wins a customer for years is cheap. One that every shopper learns to wait for isn't.
The fallback: WhatsApp, then email, then SMS
You never know who is active where. So every step in the flow has a fallback.
- WhatsApp goes first. It's the quickest way to reach someone while the cart is still fresh.
- If WhatsApp isn't delivered, email goes out. Delivered, not opened. A delivered message has done its job of reaching them; an undelivered one hasn't, so you switch channels straight away to reach them while the cart is still fresh.
- If there's no email address, SMS goes out. Some shoppers never give an email, and SMS reaches almost every phone.
WhatsApp messages fail more often than most brands realise. Meta limits how many marketing messages each person receives, which shows up as error 131049, and I've written about why WhatsApp delivery rates drop. Without a fallback, every undelivered message is a lost cart.

Abandoned cart email and SMS: write for each channel
The fallback carries the same intent, never the same copy pasted three times. Each channel has its own interface.
WhatsApp. Crisp text and a good image of the exact product in their cart, not a generic banner.
Email. The same product image, plus brand design around it, so the email feels like it came from the brand and not a system.
SMS. One short line and a link.
Hi Priya, your hoop earrings are still in your Brand cart. Finish your order: short link
Sent only when there's no email address
Abandoned cart email subject lines
The email version needs a subject line that does the same job as each WhatsApp message. These are written for the illustrative jewellery brand above.
| Job | Subject line | |
|---|---|---|
| 1 | Remind | Your hoops are still in your cart |
| 2 | Reassure | Why 12,000 customers trust us with their jewellery |
| 3 | Close | ₹150 off your hoops, till midnight |
Name the product they left, not "your cart". Keep the reassurance subject about proof you really have, and keep the last one plain about the offer and the deadline. If your brand doesn't discount, the third subject line can simply offer help: "Need help choosing your size?"
How to set up abandoned cart recovery on WhatsApp
- Use a marketing template. Meta's template categorization lists a cart reminder ("You left items in your cart") as a marketing message, not a utility one. Utility templates have to be non-promotional.
- Set the entry and exit rules first. Use the table above, so the flow stops the moment they order, opt out or reply.
- Respect button limits. Each WhatsApp button label is limited to 25 characters, and a copy-code button holds a code of up to 15 characters, according to 360dialog's template documentation.
- Register your SMS templates. In India, commercial SMS needs DLT registration under TRAI's rules: your business, your sender ID and every message template. Unregistered messages are dropped without an error, as this summary of India's SMS rules explains.
- On Shopify, add WhatsApp to the built-in emails. Shopify can send abandoned checkout emails automatically, but only by email and only to shoppers who reached checkout and entered their details. WhatsApp needs an app or an engagement platform. For Shopify stores starting out, I've written about Kwik Engage.
- Pick a tool that can branch by channel. The fallback needs a platform that can check WhatsApp delivery and switch to email or SMS. I compare the options in CleverTap vs MoEngage vs WebEngage vs Kwik Engage. To estimate what the WhatsApp messages in this flow cost, use the WhatsApp cost calculator.
Checkout abandonment and payment failure
A shopper who reached checkout and stopped is in a different place from one who left a cart. They've decided on the product and the brand. Something in the checkout got in the way. In Baymard's survey, the biggest reasons were extra costs (40%), slow delivery (20%), not trusting the site with payment (19%) and forced account creation (18%).
So the checkout message reads like service, not marketing:
Hi Priya, your checkout is saved. Hoop earrings, ₹1,499 including delivery, reaching you by Thursday.
Something not right? Reply here and a person will help.
Buttons: Complete my order, Chat with us
A discount doesn't fix a broken checkout. If the shipping charge was the blocker, a shipping waiver is the targeted fix, not a percentage off. If the same blocker keeps showing up, it belongs with your website team.
Payment failure is a branch of checkout, not its own flow. When your checkout or payment gateway sends a failed-payment event, send a message sooner than the usual 30 minutes, with a fast link back and another way to pay: UPI if the card failed, a card if UPI timed out, or COD if your brand offers it.
Checkout beats cart. If someone gets the cart reminder and then reaches checkout and stops, the checkout message goes straight away. They're acting, not being chased. One journey runs at a time, and the deeper one wins.
Product and collection abandonment are different flows
Someone who viewed a product but never added it to their cart is at an earlier stage, asking a different question: will this work for me? Someone who browsed a collection and opened nothing is earlier still. Both deserve their own journeys, not a copy of this one. I've written about them in browse abandonment: product and collection flows.
Where I fit
Most cart flows I audit send one message with a discount and stop there. Compound Lab is a retention agency that runs WhatsApp marketing for D2C brands, and setting up the full flow, with fallbacks and copy written for each channel, is the work we do for D2C brands. Book a 30-minute call and we'll look at what your cart reminders are missing.
FAQ
What is abandoned cart recovery? The messages a store sends automatically to shoppers who added products to their cart and left without buying, to bring them back to finish the order. It usually runs as two or three messages across WhatsApp, email and SMS.
What is the difference between cart and checkout abandonment? Cart abandoners added products but never started checkout; most were still deciding. Checkout abandoners started checkout and stopped, usually because of something in the checkout itself, like a shipping charge, delivery date or failed payment. They need different messages.
How do you reduce cart abandonment? Fix the causes first: show shipping costs and delivery dates before checkout, offer COD and UPI, and keep checkout short. Then recover the rest with a short reminder flow on WhatsApp, email and SMS, with the first message about 30 minutes after the cart is left.
How do I send an abandoned cart message on WhatsApp? Use an approved WhatsApp marketing template, triggered by your store or engagement platform when someone leaves their cart. You need the shopper's phone number and their opt-in to message them on WhatsApp.
When should I send the first abandoned cart message? About 30 minutes after the shopper leaves. That's soon enough to catch them while they still remember the product, and late enough to let them finish on their own.
How many abandoned cart messages should I send? Three works well. A reminder at about 30 minutes, a message on why to trust the brand at about 6 hours, and a final message at about 21 hours, stopping as soon as they order.
Should abandoned cart messages include a discount? Not in the first message. Lead with a reminder, then with reasons to trust the brand, and keep any discount for the last message, only if your brand is comfortable discounting.
How do I recover abandoned carts on Shopify? Shopify can send abandoned checkout emails automatically to shoppers who entered their details at checkout. To add WhatsApp and SMS, connect an app or engagement platform that can send a flow and switch channels when a message isn't delivered.
What is a good abandoned cart recovery rate on WhatsApp? There's no independent benchmark yet. Most published figures come from companies selling WhatsApp tools. Track how much revenue the flow recovers each month and improve against your own baseline.
Losing carts and only sending one reminder? Book a 30-minute call.

Free audit
Watch delivered, not opened.
The WhatsApp delivery audit. The checks I ran at Cumin Co, from reading error codes to frequency, replies and retries, in one PDF.
- How to read 131049 and five other failure codes
- Checks on trust, replies, frequency, journeys and retries
- A grid to score every message, and an 8-week tracker
Sent. Check your inbox.
The audit is on its way to .