
Most people who put something in your online cart will not buy it today. Baymard Institute, which aggregates dozens of studies, puts the average documented cart abandonment rate at roughly 70 percent. For a store that spends money to bring each visitor in, that is the biggest leak in the business, and also the cheapest one to patch. This guide shows how to build an abandoned cart recovery programme across email, WhatsApp and SMS: what to send, when to send it, how to stay inside the rules in India, and how to tell whether it is working.
What is abandoned cart recovery?
Abandoned cart recovery is a set of automated follow-ups sent to shoppers who added products to a shopping cart or started checkout and then left without paying. The follow-up reminds them what they left behind, answers the objection that probably stopped them, and makes it easy to return with one tap. It is triggered by behaviour, not by a calendar, which is why it converts better than most broadcast campaigns.
Why shoppers abandon carts
You cannot fix what you have not diagnosed. Baymard’s checkout surveys consistently find the same handful of reasons, and several of them are in your control.
| Reason shoppers give | What it means for recovery |
|---|---|
| Extra costs (shipping, tax, fees) were too high | Show total cost early; lead recovery messages with free shipping thresholds or COD |
| Site wanted me to create an account | Offer guest checkout; recovery link should skip login |
| Delivery was too slow | State delivery date in the reminder |
| Did not trust the site with card details | Add trust cues, UPI and wallet options, clear returns policy |
| Checkout was too long or complicated | Shorten forms; pre-fill from the saved cart |
| Just browsing or comparing | A gentle nudge or price-drop alert, not a hard sell |
A large share of abandoners were never going to buy right now, so do not expect to recover everything. A realistic goal is to win back a meaningful minority of the carts that carry buying intent, and to learn from the rest.

What you need before you start
- A cart event. Your store must send an event such as
cart_updatedorcheckout_startedwith the items, values and a recovery URL. See sending your first event. - An identity. You can only message people you can identify: logged-in users, or visitors who gave an email or phone number earlier in checkout.
- Consent per channel. Email permission, WhatsApp opt-in and SMS consent are separate. Store each one on the profile.
- Approved templates. WhatsApp templates and Indian SMS templates need approval before use.
- A stop signal. A
purchase_completedevent so nobody gets a reminder for something they already bought.
The sequence that works: timing and channels
Most programmes use three touches. The exact gaps depend on your product. Fast-moving consumables suit shorter gaps; high-consideration items such as furniture or electronics can stretch them.
- Touch 1: about one hour after abandonment. Send a plain reminder on the channel the customer prefers, usually WhatsApp or email. Show the items, the cart total and a single button back to checkout. No discount yet.
- Touch 2: about 24 hours later. Address the likely objection. Mention delivery time, easy returns, COD or EMI. Add one or two reviews for the main item.
- Touch 3: about 72 hours later. This is where a small incentive can go, such as free shipping or a limited discount, with a clear expiry. Use SMS or WhatsApp for urgency.
- Exit the moment they buy. End the journey on
purchase_completed. Also exit if they unsubscribe on any channel.
Hold the discount back. If every abandoner gets a coupon in the first message, shoppers learn to abandon on purpose. Reserve incentives for the last touch or for high-value carts, and measure whether they pay for themselves.
Email vs WhatsApp vs SMS for cart recovery
| SMS | |||
|---|---|---|---|
| Reach in India | Wide, lower urgency | Very high, personal | High, character-limited |
| Rich content | Images, multiple items, reviews | Images, buttons, catalog | Text and a link |
| Approval needed | Domain authentication only | Template approval and opt-in | DLT registration and template |
| Cost per message | Lowest | Per-message Meta charge plus fees | Per-SMS charge |
| Best role | Touch 2 with detail | Touch 1 and 3 | Touch 3 nudge or fallback |
Run channels in sequence rather than all at once, and respect consent. If someone has only opted in for email, a WhatsApp message to the same person is a policy problem, not a clever tactic. Our guides to the WhatsApp Business API, DLT registration for SMS and email authentication cover the setup each channel needs.
What to write: message examples
Short, specific and useful beats clever. These examples can be adapted to your brand.
| Touch | Channel | Example copy |
|---|---|---|
| 1 | Hi Asha, you left the Trail Runner shoes (size 7) in your cart. They are still in stock. Complete your order: {{link}} | |
| 2 | Subject: Still thinking it over? Body: Free returns for 15 days, delivery by Friday, and 4.6 stars from 1,200 reviews (use your real figures). | |
| 3 | SMS | Your cart expires tonight. Free shipping on orders above Rs 999 if you finish now: {{short_link}} |
Use real product images and names in the message wherever the channel allows it. If you personalise with Liquid, a snippet like the one below pulls the first item and the cart total from the event. See personalising with Liquid for the syntax.
Hi {{ contact.first_name | default: "there" }},
You left {{ event.items[0].name }}{% if event.items.size > 1 %} and {{ event.items.size | minus: 1 }} more item{% endif %} in your cart.
Total: {{ event.cart_total }}
Pick up where you left off: {{ event.recovery_url }}Send a representative example to a test contact, and check how the message renders on a small Android phone before it goes live.
Staying inside the rules in India
Recovery messages are promotional or transactional depending on content, and that classification decides what approvals you need. A reminder with an offer is promotional. A plain status message tied to a request the customer made can be transactional, but regulators and platforms apply the labels, not you.
- SMS: register your sender ID and templates on DLT, include your opt-out wording and respect the permitted sending hours for promotional messages.
- WhatsApp: only message customers who opted in, use approved templates outside the 24-hour window and give a way to opt out.
- Email: include a visible unsubscribe link and, for bulk mail, the one-click header that Gmail and Yahoo expect.
- Data: tell customers in your privacy notice that you send cart reminders and how to stop them.
How to build it in Flowfox
The whole flow is one journey. Your store sends a cart event, the journey waits, checks whether a purchase has happened, and sends each touch only if it has not.
{
"event": "cart_updated",
"properties": {
"cart_id": "C-88213",
"cart_total": 3498,
"currency": "INR",
"recovery_url": "https://shop.example.com/cart/C-88213",
"items": [
{ "name": "Trail Runner", "sku": "TR-07", "qty": 1, "price": 3498 }
]
}
}- Send the event. Post
cart_updatedandpurchase_completedfrom your store or via a FlowConnect integration. - Create a segment for high-value carts. Use segments to separate carts above a threshold so they can receive a stronger offer.
- Build the journey. Trigger on
cart_updated, wait 60 minutes, branch on purchase, then send touch 1. Our first journey guide and the notes on goals and waits show each step. - Set a goal and quiet hours. Make
purchase_completedthe journey goal so contacts leave automatically, and avoid late-night sends. - Launch to a small group first. Hold back a control group that receives nothing, so you can measure true uplift.
The ecommerce solution ships with a cart recovery journey you can install and edit, and the journey builder lets you add channels or delays without code.
Measuring whether it works
Opens and clicks are vanity numbers here. The figures that matter are recovered orders and recovered revenue, compared against a control group that received no reminders.
| Metric | How to calculate | Why it matters |
|---|---|---|
| Recovery rate | Recovered orders / carts that entered the journey | Overall effectiveness |
| Recovered revenue | Sum of order value from recovered carts | What the programme earns |
| Incremental lift | Recovery rate in test group minus control group | Separates real wins from carts that would have returned anyway |
| Unsubscribe or opt-out rate | Opt-outs / messages sent | Early warning of over-messaging |
| Cost per recovered order | Message and tool cost / recovered orders | Checks the maths |
The panel above is a plan, not a result. Your own numbers will depend on category, average order value and list quality, so measure for at least two full buying cycles before drawing conclusions. The analytics module reports journey conversions next to revenue, and the funnels guide helps you find where checkout itself is leaking.
Mistakes that quietly cost sales
- Reminding people who already bought. Always exit on purchase. Nothing damages trust faster.
- Linking to the home page. The button must restore the cart, ideally with the address and payment method remembered.
- Discounting everyone. Test incentives against a no-offer variant.
- Ignoring mobile. Most Indian traffic is on phones, so keep messages short and buttons thumb-sized.
- Forgetting browse abandonment. Shoppers who viewed a product three times but never added it are also worth a gentle nudge.
The best cart reminder reads like a helpful shop assistant, not a countdown timer.
Win back sales on autopilot. Install the cart recovery journey and start with one channel today.
Once recovery is running, widen the lens. Map the whole path to purchase with our customer journey mapping guide, plan seasonal pushes using the festival campaign use case, and keep first-time buyers coming back with the retention playbook. More tactics are collected on the Flowfox blog.
Frequently asked questions
What is abandoned cart recovery?
It is an automated sequence of reminders sent to shoppers who added items to their cart or began checkout but did not complete the purchase, usually by email, WhatsApp or SMS.
What is the average cart abandonment rate?
Baymard Institute, which aggregates many studies, puts the average documented rate at around 70 percent. Your own rate will vary by category, device and checkout design.
When should I send the first abandoned cart message?
Most stores send the first reminder about one hour after abandonment, a second at around 24 hours and a final one at around 72 hours. Test the gaps against your buying cycle.
How many abandoned cart emails should I send?
Three is a common limit: a plain reminder, a message that handles objections, and a final nudge with an optional incentive. More than that tends to raise unsubscribe rates.
Is WhatsApp better than email for cart recovery?
Often WhatsApp gets faster attention, but email carries richer detail and costs less. A mix works best, with WhatsApp or SMS for urgency and email for explanation, and only for channels the customer has opted into.
Do I need a discount in abandoned cart messages?
No. Many carts return on reminder alone. Use incentives sparingly, typically in the last message or for high-value carts, and compare against a control group.
Is it legal to send cart abandonment messages in India?
Yes, provided you follow channel rules: DLT registration for SMS, opt-in and approved templates for WhatsApp, and unsubscribe options for email. Check with your legal advisor for your specific case.