Cart recovery

Abandoned Cart Email Discounts: Which Incentives Work Best, and When They Teach Customers to Wait

by Angelo Doni · Updated on 2026-10-10 · 7 min read
Sequence of three abandoned cart emails where only the third contains a personal discount code with an expiry date

In short

Explains why a discount in the first abandoned cart email trains shoppers to abandon on purpose and wait for it, and which incentives to try first. Shows when a discount makes sense and how to set up codes that don't spread or eat into your margin.

A discount in an abandoned cart email pays off only under three conditions: not in the first email, never for every customer, and only when price is really the obstacle. The incentives that work best come before it: free shipping, easy returns, a real review, honest stock levels. In every other case a discount hands margin to people who would have bought anyway and, over time, teaches customers to abandon the cart and wait for the code. Below you'll find why that happens, which incentives to use before a discount, when a discount is the right call and how to set up codes so they don't get out of hand. At the end there are three example emails: two that work and one to avoid.

Why a discount in the first email does more harm than good

Someone who gets "15% off your cart" an hour after closing the page learns one simple thing: abandoning pays. The next time they won't abandon out of distraction, they'll abandon to wait. And they'll tell others: recovery codes circulate in group chats and on coupon sites faster than you'd think.

There is also a math problem. One hour after abandonment, purchase intent is still high, and a share of those shoppers would have come back with a plain reminder. Every discount given to them is margin lost, not an order recovered. The typical result is a flow that "converts well" in the report and earns little at the register.

What actually holds shoppers back

The Baymard Institute puts the average cart abandonment rate at 70.22%, calculated across 50 studies. In its research on US shoppers, excluding those who were only browsing, the top cause is extra costs that are too high (shipping, taxes, fees) at 40%; next come delivery that is too slow (20%), not trusting the site (19%) and an unsatisfactory return policy (13%).

Almost none of these causes is solved by a percentage-off code. That's why the incentives that work before a discount are different ones:

  • Free shipping over a threshold, if you offer it: saying so clearly removes the most common objection.
  • Easy returns: the window and the process in one line.
  • A real review of the product in the cart.
  • Honest availability: "only 3 left in your size," but only if it's true.
  • Support: a name and a way to ask a question before buying.

When a discount makes sense

A discount is a tool, not a reflex. It works in four specific situations: in the third email, when the reminder and the reassurance haven't been enough; for a first purchase, because someone who doesn't know the store perceives more risk; on products with margin that can absorb it; and on carts above a threshold, where even a small incentive is worth real dollars and the absolute margin stays healthy.

Situation Recommended lever Discount yes/no
First email, within 1-2 hours Reminder + shipping and returns No
The customer has bought before Related review or new arrivals No
Product already on sale Real availability No
Cart below the free-shipping threshold How much is left to reach free shipping No
Second email, at 24 hours Review or product detail No
Third email, new customer, product with margin Personal code with an expiry date Yes
High-value cart, third email Personal code or free shipping Yes
First WhatsApp or text message Reminder and support No

How to set up codes so they don't spread

If you decide to use a discount, the rules matter more than the percentage. Four are enough to avoid almost every problem.

Valid for the first purchase only. A customer who has already bought doesn't need to be convinced to trust you; they need a reason to come back, and that comes from a newsletter, not from the recovery flow.

Not combinable with products already on sale. Otherwise someone who abandons a marked-down item gets a discount on top of a discount, often below cost.

A short, real expiry. 48 hours, and when it expires the code really stops working. An expiry that gets extended teaches people to ignore every expiry that follows.

One code per customer, not a public code. Klaviyo can generate unique single-use codes to drop into the email; a code that's the same for everyone, like "COMEBACK10," ends up online within days.

In the flows AchillesAI creates, these rules apply to the store's evergreen codes: they can be limited to the first purchase or exclude products already on sale, and the code never appears in the first email. Above all, AchillesAI doesn't offer a code to someone who can't use it: a repeat customer, or a cart made up only of sale items, gets an email without a discount instead of a promise that fails at checkout.

What about text messages and WhatsApp?

WhatsApp and text messages get read within minutes, which is why they come first in the sequence. For that very reason they shouldn't contain discounts: a code sent an hour after the abandonment, on the most personal channel there is, is the faster version of the first-email mistake. A WhatsApp message works better as a reminder with an offer of help ("if you have doubts about sizing, reply here"). Remember too that WhatsApp requires templates approved by Meta and the customer's explicit consent.

Three example emails

1. First email, no discount, that works (supplement store)

Subject: Your magnesium is still in your cart

Hi Emily, you left Magnesium and Potassium, 60 tablets, in your cart. Shipping is free over $40 and your order already qualifies. If it's not right for you, you have 30 days to return it. [Complete your order]

Why it works: it removes the most common objection, shipping costs, without touching the price.

2. Third email with a well-built discount (jewelry store, new customer)

Subject: A code just for you, valid until Thursday

Hi Daniel, the silver hoop earrings are still available. Since this would be your first order with us, here's a personal 10% code: DANIEL-7KQ2. It's valid until Thursday at 11:59 p.m., on a single order. [Back to your cart]

Why it works: it arrives after two emails without an incentive, it's personal, it has a real expiry and a clear reason (first order).

3. A badly done email (clothing brand)

Subject: LAST CHANCE!!! 20% OFF EVERYTHING

Hey, forget something? Use SAVE20 on the whole site, even on sale items! Offer valid today only. [Buy now]

What's wrong: it's the first email, so the discount arrives before any reassurance; the code is public and will end up on coupon sites; it stacks on top of sale prices; and "today only" isn't credible if the same email goes to every abandonment.

Where to start

Open your recovery flow and check which email contains the discount: if it's the first, move it to the third and replace it with shipping and returns. Then switch to unique codes, limited to first purchases and excluded from products already on sale. Finally, check that the flow stops at the first order, so nobody gets a code after already paying full price.

For the exact timing of each email, read when to send abandoned cart emails; for more annotated messages, see the abandoned cart email examples; for the full picture, the abandoned cart recovery guide.

Frequently asked questions

Should I put a discount in my abandoned cart email?

Only in certain cases: not in the first email, never for every customer, and only when price is really the obstacle. In most abandonments the real blockers are shipping, delivery time or trust, and a discount there gives away margin without fixing the problem.

Which email in the sequence should include the discount code?

The third one, 48 to 72 hours after the abandonment, once the reminder and the reassurance haven't worked. Put in the first email, a code teaches customers that abandoning a cart pays off.

Is it better to use a public discount code or a unique code for each customer?

A unique code for each customer, single-use and with an expiry date. A public code ends up on coupon sites and gets used by people who would have paid full price.

Can I send a discount by text message or WhatsApp to recover a cart?

Not in the first message. Text messages and WhatsApp are personal channels that get read right away: a code sent an hour after the abandonment has the same effect as a discount in the first email, only faster.

Sources

abandoned cartdiscount codesemail marketingklaviyotext messages
Angelo Doni
Angelo Doni
Co-founder of AchillesAI · Performance Marketing & AI

Working in performance marketing since 2017. Designs AI tools and connectors for ecommerce marketing and is the technical mind behind AchillesAI.

Read in: itenfresde

Recover more sales, automatically

AchillesAI generates and optimizes recovery emails with AI, integrating with your existing tools.

Discover AchillesAI