← All posts

How to Recover Abandoned Carts on WhatsApp: A Shopify Playbook (2026)

The exact 3-message WhatsApp recovery sequence, when to send each, and honest math to size the opportunity for your store, using real sources instead of marketing numbers.

In a WhatsApp cart recovery sequence, your second message must not be a discount. Most non-returns are hesitation, not disinterest, so leading with a discount trains shoppers to abandon carts on purpose just to harvest the code. This playbook gives you the executable alternative: a three-message sequence built to handle objections, the exact timing to use, the compliance rules Meta enforces, and honest math to size the revenue for your Shopify store using measured benchmarks instead of unsourced marketing claims.

How WhatsApp cart recovery works on Shopify

When a shopper abandons checkout, you send a WhatsApp message with their cart contents and a one-tap link back to checkout. The mechanic that dictates how you build this sequence is Meta’s messaging rules.

You can only send a free-form WhatsApp message inside a 24-hour customer service window, which opens when the customer messages you first and resets each time they reply . An abandoned-cart reminder is business-initiated, so it almost always falls outside that window. Outside the service window, template messages are the only type sendable .

That single rule shapes everything below: your recovery sequence must be pre-approved templates, and the shopper must have explicitly opted in to WhatsApp updates. A standard SMS opt-in or a phone number dropped in a checkout field is not sufficient consent for WhatsApp.

The 3-message recovery sequence

The default playbook for cart recovery is a countdown: a reminder, a small discount, and a bigger discount. That approach subsidizes buyers who would have bought anyway and teaches the rest to wait you out. A high-converting sequence treats recovery as a conversation, not a countdown.

Here are three compliant templates you can submit to Meta today ({{1}} are variables Meta fills at send time):

Message 1: the nudge (helpful, not salesy).

Hi {{1}}, you left {{2}} in your cart at {{3}} 🛍️ Want to finish up? Here’s your cart, ready to go: {{4}}

Message 2: handle the objection. This is where the default playbook fails. Instead of escalating to a discount, answer the unspoken question: shipping costs, sizing, or returns policy. Surface the real blocker and invite a reply.

Still thinking it over, {{1}}? Free returns within 7 days and delivery in 3–5 days. If you have a question about {{2}}, just reply here and a human will answer. Your cart: {{3}}

Message 3: the reason to act now. Only here do you add an incentive, and only if your margins allow it. The discount is the tie-breaker, not the opener.

Last nudge, {{1}}. Your cart’s still saved. Use {{2}} for {{3}} off, good for 24 hours: {{4}}

When should each message send?

Timing is where recovery sequences are won or lost. Too fast reads as surveillance; too slow and intent has decayed.

MessageSend after abandonmentWhy
1. Nudge30–60 minutesIntent is still warm; you’re a helpful reminder, not a pest
2. Objection~24 hoursEnough space to not feel pushy; surfaces the real blocker
3. Incentive~48 hoursLast touch; the discount is the tie-breaker, not the opener

Cap the sequence at three; a fourth message is where opt-outs and spam reports climb. Stop the sequence the moment the cart converts. Treat these as starting values and let your own open-and-recover data move them.

How much revenue can you actually recover?

Here is an honest model to size this for your store. Plug in your numbers; every input is labeled as an assumption (yours to set).

  • Abandoned carts / month: 1,000 (assumption: pull your real number from Shopify)
  • Average order value: ₹1,500 (assumption)
  • Recovery rate: 10% (assumption: use your own Shopify number)

Recovered revenue: 1,000 carts × 10% recovery × ₹1,500 AOV = ₹150,000 / month.

Messaging costs are a small fraction of revenue at this scale, so the variable that actually moves the number is your recovery rate. That is exactly why it’s an assumption for you to set from your own data, not a benchmark we quote. Measure it before and after you add the objection-handling message; that delta, not any number we could put here, is the honest case for the sequence.

Template approval & the gotchas

  • Get templates approved first. Marketing templates go through Meta review; submit your three before you plan the launch, not during it .
  • Opt-in is explicit. You can only message shoppers who agreed specifically to WhatsApp updates via a checkout checkbox or a click-to-WhatsApp entry point. No explicit WhatsApp opt-in, no sequence.
  • Mind the window. If a shopper replies to your objection-handling message, you are now inside the 24-hour service window and can talk freely (and for free), so make replies easy and staff them .

One honest note on “98% open rates”

You will often see the claim that WhatsApp gets a 98% open rate. We won’t use it, because it has no verifiable source. The widely-repeated “98% open rate” has no published methodology. It traces to WhatsApp’s own early marketing copy .

Independent analyses of real campaigns put measured read rates around ~68% for opt-in broadcasts, scaling to 90%+ for fresh lists and 65-75% for stale ones . That is still far above email, but we would rather give you a number you can plan against than one you can’t source. That is the standard we hold every figure on this site to.


You can run this entire playbook manually. But if you want to automate the trigger, templating, and timing at scale, BusinessOnBot handles the infrastructure so you don’t have to. See how it works or book a demo.

Sources and method

Every factual claim above is anchored and traceable: