How to use the sudoku solver
- Click the first cell and type the givens row by row. Arrow keys move between cells; leave blanks empty.
- Or paste the whole grid as 81 characters, reading left to right, top to bottom, with 0 or a dot for each blank.
- Press Check validity to confirm no digit repeats in a row, column or box.
- Press Count solutions to see whether the grid has none, exactly one or many solutions.
- Press Next step for one logical step with the technique named, or Solve for the whole answer.
- Press Clear to empty the grid and start again.
Using a sudoku solver to get better, not just unstuck
Solve gives you the answer, but Next step is where the solver earns its place. It finds the simplest technique that makes progress, names it, and shows the cells involved.
How step explanations work
The step solver tries techniques in order of difficulty: naked single, hidden single, pointing pair and triple, naked and hidden pairs and triples, box-line reduction, X-wing, Y-wing, swordfish, and finally forcing chain. It uses the first one that works, so the explanation is always the easiest route available, which is the one you would want to learn.
Some steps place a digit. Others only remove candidates, for example an X-wing that clears a digit from two columns; the explanation then lists the pattern cells and what they rule out, and the next step shows the placement that follows. If a grid needs more than a short chain, the step is called Guess and the digit comes from the solution.
A way to practise
Enter a grid you are stuck on and press Next step once. Read only the technique name and try to find the pattern yourself before looking at the highlighted cells. After a few puzzles you will notice which technique keeps stopping you. The difficulty pages explain each one.
What each button does
- Solve: fills in every empty cell with the completed grid.
- Next step: finds one logical step, names the technique and highlights the cells it uses.
- Check validity: looks for a digit repeated in a row, column or box and tells you plainly if there is one.
- Count solutions: reports 0, 1 or many. A proper puzzle has exactly one.
- Clear: empties the grid.
Validity, solution counting and the sudoku checker
A grid can fail in two different ways. It is invalid if the givens already break the rules, such as two 5s in one row; Check validity catches that, and an invalid grid gets a clear message rather than an answer. A valid grid can still have no solution, when the givens contradict each other several steps later, or more than one.
Count solutions runs a fast search that stops as soon as it finds a second answer, so the result is 0, 1 or many. Every Tidy Puzzles grid is generated to have exactly one, and this is the same check the generator uses.
Why a newspaper sudoku can have several solutions
Most of the time it is a typing slip: a missed given or a 6 entered as an 8 changes the puzzle. Compare your entry with the page row by row. Otherwise, a puzzle with fewer than 17 givens always has several solutions, and a small number of printed puzzles are simply flawed, with a clue lost in printing or never checked for uniqueness. If your grid shows many solutions after careful checking, you have probably found one of those.
Hints, daily and printables
The solver runs entirely in your browser; nothing you type is uploaded. For a fresh puzzle, the game pages offer five levels with the same technique-naming hints, the daily sudoku gives everyone the same grid, and the printable pages make PDF sheets with solutions.
Plays anywhere, no app, no account
The sudoku solver grid fits a phone screen, accepts a pasted grid from any app, and can be filled entirely from the keyboard. Tidy Puzzles runs entirely in your browser: there is no app to install, no account to create and no interstitial before you can play. After the first visit the game also works offline, because each puzzle is generated on your device from a seed. Every board can be played with the keyboard alone, on a phone or a desktop, and your stats and unfinished puzzles stay in this browser rather than on a server.