Sonar is a blog about marketing, code and coffee from Submarine.

Kill the promo code box

Imagine you're out shopping and you pick up something you want to buy. You take it to the till and just before you hand over your credit card, the shop assistant says "this is cheaper if you know the secret password".

But you don't know the secret password.

Are you still going to go ahead and buy it? And if you do, how are you going to feel about it? Maybe a bit cheated?

As a retailer, using this tactic in-store would be insane - so why is it acceptable online? Most ecommerce sites have a promo code field on their checkout page, even though it's existence leads to a truly horrible experience for their customers.

Here's a common use-case: a potential customer adds an item on your site to their basket, clicks "Checkout", fills in their details and then sees the promo code box. They open another tab, search Google for "[Your brand] promo code" and then they see a whole load of voucher code sites.

Clicking on these pages may result in them getting a voucher that works - in which case you're paying an affiliate commission for a sale you'd have got anyway and selling your product cheaper than you needed to. Upsettingly, that's the best case scenario here.

Most of the time though, those vouchers have expired or aren't relevant, in which case you'll still pay an affiliate commission if they continue their purchase and your customer will feel like they've missed out on an offer. They probably won't be happy. There's a good chance they'll abandon their basket entirely.

Sidenote: those voucher code sites are also showing adverts for your competitors.

Hiding the promo code box

Some retailers are pretty good at hiding the promo code field so that it's only visible after clicking a discreet link. That means that customers that have a promo code will still be able to use it, but customers without one might miss the fact that it's an option and won't go searching. Here's an example from Superdry - at first glance, this link isn't immediately obvious:

Superdry's checkout with a hidden promo box

And here's what it looks like when that link is clicked:

Superdry's checkout with the voucher code box visible

While this is much better than showing the promo code box as a default, it's still there. Instead of the shop assistant loudly saying "do you know the secret password?", it's more like they're whispering it.

Removing the promo code box

Personally, I think the best solution is to not display it ever. It's possible to still give out discounts to select customers without having to have that promo code box displayed for everyone. Here's how it works:

Step 1: Check for a parameter in the URL

Any time a visitor arrives at your site, you can check to see what parameters are in that URL. If they arrive at a page like, then you can find that code.

Step 2: Search your voucher database to see if that code exists

Step 3: Drop a cookie referencing that voucher code

Step 4: Add a notification banner that mentions the code has been added and automatically apply the discount at the checkout if that cookie is there (side note: you should probably double-check again that the voucher is valid when that order is placed).

You can then give out offers in the links that you place in your marketing emails, in banner adverts and anywhere else that you'd promote your site. If you want to promote the offers offline you can promote a URL like and then have that page 301 redirect to

This makes for a much more seamless user experience and ensures that customers that don't have a promo code won't needlessly see a promo code field.

You'll be more likely to see fewer abandoned baskets, less revenue wasted on unnecessary affiliate commissions and - ultimately - happier customers.

Published March, 2014

Submarine CRM
Submarine is a CRM built for marketing & PR teams.
Click to find out more.