All posts

Earned discount codes: discounts that don't teach customers to wait

Discount pop-ups teach customers to wait for a code. Here's why earned discount codes work better, and 5 ways to set them up without eating your margin.

, 6 min read
A faded discount pop-up next to a MojiTiles game, where a solved row of sunglasses emojis reveals the discount code MOJI10

Almost every webshop has tried it: a pop-up that offers 10% off to everyone who arrives. It works for a while. Then you notice that customers wait for the code before they buy, that the code turns up on coupon websites, and that "10% off" has quietly become your real price. There is a better way to use discount codes: let customers earn them. In this post, we look at why earned discount codes feel more valuable, and how to set them up so they bring in sales without eating your margin.

The problem with discounts for everyone

A discount that everyone gets is not really a discount. It is a lower price with extra steps. That causes a few problems that are easy to miss:

  • Customers learn to wait. If there is always a code somewhere, people stop buying at full price. They leave, search for a code and come back, or they wait for the next campaign.
  • Codes leak. A code shown to every visitor ends up on coupon websites within days. Then you are giving a discount to people who would have bought anyway.
  • It says nothing about the customer. A pop-up code tells you that someone closed a box. It does not tell you who is actually interested in your shop.
  • It feels cheap. Something that is handed to everyone is easy to ignore. Many visitors close the pop-up without reading it.

None of this means discounts are bad. It means how people get them matters.

What is an earned discount code?

An earned discount code is a code customers get by doing something first. It could be solving a small puzzle, playing a quick game or coming back on a certain day. The effort is small, but it changes how the reward feels.

Psychologists call this effort justification: we value things more when we have put a little work into getting them. It is the same reason people are proud of furniture they assembled themselves. A code that says "You cracked it!" feels like a prize. A code in a pop-up feels like an advert.

Earned codes also have a built-in filter. The people who spend two minutes cracking a daily puzzle on your website are, almost by definition, interested in your shop. Those are exactly the people you want to give a small push towards checkout.

Pop-up codes vs. earned codes

Pop-up discountEarned discount
Who gets itEvery visitorVisitors who play (or win)
How it feelsAn advert to closeA prize to use
Reason to come backNone, the code is always thereA new puzzle every day
What you learnWho closed a boxWho played, won and copied the code

5 ways to make earned discount codes work

1. Keep the game short and fair

The game is there to make the code feel earned, not to stop people from getting it. A good game for this takes a couple of minutes and can be learned in seconds. A daily puzzle like MojiTiles is a good fit: six tries to crack a code of five colours, with two practice rounds for new players before today's code counts. If you would rather use numbers, Code Breaker works the same way with digits.

2. Decide who gets the code

You have two good options, and they suit different shops:

  • Only winners. The code feels most valuable, and a fair game gives every player a real chance. This is a good default.
  • Everyone who finishes a game. Kinder and simpler, and nobody leaves disappointed. Good if your main goal is to reward attention rather than skill.

Either way, the reward should be tied to today's game. That gives people a reason to come back tomorrow, which is half the value of a daily game. We wrote more about that habit in A daily Wordle-style puzzle for your website.

3. Put limits on the code in your shop

The game decides who sees the code. Your shop system decides how it can be used. Set the code up with a few sensible limits, which you can do in Shopify, WooCommerce and most other platforms:

  • one use per customer,
  • a minimum order amount,
  • an end date, so you can change the code every month or season,
  • no stacking with other discounts or sale items, if that matters for your margin.

Changing the code regularly also limits how far it can spread, and gives you a natural moment to try a different reward.

4. Make the reward message feel like a prize

The words around the code matter as much as the number. "You cracked it! Here is 10% off your next order" feels very different from "Use code SAVE10". Keep it short, celebrate the win, and say exactly what the code does. Small rewards work well here: free shipping or 10% off is plenty when it feels earned.

5. Measure every step

With a pop-up, you mostly see how many orders used the code. With an earned code, you can follow the whole path: how many people saw the game, started playing, won, saw the code and copied it. Compare the number of copied codes with the orders that used it in your shop, and you know exactly what the game brings in. If many people win but few copy the code, try a better reward or a clearer message.

How to set up an earned discount with mojitiles

With mojitiles, you can have an earned discount code running on your website in a few minutes:

  1. Create a free account and add a game, such as MojiTiles or Code Breaker.
  2. Open Reward, type in your discount code and choose whether it is shown only when the player wins or at the end of every game.
  3. Write a short message to go with the code, like "You won! Use this code for 10% off your next order."
  4. Paste one line of code into your website. Our guide How to add a game to your website shows you how, step by step, for Shopify, WordPress, WooCommerce, Wix and more.

In MojiTiles, the code is only shown for the daily game, never in practice rounds. Your dashboard shows every step from game view to copied code. Want more people to find the game? Add an Announcement Bar that says "Crack today's code and win 10% off".

Give discounts that mean something

Discounts are not the problem. Discounts that everybody gets, all the time, are. When customers earn a code, it feels like a prize, it reaches the people who actually care about your shop, and it gives them a reason to come back tomorrow. For more on why small games work so well for shops, read 6 benefits of gamification for webshops.

Create your free account and let your customers crack their own discount code. 😎

More from the blog