Sokoban punished me for years until one rule reshaped how I play it: a box you can only push, never pull, so the corner you shove it into is the mistake you can never take back.
What I cover
1. Remember you can only push
Everything in Sokoban flows from one rule: your character can push a box but never pull it. That sounds minor and it changes everything. It means a box can be moved into a position it can never leave, and unlike most puzzles there is no taking that back within the level. Before I touch any box, I hold this rule front of mind, because half of solving Sokoban is simply not creating a dead end you cannot escape.
2. Never push a box into a corner
A box pushed into a corner is stuck permanently, because you would need to pull it out and you cannot. The same is true of a box pressed flat against a wall with no room to approach the side you would need to push from. These are the classic dead ends, and spotting them before they happen is the core defensive skill. Any box that is not meant to finish in that corner should never be pushed toward it, full stop.
3. Plan backward from the goals
On a tricky level I do not start by pushing the nearest box, I start at the goal squares and work backward. For each goal I ask which box will end there and from which direction it must arrive, since that tells me where my character needs to stand and what path the box must take. Reasoning from the destination back to the start turns a chaotic board into a set of clear requirements, and it exposes impossible plans before I waste moves on them.
4. Solve boxes in the right order
Placing boxes in the wrong order is a quiet way to lose a level that looked winnable. A box parked on its goal, or sitting mid-route, can block the path another box needs later. I think about which boxes must be placed last because they would otherwise get in the way, and which corridors need to stay clear until a particular box has passed through. Getting the sequence right is often the whole puzzle, even when each individual push is obvious.
5. Use undo as a thinking tool
Good Sokoban players lean on undo and restart, and there is no shame in it. Because so many mistakes are permanent, undo is how you safely test an idea: push a box, see whether the position still works, and step back if it does not. I treat it as a way to explore the level rather than a confession of failure. Testing a sequence, undoing, and refining it is exactly how the hardest levels get solved, and it beats staring at a board that is already locked.
6. Break big levels into zones
Large Sokoban levels look overwhelming because you try to hold the whole thing in your head at once. I break them into zones instead, treating each cluster of boxes and its nearby goals as a smaller puzzle to solve in turn. The trick is to work out an order for the zones so that solving one never blocks the path you need for another, which ties back to thinking about sequence. Clearing a level then becomes a series of manageable sub-puzzles rather than one giant tangle. When a big level stumps me, it is almost always because I skipped this step and started pushing boxes before I understood how the zones connect. A minute spent mapping the level into parts saves many wasted, unrecoverable pushes.
If you want the wider background on where this puzzle comes from, the Sokoban article on Wikipedia is a worthwhile read.
FAQ
Can I pull boxes in Sokoban?
No. In classic Sokoban you can only push, never pull, which is the single most important rule. It means many mistakes are permanent, so you have to think before you push.
How do I get a box out of a corner?
Usually you cannot. A box pushed into a corner it does not belong in is stuck for good, so the answer is to avoid it entirely and restart or undo when it happens.
Where should I start on a hard level?
Work backward from the goal squares. Figure out which box has to finish where and from which direction it must be pushed in, then plan the moves that make that possible.
How do I approach a very large level?
Break it into zones, each a cluster of boxes with its nearby goals, and solve them in an order that never blocks another zone. Small sub-puzzles are far easier than one giant tangle.