Common Sudoku Techniques Explained
A simple guide to logic-based Sudoku solving steps, with verified full-grid examples for singles, pairs, triples, locked candidates, fish patterns, single-digit patterns and wings.
Sudoku is a logic puzzle — not a guessing game
A properly constructed Sudoku has exactly one solution, and you never have to guess to find it. The techniques below help you decide which number must go in a cell, or which candidates can safely be removed.
This page covers the complete set of techniques our solver uses to grade the puzzles in Alex Liam Puzzles books. Every puzzle is machine-checked to have exactly one solution that logic can reach, so nothing in any of our books ever comes down to a guess.
Important: every example on this page is based on a valid full 9×9 Sudoku state. To keep the diagrams readable, only the candidates relevant to the technique are shown.
Yellow cells show a direct placement or pivot, green cells show the important pattern, and red candidate digits show the exact candidates that can be removed. The red color is used without a strike-through so the candidate digits remain easy to read.
Notation used in the examples: r means row and c means column. For example, r5c3 means row 5, column 3. Rows are counted from top to bottom, and columns are counted from left to right.
1. Scanning
Scanning means checking a row, a column, and a 3×3 box to see which numbers are already used and which position is left.
Example: scanning shows where 5 goes in the middle-right box
| 5 | 2 | · | 8 | 9 | 7 | · | 3 | 4 |
| · | · | 4 | 2 | 5 | 3 | 8 | · | · |
| 8 | 7 | 3 | 6 | 4 | 1 | 9 | 2 | 5 |
| · | · | · | 4 | · | 6 | 3 | 8 | · |
| · | · | 2 | 3 | 8 | 9 | 7 | 5 | · |
| · | 3 | 8 | 1 | · | 5 | · | · | · |
| · | 8 | 9 | · | 3 | 4 | · | · | · |
| 2 | · | · | · | 1 | 8 | 4 | 9 | 3 |
| 3 | 4 | · | 9 | 6 | 2 | · | · | 8 |
Why it works
- Look at the middle-right 3×3 box: rows 4–6 and columns 7–9. Six of its cells are still empty.
- Row 6 already has a 5 at r6c6, so the whole bottom row of the box is ruled out.
- Column 9 already has a 5 at r3c9, so r4c9 and r5c9 are ruled out too.
- One empty cell survives, so r5c8 must be the 5.
2. Naked Single
A naked single happens when one empty cell has only one candidate left.
Example: r7c4 has only one candidate
| 8 | 4 | 9 | 2 | 5 | 1 | 7 | 3 | 6 |
| 6 | 7 | 1 | 3 | 8 | 9 | 2 | 4 | 5 |
| 2 | 3 | 5 | · | 6 | · | 1 | 8 | 9 |
| · | 2 | 6 | · | 4 | · | 3 | 5 | 1 |
| 4 | 5 | 8 | 6 | 1 | 3 | 9 | 2 | 7 |
| · | 1 | 3 | · | 2 | · | 4 | 6 | 8 |
| 1 | · | 4 | 8 | 3 | · | 5 | · | 2 |
| 3 | · | 2 | · | 7 | · | 6 | · | 4 |
| 5 | 6 | 7 | · | 9 | · | 8 | · | 3 |
Why it works
Three units meet at r7c4, and between them they use up eight digits: row 7 already holds 1, 2, 3, 4, 5, column 4 holds 2, 3, 6, and the box holds 3, 7, 9. Only 8 is left, so that is the answer — no pattern-hunting needed, just the three lines that cross on the cell.
4. Pointing Pair / Pointing Triple
A pointing pair or pointing triple occurs when all candidates for a digit inside a 3×3 box lie on the same row or column.
Example: digit 8 is confined to row 1 inside the top-right box
| 1 3 7 8 | 1 2 3 7 8 | 3 7 | 1 4 5 | 2 4 5 | 6 | 1 7 8 | 1 2 8 | 9 |
| 4 | 5 | · | 7 | 8 | 9 | 1 | 1 2 | 3 |
| · | · | · | · | · | 3 | 4 | 5 | 6 |
| 2 | · | 4 | · | 6 | 7 | · | 9 | 1 |
| 5 | · | · | 8 | 9 | 1 | 2 | · | · |
| · | 9 | 1 | 2 | 3 | 4 | 5 | · | 7 |
| · | 4 | 5 | · | 7 | 8 | · | · | 2 |
| 6 | · | 8 | 9 | 1 | 2 | 3 | 4 | 5 |
| 9 | · | 2 | · | · | · | 6 | 7 | 8 |
Why it works
Inside the top-right box, candidate 8 appears only at r1c7 and r1c8. Both cells are in row 1, so the 8 for that box must be somewhere in row 1. Therefore, candidate 8 can be removed from the other cells of row 1 outside the box: remove 8 from r1c1 and r1c2.
5. Claiming / Box-Line Reduction
Claiming is the reverse of pointing. If all candidates for a digit in a row or column lie inside one 3×3 box, that digit can be removed from the rest of the box.
Example: row 5 claims digit 6 inside the middle-left box
| · | 2 | · | · | 5 | · | · | · | · |
| 4 | 5 | 6 | · | 8 | 9 | 1 | 2 | 3 |
| 7 | 8 | 9 | · | 2 | 3 | 4 | 5 | · |
| 2 | 3 | 4 | · | 6 | 7 | · | · | · |
| 5 6 9 | 6 9 | 7 | 8 | 9 | 1 | 2 | 3 | 4 |
| 8 | 6 9 | 1 | 2 | · | · | · | · | 7 |
| · | 4 | 5 | 6 | 7 | 8 | · | 1 | · |
| · | · | 8 | · | 1 | 2 | 3 | · | · |
| · | 1 | 2 | 3 | · | 5 | · | · | · |
Why it works
In row 5, candidate 6 appears only in r5c1 and r5c2, and both cells are inside the middle-left box. Therefore, the 6 for row 5 must be placed inside that box. Candidate 6 can then be removed from the rest of the same box: remove 6 from r6c2.
6. Naked Pair
A naked pair appears when two cells in the same unit contain the same two candidates, and no others.
Example: a naked pair in column 3 (all five open cells shown)
| · | 6 | 1 3 | 2 | 4 | 7 | · | 9 | 8 |
| 4 | · | 2 3 9 | 1 | 5 | 8 | 6 | 7 | · |
| 7 | · | 2 8 | 6 | 9 | 3 | 1 | · | 4 |
| 3 | 4 | 6 | 7 | 2 | 9 | 8 | 1 | 5 |
| 2 | 7 | 5 | 4 | 8 | 1 | 9 | 3 | 6 |
| · | · | 1 8 9 | 3 | 6 | 5 | 2 | 4 | 7 |
| 9 | · | 4 | 8 | 3 | 6 | 7 | · | 1 |
| 6 | 3 | 7 | 5 | 1 | 2 | 4 | 8 | 9 |
| · | 1 | 2 8 | 9 | 7 | 4 | · | 6 | · |
Why it works
Cells r3c3 and r9c3 are both exactly {2, 8}. Whichever way round they go, the two of them use up the 2 and the 8 of column 3 between them — so no other cell in that column can be either digit.
Remove 2 from r2c3 and 8 from r6c3. r1c3 keeps both its candidates: it never held a 2 or an 8 to begin with.
8. Naked Triple
A naked triple occurs when three cells in the same unit use only three digits between them.
Example: a naked triple in row 9
| · | · | · | · | · | 6 | · | 8 | · |
| 4 | · | · | · | · | 9 | · | 2 | 3 |
| 7 | 8 | 9 | 1 | · | · | 4 | 5 | · |
| · | · | 4 | · | · | · | 8 | · | 1 |
| 5 | · | · | · | · | 1 | · | 3 | · |
| · | 9 | · | · | · | · | 5 | · | 7 |
| 3 | 4 | 5 | · | 7 | 8 | 9 | 1 | 2 |
| 6 | 7 | 8 | · | 1 | 2 | 3 | · | 5 |
| 9 | 1 | 2 | 3 4 5 | 3 4 5 | 3 4 5 | 6 | 4 7 | 8 |
Why it works
The three highlighted cells in row 9 use only the digits 3, 4, and 5. Those three digits must occupy those three cells. Therefore, in the rest of row 9, only the overlapping candidates can be removed: remove 4 from r9c8.
10. X-Wing
An X-Wing forms when a candidate appears in exactly two cells in one row, and the same two columns repeat in another row.
Example: X-Wing on candidate 5 (every cell that can still hold a 5 is marked)
| 3 | 6 | 4 | 9 | 1 | 5 | 5 | 5 | 7 |
| 8 | 5 | 1 | 4 | 7 | 3 | 5 | 6 | 9 |
| · | 5 | 5 | 6 | 5 | 8 | 1 | 3 | 4 |
| · | · | 8 | 3 | · | · | 6 | 4 | 5 |
| 5 | 3 | 2 | 1 | 6 | 4 | 7 | 9 | 8 |
| 6 | 4 | · | 8 | 5 | 5 | 3 | 2 | 1 |
| · | 5 | 5 | 7 | 4 | 6 | 5 | 5 | 3 |
| 4 | 5 | 3 | 2 | 8 | 1 | 5 | 7 | 6 |
| 7 | 8 | 6 | 5 | 3 | 9 | 4 | 1 | 2 |
Why it works
In row 2, digit 5 fits only in r2c2 or r2c7, and in row 8 only in r8c2 or r8c7 — the same two columns. The four corners form a rectangle, and the two 5s must sit on opposite corners of it. Either way, one of them lands in column 2 and the other in column 7.
Those two columns are therefore spoken for. Every other cell in them loses the 5: remove it from r1c7, r3c2, r7c2 and r7c7.
11. Swordfish
A Swordfish is a larger version of an X-Wing. A candidate is restricted to the same three columns across three different rows (or the same three rows across three columns).
Example: Swordfish on candidate 6
| 8 | 1 | 2 | 7 | 5 | 3 | 6 | 4 6 9 | 6 9 |
| 9 | 4 | 3 | · | 8 | 2 | 1 6 | 7 | 5 |
| 6 | 7 | 5 | 4 | 9 | 1 | 2 | 8 | 3 |
| 1 | 5 | 4 | 2 | 3 | 7 | 6 8 | 6 9 | 6 8 9 |
| 3 | 6 | 9 | 8 | 4 | 5 | 7 | 2 | 1 |
| 2 | 8 | 7 | 1 | 6 | 9 | 5 | 3 | 4 |
| 5 | · | 1 | 9 | 7 | 4 | 3 6 8 | 6 | 6 8 |
| 4 | 3 | 8 | 5 | 2 | 6 | 9 | 1 | 7 |
| 7 | 9 | · | 3 | 1 | 8 | 4 | 5 | 2 6 |
Why it works
In rows 1, 4, and 7, candidate 6 is confined to columns 7, 8, and 9. This forms a row-based Swordfish. Those three rows must place their 6s somewhere inside columns 7, 8, and 9, so candidate 6 can be removed from the other cells in those same columns: remove 6 from r2c7 and r9c9.
12. Skyscraper
A Skyscraper works on one digit at a time. Two rows in which the digit has only two possible cells share one column — and that shared column can hold the digit only once.
Example: Skyscraper on candidate 3 (every cell that can still hold a 3 is marked)
| 3 | · | · | 2 | 9 | 4 | 1 | 7 | 6 |
| 6 | 2 | 1 | 3 | 7 | 8 | 9 | 5 | 4 |
| 4 | 7 | 9 | 1 | · | · | 3 | 8 | 2 |
| 2 | 3 | 3 | 7 | 3 | 1 | 8 | 4 | 9 |
| 9 | 3 | 4 | 8 | 2 | 3 | 5 | 1 | 7 |
| 8 | 1 | 7 | 5 | 4 | 9 | 2 | 6 | 3 |
| 1 | 3 | 2 | 6 | 3 | 7 | 4 | 9 | · |
| 5 | 4 | 6 | 9 | 8 | 2 | 7 | 3 | 1 |
| 7 | 9 | 3 | 4 | 1 | 3 | 6 | 2 | · |
Why it works
In row 5, digit 3 fits only in r5c2 or r5c6. In row 7, only in r7c2 or r7c5. Both rows include column 2, and a column holds each digit once — so r5c2 and r7c2 cannot both be 3. At least one of the two roof cells, r5c6 or r7c5, must therefore be the 3. Any cell that sees both roofs can be cleared: remove 3 from r4c5 and r9c6.
13. Two-String Kite
A Two-String Kite links a row and a column that each have only two places left for the same digit, when one cell of each lands in the same 3×3 box.
Example: Two-String Kite on candidate 2 (every cell that can still hold a 2 is marked)
| 4 | 7 | 2 | · | 9 | 2 | 5 | 1 | 6 |
| 6 | 2 | 2 | · | 2 | 1 | 9 | 3 | 4 |
| 1 | 3 | 9 | 4 | 6 | 5 | 2 | 7 | 8 |
| 2 | 4 | 6 | 5 | 1 | 7 | 3 | 8 | 9 |
| 9 | 1 | 3 | 2 | 8 | 4 | 6 | 5 | 7 |
| 5 | 8 | 7 | 9 | 3 | 6 | 4 | 2 | 1 |
| 3 | · | 1 | · | · | 9 | 8 | 4 | 2 |
| 7 | 2 | 4 | · | 2 | 8 | 1 | 9 | · |
| 8 | 9 | 2 | 1 | 4 | 2 | 7 | 6 | · |
Why it works
In row 9, digit 2 fits only in r9c3 or r9c6. In column 5, only in r2c5 or r8c5. The cells r9c6 and r8c5 sit in the same box, so they cannot both be 2. That forces the 2 to the far end of one string or the other: r9c3 or r2c5. r2c3 sees both far ends, so remove 2 from it.
14. Empty Rectangle
An Empty Rectangle appears when the candidates for a digit inside one box all lie on a single row and a single column of that box, forming an L around their crossing point.
Example: Empty Rectangle on candidate 2 (every cell that can still hold a 2 is marked)
| 6 | 8 | 1 | 2 | 3 | 2 | 5 | · | 7 |
| · | · | 2 | 7 | 1 | 5 | 3 | 6 | 8 |
| 3 | 5 | 7 | · | · | · | · | · | 2 |
| 7 | 6 | 8 | 9 | 2 | 1 | 2 | 3 | 5 |
| 1 | 2 | 4 | · | 5 | · | 7 | 8 | 9 |
| 5 | 3 | 9 | 2 | 7 | 2 | 6 | 2 | 1 |
| 2 | · | 6 | 1 | 2 | 7 | 8 | 5 | 3 |
| 2 | 7 | 3 | 5 | 8 | 4 | 2 | 2 | 6 |
| 8 | 1 | 5 | 2 | 6 | 2 | 2 | 7 | 4 |
Why it works
In the bottom-middle box, digit 2 fits only in r9c4, r9c6 and r7c5 — all of them on row 9 or column 5, which cross at r9c5. Now look at row 4: the 2 there is either at r4c5 or r4c7.
- If r4c5 is 2, column 5 is used up, so the box's 2 must sit on row 9 — and then r9c7, on row 9 outside the box, cannot be 2.
- If r4c7 is 2, then r9c7 cannot be 2 either, because they share column 7.
Both branches agree, so remove 2 from r9c7.
15. XY-Wing
An XY-Wing uses three bi-value cells: a pivot with candidates {X,Y}, and two wings with {X,Z} and {Y,Z}.
Example: pivot r5c6 with two wings
| · | · | 3 | · | 5 | 6 | 7 | 8 | 9 |
| 4 | · | 6 | 7 | 8 | · | · | 2 | 3 |
| 7 | 8 | 9 | 1 | 2 | 3 4 | · | · | 6 |
| 2 | 3 | · | 5 | · | 7 | 8 | 9 | 1 |
| · | 6 | 7 | 8 | 9 | 1 4 | 2 | 3 | · |
| · | 9 | · | · | 1 3 | 1 2 3 4 | 5 | 6 | 7 |
| · | 4 | 5 | 6 | · | 8 | · | 1 | 2 |
| 6 | 7 | · | 9 | · | · | 3 | 4 | · |
| 9 | · | 2 | 3 | 4 | 5 | 6 | · | · |
Why it works
The pivot cell r5c6 has candidates {1, 4}. One wing is r3c6 with {3, 4}, and the other wing is r6c5 with {1, 3}. No matter whether the pivot becomes 1 or 4, one of the wings must become 3. Therefore, any cell that sees both wings cannot contain 3: remove 3 from r6c6.
16. XYZ-Wing
An XYZ-Wing is an XY-Wing whose pivot keeps a third candidate. The pivot holds {X, Y, Z} and the two wings hold {X, Z} and {Y, Z}.
Example: pivot r8c7 with wings in the same column and box
| · | 1 | 7 | 6 | 5 | · | 9 | 4 | 2 |
| 6 | 2 | 5 | 7 | 4 | 9 | · | · | 3 |
| 4 | · | 9 | · | · | 1 | 7 | 6 | 5 |
| 7 | 6 | 8 | 4 | · | 5 | 2 3 | 9 | 1 |
| 1 | 4 | 3 | 9 | 8 | · | 5 | · | 6 |
| 9 | 5 | 2 | 1 | 6 | · | 4 | · | 8 |
| · | · | 6 | 5 | 7 | 4 | 1 2 3 | · | 9 |
| · | 9 | 4 | · | 1 | 6 | 2 3 8 | 5 | 7 |
| 5 | 7 | 1 | 3 | 9 | · | 6 | 2 8 | 4 |
Why it works
The pivot r8c7 holds {2, 3, 8}. Its wings are r4c7 with {2, 3} (same column) and r9c8 with {2, 8} (same box). Run through the pivot's three options: if it is 3 the first wing must be 2; if it is 8 the second wing must be 2; if it is 2, it is the 2 itself. So one of these three cells is always the 2. Unlike an XY-Wing, the target must see all three cells, pivot included: r7c7 does, so remove 2 from it.
17. W-Wing
A W-Wing uses two cells that hold the same two candidates and do not see each other, joined by a row, column or box in which one of those digits has only two places left.
Example: two {4, 6} cells joined by a strong link on 4 in row 3
| 9 | 2 | 4 6 | · | 1 6 | 8 | 3 | 5 | · |
| 3 | 1 | 4 5 6 | · | 9 | 4 6 | 8 | 2 | · |
| 4 5 | 7 | 8 | 2 5 | 3 | 2 4 | 6 | 1 | 9 |
| 8 | 4 | 1 | 3 | 2 | 5 | 7 | 9 | 6 |
| 2 | 5 | 3 | 6 | 7 | 9 | 4 | 8 | 1 |
| 7 | 6 | 9 | 8 | 4 | 1 | 2 | 3 | 5 |
| 6 | 8 | · | · | · | 7 | 9 | 4 | 3 |
| 1 | 9 | 7 | 4 | 8 | 3 | 5 | 6 | 2 |
| · | 3 | · | 9 | · | · | 1 | 7 | 8 |
Why it works
r1c3 and r2c6 both hold exactly {4, 6}, and they do not see each other. In row 3, digit 4 has only two places left: r3c1 and r3c6 — one of them is the 4. r3c1 shares a box with r1c3, and r3c6 shares column 6 with r2c6.
- If r3c1 is 4, then r1c3 cannot be 4, so it is 6.
- If r3c6 is 4, then r2c6 cannot be 4, so it is 6.
Either way, one of the two matching cells is the 6. Any cell seeing both can be cleared: remove 6 from r1c5 and r2c3.
18. Practical solving tips
- Start with scanning and singles. They solve a surprising amount of the grid.
- Use pencil marks. Pairs, triples, and advanced patterns are much easier to spot when candidates are written down.
- Clean up candidates after every placement. Many new singles appear after a good elimination.
- Check boxes as well as rows and columns. Many important patterns begin inside a 3×3 box.
- Take it step by step. Most hard Sudoku puzzles are solved through a chain of small logical steps, not one huge leap.
A quick note on difficulty
Difficulty is not determined by the number of clues alone. Two puzzles can start with a similar number of givens and still be worlds apart.
What decides the level is which solving techniques a grid actually requires — the patterns you have to reach for, not how many numbers are printed at the start. A puzzle's level is the cheapest set of techniques that solves it, not whichever pattern happens to be noticed first, so a grid that genuinely needs a pair is never filed as Easy just because the pair is easy to miss.
Every book carries its own note on difficulty in the opening pages, listing the patterns each level in that book expects you to use. Levels are not identical from one collection to the next, so that note — rather than a single scale for the whole catalogue — is what tells you what Easy, Medium, Hard or Expert means in the book in your hands.
Every technique on this page is one our own puzzles are graded against — pick a book by the level you want to practise.
Browse the puzzle books →