A single store-wide code does two things at once: it discounts the customers who were going to buy anyway, and it ends up on a coupon aggregator within a day. A code generated for one customer and sent in one email does neither, and it takes no more work to run.
What a personalized coupon email does differently
It issues a code that belongs to one recipient, is limited to one use, and expires. Everything else follows from those three properties.
Because the code is unique, it cannot be shared on an aggregator site, which is where public codes go within hours of being issued. Because it is limited to one use, a leak costs you one order rather than a month of margin. And because it expires, the email has a reason to be acted on, which is the part a permanent store-wide discount can never have.
The measurement changes too. A public code tells you how many people used a discount. A personal code tells you which email produced which order, which means you can finally compare a win-back against a review request instead of guessing.
Where a personal code is worth sending
Four moments repay it. The second abandoned cart email, where the code is the reason to come back rather than a reward for leaving. The thank-you after a review, where it costs little and converts well because the customer is already favourably disposed. The win-back to a customer who has not ordered in months, where the code is doing the work of reminding them the store exists. And the apology after a problem with an order, which is the one place a generous code pays for itself immediately.
What they have in common is that the code goes to someone the store already knows something about. That is also the argument against a public code during a peak season: the people most likely to use it are the ones who needed it least.
Setting the expiry and the value
Short expiry windows work better than long ones, and seven days is the usual starting point. A code valid for three months is a code the customer intends to use and never does, and it also sits on your books as an open liability for a quarter.
On value, the honest answer is that it depends on margin, but the common mistake is predictable: stores set the win-back code too low and the cart-recovery code too high. The customer who abandoned a cart was already most of the way to buying and often needs only the reminder, while the customer who has not ordered in eight months needs an actual reason.
It is also worth knowing when a code gets used, so the discount shows up next to the order rather than in a report nobody opens. Our walkthrough on how to send an email when a coupon is used covers that side of it.
Generating the code at the moment the email is sent is what makes it personal rather than public. Customer Coupons creates a one-use code inside the automation, sets its expiry and value there, and drops it into the message as a placeholder.
Summary
A personalized coupon email issues a code tied to one recipient, limited to one use and given an expiry date. Each property solves a problem a public code has: a unique code cannot be posted to an aggregator, a one-use limit caps a leak at a single order, and an expiry gives the email a reason to be acted on. Attribution improves as well, because a personal code identifies which email produced which order rather than only how many people claimed a discount.
Four moments justify one: the second abandoned-cart email, the thank-you after a review, a win-back to a lapsed customer, and an apology after a problem with an order. All four go to someone the store already knows something about, which is the opposite of a store-wide code whose heaviest users are the people who needed it least. Seven days is a sensible default expiry, since a code valid for a quarter is an open liability the customer never redeems. On value, stores usually set win-back codes too low and cart-recovery codes too high, because an abandoned cart often needs only a reminder while a lapsed customer needs a reason.
Frequently asked questions
These three come up when a store moves off public codes.
What happens to the code if the customer never uses it?
It expires and stops being usable. Codes that pile up unused are worth reviewing, since a low redemption rate usually points at the timing rather than the value.
Can a personal code be restricted to certain products?
Yes, and this is where it beats a public code outright. The restriction can follow what the customer actually bought rather than being set once for everyone.
Do unique codes slow the store down?
Not at the volumes most stores run. Each code is a single record created when the email is sent, not a batch generated in advance.

