Search for your own discount code right now. If you have ever sent WELCOME10 or SUMMER20 to a mailing list, there is a good chance it is sitting on a coupon site, indexed by Google and auto-applied by browser extensions at checkouts you never emailed. A shared code does not stay shared with your subscribers - it becomes public infrastructure. This article covers how that leak actually happens, what it costs, and how single-use codes generated per recipient close the hole entirely.
How a shared code escapes
The path is shorter than most store owners think. One subscriber pastes the code into a coupon site for karma points, or a browser extension with millions of users observes the code working at your checkout and adds it to its database automatically. From that moment, every visitor running that extension gets your email-exclusive discount applied - including the ones who arrived from paid ads, organic search or a full-price bookmark. You keep paying the discount long after the campaign ended, on orders that never needed an incentive.
The damage is not just margin. Shared codes destroy your measurement: when a code circulates, code redemptions stop telling you anything about whether the email worked. And a code that never really expires trains customers to search for a coupon before every purchase, which quietly erodes your full-price business.
What a unique code changes
A unique discount code flips every one of those problems. Each recipient gets their own code, created as a real discount in your store at the moment the email is sent. It works once. It expires on a date you chose. If it shows up on a coupon site anyway, it dies after a single redemption instead of bleeding for months. And because each code maps to exactly one recipient, redemptions become clean attribution: you can see precisely who bought because of the email.
Setting it up in MailingPlatform
On any campaign, or on a Send Email step inside an automation, enable Unique store coupon and fill in the recipe: which connected store should issue the codes, the discount type and amount, a code prefix, how many days codes stay valid, and a recipe key. Then place the {{coupon_code}} merge tag in the email where the code should appear - it works in the subject line too. At send time the platform creates the discount in your Shopify or WooCommerce store for that recipient and merges the code into their email. If an email does not contain the tag, no code is created, so you never mint codes nobody sees.
The recipe key controls reuse. The same subscriber going through the same flow again gets the same live code rather than a stack of new ones, and when their code expires, the next send issues a fresh one. Use different recipe keys for different flows - a welcome discount and a win-back discount should never collide, and separate keys keep the redemption reporting per flow honest.
How tight the lock is, per platform
On Shopify, when the recipient's email matches an existing Shopify customer, the discount is bound to that customer account - nobody else can redeem it even if the code leaks. Recipients without a customer account get a normal single-use code, which anyone could technically redeem, but only once. On WooCommerce, codes are created through the MailingPlatform plugin and restricted to the recipient's email address at checkout. In both cases you can audit every issued code in your store's own discount overview, because they are real store discounts, not a layer the email platform simulates.
Where unique codes earn their keep
- Welcome flows. The classic 10% signup offer is the single most leaked code on the internet. Making it unique protects the margin on your most-searched discount. Pair it with the welcome series that lands the first order.
- Abandoned cart flows. If you discount at all in cart recovery, a unique code with a short expiry creates real urgency - "this code dies Thursday" only works when it is true.
- Win-back offers. A win-back incentive goes to your coldest audience; a leaked win-back code gives your deepest discount to everyone. Unique codes contain the blast radius.
- VIP and loyalty offers. An "exclusive" reward that a coupon extension applies for every visitor is not exclusive. Per-customer codes keep the promise honest.
Keep the recipe disciplined
Unique codes remove the leak, not the cost of discounting itself, so the usual guardrails still apply. Keep validity windows realistic - 7 to 14 days works well for welcome and cart flows, long enough to act on, short enough to mean something. Prefer threshold offers ("save on orders over €75") or free shipping where a flat percentage would give away margin on orders that were happening anyway. And resist discounting every email: the strongest use of a unique code is as a genuinely occasional, genuinely personal offer.
Reading the results
Because every code maps to one recipient, redemption data finally means something. Watch the redemption rate per recipe key rather than per campaign: it tells you which flow's offer actually moves people, and whether a 10% code performs measurably better than free shipping for the same audience. Check the margin, not just the count - a redeemed code on an order that grew past the threshold is a win, a redeemed code on an order that would have happened anyway is the cost of doing business, and the split between the two is visible in your store's order data because each code is a real store discount. If a recipe's redemption rate is near zero, the offer is wrong or the expiry is too short; if it is suspiciously high, check whether the code appears somewhere it should not.
Set it up once, use it everywhere
Unique coupons work with both store integrations out of the box: the Shopify app connects in one click, and the WooCommerce plugin handles code creation through your existing store connection. The full field-by-field reference lives in the unique store coupons help article, and {{coupon_code}} is documented with every other tag in the merge tags reference.