Icon

WhatsApp Templates

Abandoned cart WhatsApp template with a discount code

5 abandoned cart WhatsApp templates with a discount code, from real messages. Why 10% is enough and why the code belongs in the second message.

5 min read

Blog Image

This is the cart reminder that carries a code. If you use one, our data says it belongs in the second message, about 24 hours after the first. And it is clear on one more point: on TextYess, cart flows with a code bring an order from 12.7% of delivered messages for the median brand, against 14.8% for flows without one. So the discount is a margin decision, not the lever that recovers the cart. If you use one, these are the messages that work best.

What works, from the messages brands send on TextYess

  • A code doesn’t lift the first reminder. First messages with a discount bring orders from 11.8% of delivered messages, against 12.9% without. Start without a code, as in our abandoned cart reminder.

  • The second message is worth sending, with or without a code. Sent about 24 hours after abandonment, it brings around 28% of a cart flow’s orders. A code doesn’t rescue it: second messages with a code convert 5.2%, those without 6.7%.

  • 10% is the norm, and enough. Every top discounted cart flow on TextYess uses 10 to 15%. In campaigns, deeper discounts showed no clear lift.

  • Make the code effortless. The best messages pre-apply the code in the link, add a copy-code button or put the code in bold. In campaigns, sends with a copy-code button bring 1.51× the orders of the same brand’s sends without one.

  • Stop at two messages. Flows with three or more messages fall to 7.5% per message.

Templates

1. The short classic with a code

The TextYess preset, which several brands send almost word for word. A fashion brand gets 19.3% with it, and a beauty brand gets 21.8% with a near-identical version.

Message

👋 Hi {{first_name}}, it’s {{brand}}.
Did you leave something in your basket? Use the code *{{discount_code}}* and save {{discount}}% today.

Tap below to finish your order!

  • Header: none

  • Buttons: URL “Complete my order”, copy code

  • Example values: {{first_name}} = Emma, {{brand}} = Casa Lino, {{discount_code}} = BASKET10, {{discount}} = 10

2. A loyalty code from a real person

For returning customers. A person from the team writes, the code rewards them as a customer, and the link opens the basket with the code already applied. A supplements brand sends this to repeat customers and gets 30.0%, the highest of the discounted cart messages we looked at.

Message

Hi {{first_name}},
I’m Laura from *{{brand}}*. Just a quick note: your basket is still waiting for you 🌿

As a {{brand}} customer, you can use the code *{{discount_code}}* for *{{discount}}% off* your reorder, on baskets over £40.
The link below opens your basket with the code already applied.

If you need help with how to use the products or what to pair them with, just reply here.

  • Header: none

  • Buttons: URL “Recover my basket”

  • Example values: {{first_name}} = Emma, {{brand}} = Casa Lino, {{discount_code}} = LOYAL15, {{discount}} = 15

3. Payment still pending

For shoppers who reached payment and stopped. It shows the order value and keeps a small extra discount “reserved” for them. A shoe brand sends this an hour after abandonment and gets 20.5%.

Message

Hi {{first_name}}, the payment for your £{{total}} order at {{brand}} 👠 is still pending.
Tap “Back to my order” below to finish it.

Still unsure? If you complete your order now, we’ve reserved an extra {{discount}}% off for you with the code *{{discount_code}}* at checkout 🤩

  • Header: none

  • Buttons: URL “Back to my order”

  • Example values: {{first_name}} = Emma, {{total}} = 119, {{brand}} = Casa Lino, {{discount}} = 10, {{discount_code}} = WHATSAPP10

4. Second message, with a real deadline

The 24-hour follow-up. It doesn’t repeat the first reminder: it brings something new, the code, with an expiry you will actually enforce. Mild urgency helps a little in campaigns (1.20×) when it is real.

Message

Hi {{first_name}}, one last thing from {{brand}} ✨
Your basket is still saved, and we’ve set aside *{{discount}}% off* for you until *{{deadline}}*.

Copy the code below and use it at checkout. After that, the code expires.

  • Header: none

  • Buttons: copy code, URL “View my basket”

  • Example values: {{first_name}} = Emma, {{brand}} = Casa Lino, {{discount}} = 10, {{deadline}} = midnight tomorrow; copy-code button = BASKET10

5. Reassurance first, code second

For a brand with a trust argument: customer numbers, free returns, a product that solves a clear problem. A cycling gear brand selling in English sends this kind of message and gets 15.4%. Use your own real figures.

Message

Hey {{first_name}} 👋 you left some gear in your basket.
Over 50,000 riders already trust {{brand}}. Free delivery and free returns, no hassle.

Finish your order and use code *{{discount_code}}* to save {{discount}}% 👉

  • Header: none

  • Buttons: URL “Complete my order”

  • Example values: {{first_name}} = Emma, {{brand}} = Casa Lino, {{discount_code}} = WELCOME10, {{discount}} = 10. Write your own real customer number in the text: it doesn’t change, so it doesn’t need a variable.

When to send it

Send the reminder without a code within 30 minutes to 2 hours of abandonment, then this message about 24 hours later, only if the shopper still hasn’t ordered. Don’t add a third message. With TextYess both messages go out automatically from your Shopify checkout data, and the second is skipped if the order comes in first.

Meta category

A cart reminder is marketing whether or not it has a discount, and a code makes that even clearer. Don’t submit it as utility, because Meta will reject it or move it to marketing. If the code has a real expiry, you can use Meta’s limited-time-offer template, which shows a countdown and a copy-code button. Source: Meta template categorisation.

Avoid rejection

  • Keep symbols like % and £ outside the variables and use plain sample values (10, not 10%). Meta rejects special characters inside variables.

  • One copy-code button per template, and the sample code can be 20 characters at most. Use letters and numbers only.

  • In the limited-time-offer template the offer text is limited to 16 characters and the body to 600, and footers aren’t allowed.

  • Don’t start or end the body with a variable: “save {{discount}}% today.” needs the words after it.

  • Button labels can be 25 characters at most. Full rules: Meta template review.

FAQ

Does a discount increase abandoned cart recovery on WhatsApp?

Not in our data. Cart flows with a code convert 12.7% for the median brand on TextYess, against 14.8% without, and a code in the second message didn't raise its result either. Use a discount if it fits your margins and your customers expect it, not as the main lever.

How much discount should I give?

10% is the norm. Every top discounted cart flow on TextYess uses 10 to 15%, and deeper discounts showed no clear lift in campaigns.

When should I send the discount?

In the second message, about 24 hours after abandonment, and only if the shopper hasn't ordered. The first message works as well without a code.

What's the best way to show the code?

Make it effortless: a link with the code already applied, a copy-code button, or the code in bold. In campaigns, sends with a copy-code button bring 1.51× the orders of the same brand's sends without one.

Related templates

Abandoned cart reminder, Price drop and Welcome message.

See all 20 WhatsApp message templates for ecommerce.

Author info

Head of Marketing

Share post

See what TextYess would plan for your store.

See what TextYess would plan for your store.

See what TextYess would plan for your store.