Game Design

Designing fair difficulty curves for mobile puzzle games

Players forgive hard levels. They do not forgive unfair ones. A practical framework for shaping difficulty in match, sort and block puzzles — and how to measure whether it is working.

Written by CMZ Soft5 min read
Arrows Lace Puzzle level layout

Every puzzle studio eventually has the same argument. Someone looks at a funnel chart, points at a level with a 40% fail rate and says "too hard". Someone else says "that's the point". Both can be right. The question that matters is not how hard a level is but whether it feels fair — and fairness is something you can design and measure.

This is the framework we use across our tile-match, block-escape and sort puzzles. It is not exotic. It is a set of habits that keep the player's trust while still giving them something to push against.

What "fair" means to a player

A level feels fair when three things are true at the moment of failure:

  1. The player understands why they lost. They can name the mistake — "I filled the tray too early", "I should have moved the blue cup first".
  2. They believe a different choice would have worked. The level was solvable from where they were, not just in theory.
  3. The cost of trying again is proportional. One more attempt is cheap in time and attention.

When any of those breaks, the player does not think "I need to get better". They think "this game is rigged", and that is the moment they leave.

Guarantee solvability before you tune anything

For deterministic puzzles (block escape, sort, most tile-match layouts) this is a tooling problem, not a design one. Every level in our pipeline is run through a solver before a designer ever plays it. We record:

  • Whether a solution exists at all.
  • The minimum number of moves to solve.
  • How many distinct solution paths exist within the move budget.
  • Where in the solve the branching collapses — the point at which most wrong choices become unrecoverable.

Levels with a single narrow path and an early collapse point are the ones that generate "rigged" feedback, even when they are technically solvable. The solver flags them; a designer decides whether to keep them as deliberate spikes or widen the path.

For levels with randomness (shuffled tiles, hidden cups), solvability becomes a distribution. We seed and simulate hundreds of instances and look at the share that can be solved with the tools the player is likely to have. If a level is solvable 60% of the time without boosters, that number has to be a design choice, not an accident.

Shape the curve in chapters, not in a straight line

A difficulty curve for a live puzzle game is not one long slope. Players think in sessions and chapters. Inside each chapter we design a shape that looks roughly like this:

  • Opening (2–3 levels): near-certain wins that reintroduce the mechanic and any new element.
  • Build (4–6 levels): rising challenge with one soft spike in the middle.
  • Peak (1–2 levels): the chapter's hard levels, where a booster moment is meaningful.
  • Release (1–2 levels): easier levels that pay out and let the player end the session on a win.

This shape repeats with a gently rising baseline. It matters for two reasons. First, it gives players regular wins, which is what keeps them coming back for the harder stuff. Second, it gives us predictable places to put boosters and offers where they help rather than intrude.

Introduce one thing at a time

New mechanics — lids on cups, ice on tiles, locked stacks — are the main way puzzle games stay fresh over hundreds of levels. They are also the main way difficulty becomes unfair by accident. Our rules:

  • A new element gets its own tutorial level where it is the only thing that can go wrong.
  • It appears in isolation for at least two more levels before it combines with anything else.
  • Its first combination with another mechanic is never a peak level.

If a player fails on the first level where two mechanics interact, they cannot tell which one beat them. That is an unfair failure by definition.

Design the booster moment, do not just sell it

Boosters are where difficulty design and monetization meet. A booster offer after a failed level is not inherently manipulative — it is only manipulative when the level was designed to be lost. The difference shows in the data: levels where booster use is high and retry retention is high are levels where players felt helped. Levels where booster use is high and next-day return is low are levels where players felt squeezed.

We design the "near miss" deliberately on peak levels: the tray is one slot short, the last cup is one move away. That makes the booster feel like the obvious tool for the situation, and players who decline it still understand what to do next time.

Measure fairness with funnels, not opinions

Per-level funnels are the single most useful dashboard a puzzle team can have. For every level we look at:

  • Attempt rate (share of players who reach the level and start it).
  • Fail rate per attempt and attempts to complete.
  • Completion time distribution.
  • Booster usage and quit-after-fail rate.
  • Drop-off: share of players whose last session ended on this level.

A hard-but-fair level shows a high fail rate with a high retry rate and normal drop-off. An unfair level shows a high fail rate with a spike in quit-after-fail and next-day churn. The numbers separate the two cases cleanly, which ends the "too hard / that's the point" argument with evidence.

We review every level whose drop-off is more than two standard deviations above its chapter's mean. Most of the time the fix is small: a slightly wider tray, one fewer distractor, moving a tutorial one level earlier.

Difficulty is a promise

A difficulty curve is a promise you make to players about how the game will treat them. Keep it honest — solvable levels, one new thing at a time, regular wins, help that helps — and players will happily accept levels that make them think. Break it, and no amount of content will bring them back.

This is how we build levels for our own games and for partners. If you are working on a puzzle title and want a second opinion on your curve, talk to us.

See how we put this into practice

Our games are built on the ideas we write about.

Explore Our Games

Building a puzzle game?

We partner with publishers on prototypes and full productions.

Talk to us

Related games

Zen Garden: Flower Sort gameplay screenshot

Zen Garden: Flower Sort

Sort Puzzle

Group identical flowers into their vases and clear the board — a calm, beautiful take on the sort puzzle.

LiveAndroid
View game
Hole Crowd: Bus Jam gameplay screenshot

Hole Crowd: Bus Jam

Crowd Jam

Open escape paths so every stickman drops into the hole of its color and boards the right bus before your slots run out.

LiveAndroid
View game

Related articles

All insights
Icons of CMZ Soft's games on Google Play
Studio Updates·

Introducing CMZ Soft: a product-driven puzzle studio from Hanoi

Who we are, what we have shipped — sixteen titles on Google Play in under a year — and how we intend to work with publishers, investors and the people who join us.

2 min read

Mosaic of mobile puzzle game icons
Market Analysis·

The mobile puzzle landscape in 2026: what a small studio can still win

Puzzle remains one of the largest and most durable mobile genres, and one of the most competitive. Where the opportunities are for a focused studio: sub-genre gaps, production speed, hybrid economies and disciplined UA.

4 min read

Portfolio of prototype and live game icons
Analytics·

A go / kill framework for mobile game prototypes

Deciding which prototypes deserve more investment is the most expensive decision a studio makes. The decision framework we use: thresholds agreed upfront, a small set of metrics, and three outcomes — go, iterate, kill.

4 min read