Crate count is a bad measure
A level with eight crates in a wide open room can be easier than a level with three crates in a tight one. Room means you can push a crate about, change your mind, and approach from any side. The crates barely interact, so the level is really eight small puzzles solved one after another.
Difficulty lives in interaction. A level is hard when moving one crate changes what is possible for another, so the crates have to be solved as a single problem rather than a list.
That is why our twelve levels are ordered by how much the crates constrain each other rather than by how many there are, and why level nine can feel harder than level twelve.
Corridors remove your options
A one-square corridor is the cheapest way to make a level demanding. Inside it a crate can only travel along the corridor's axis, and you can only be at one of two ends. Every choice about that crate collapses into two.
What makes corridors interesting rather than merely restrictive is that they usually also block you. A crate sitting in the only doorway between two halves of a level means the order of operations is forced: everything you need from the far side must be arranged before the crate goes through, because afterwards you cannot follow it.
When you meet a level with an obvious bottleneck, work out first what you need from each side. That is usually the whole plan.
Forced ordering is where the depth is
The deepest levels are the ones where several crate routes cross, so only one sequence works. There is nothing visibly difficult about any individual push — the difficulty is entirely in the order.
Forced ordering is what makes solving backwards so much more effective than pushing forwards. Work each crate's route back from its mark, then look for routes that cross: whichever crate would be sitting on another's path has to move later. It also tells you which mark to fill last, which is usually the one nearest the middle of everything.
Marks in corners come first
A crate parked on a corner mark cannot be moved again, so it becomes a wall for the rest of the level. If that wall blocks a route you still need, you have lost. Fill corner and dead-end marks early, while the routes past them are still open.
Why this puzzle is genuinely hard for computers too
Sokoban is a standard benchmark in automated planning, and it is famous for being brutal. The reason is worth knowing, because it explains why the puzzle resists brute force by hand as well.
The number of positions grows with the number of ways crates can be arranged, which explodes very quickly. Worse, the moves are not reversible: a search that wanders into a deadlock cannot back out, so a naive search wastes almost all of its effort in regions of the problem that are already lost. And solutions can be long — some published levels need hundreds of pushes — so even a good search has to look very deep.
What makes it tractable at all, for machines and for people, is recognising dead positions early. Our board checks after every move whether any crate can still reach a mark, which is exactly the pruning a solver does. The deadlocks guide covers the patterns to spot by eye.
The practical lesson: do not attempt to solve a hard level by trying things. Plan the routes, check the ordering, and only then start pushing.
How our twelve levels were built
Every level here was drawn by hand and then checked by machine. The checker performs a breadth-first search over crate arrangements and reports whether a solution exists and how many pushes the shortest one needs. A level that failed the check did not go on the site.
That guarantee is narrower than it sounds, and worth being precise about: we can promise every level is solvable, and we can tell you the minimum number of pushes. We cannot promise a level is fair to a human being, because that is a judgement rather than a computation. The difficulty labels are estimates from our own play, as they are everywhere on this site.
The progression is deliberate. The early levels teach one idea each: the corner deadlock, the wall you cannot leave, the doorway you have to plan around. The middle levels combine two. The last few require working backwards from the marks, because forward play will not find them in a reasonable time.
If a level defeats you, the useful move is to undo back to your last confident position rather than restarting. You already know where that branch leads, and the history is kept for the whole level.
Try level nine
Pick a middle level and, before touching anything, work out which crate has to move first. Then check whether the plan survives contact with the board.