Skip to main content

How to Make Sure Your Kakuro Has Exactly One Solution

Oct 13, 2026 min read

Your first Kakuro is finished. The sums are clean, the layout is symmetric, and every run adds up. Your test solver works through the grid and stops near the bottom. Four cells: 9 and 8 on top, 8 and 9 underneath. Or 8 and 9 on top, 9 and 8 underneath. Every clue checks out both ways. One of the runs through those cells is a 17 in two cells, which you’d have sworn locked them down.

It didn’t. Your puzzle has two answers.

A Kakuro is supposed to have exactly one answer, reachable by logic alone. A second solution means that somewhere the solver has to guess, and the cause is almost always the same: a group of cells whose digits can trade places without any clue noticing. This article takes the series 7x7 layout from Designing a Kakuro Grid, fills it, finds that trade, shows why the obvious fix fails, and repairs it with a single digit.

Why Grids End Up with Two Solutions

The Deal with the Solver

When someone sits down with your puzzle, they’re trusting that every cell has exactly one correct digit and that logic will lead them to it. Nikoli’s rule list doesn’t spell this out, but published Kakuro is built on it. A puzzle with two answers breaks it. The solver reaches the ambiguous cells, finds nothing that decides them, and either guesses or gives up. Either way, the last few minutes of the solve, usually the most satisfying part, turn into a coin toss.

Fill-First Hides the Problem

If you build fill-first, writing digits into the layout and then adding up the clues, you know one solution exists because you wrote it. That tells you nothing about whether a second one exists. Wikipedia’s Kakuro article puts the source of uniqueness plainly: it’s the ban on repeated digits within a run that makes unique solutions possible at all. Nothing else in the rules pins digits in place.

Clue-first construction catches more of these as you go, because you’re solving while you build. But even clue-first constructors check the finished grid, and the check starts with knowing what to look for.

Anatomy of a Swap

The 2x2 Swap

Here’s the first fill of the series grid. The four cells in brackets are the ones from the opening.

+-------+-------+-------+-------+-------+-------+-------+
|#######| 16\   | 12\   | 10\   |  8\   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \12 |   6   |   3   |   2   |   1   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \27 |   9   |   6   |   8   |   4   | 21\   |#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \3  |   1   |   2   | 24\8  |   3   |   5   |  6\   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|   \8  |   1   |   7   | 17\8  |   6   |   2   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \21 |  [9]  |  [8]  |   3   |   1   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \27 |  [8]  |  [9]  |   7   |   3   |
+-------+-------+-------+-------+-------+-------+-------+

And here’s the second solution, with only those four cells changed:

+-------+-------+-------+-------+-------+-------+-------+
|#######| 16\   | 12\   | 10\   |  8\   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \12 |   6   |   3   |   2   |   1   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \27 |   9   |   6   |   8   |   4   | 21\   |#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \3  |   1   |   2   | 24\8  |   3   |   5   |  6\   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|   \8  |   1   |   7   | 17\8  |   6   |   2   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \21 |  [8]  |  [9]  |   3   |   1   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \27 |  [9]  |  [8]  |   7   |   3   |
+-------+-------+-------+-------+-------+-------+-------+

The four cells r5c3, r5c4, r6c3 and r6c4 sit at the corners of a rectangle: two across runs and two down runs pass through them. They hold A B on top and B A below. Flip them to B A over A B and look at each run:

RunVersion 1Version 2
21 across (row 5){9, 8, 3, 1}{8, 9, 3, 1}
27 across (row 6){8, 9, 7, 3}{9, 8, 7, 3}
24 down (column 3){7, 9, 8}{7, 8, 9}
17 down (column 4){8, 9}{9, 8}

Every run holds exactly the same digits both ways. Only the order changes. Sums don’t care about order and neither does the no-repeat rule, so no clue can tell the two versions apart. Puzzle constructors call this a deadly pattern. In this series it’s a swap.

Why a Magic Block Doesn’t Help

Look again at the table. Two of the four runs are magic blocks, clues with only one possible digit set: 24 in three cells is always {7, 8, 9}, and 17 in two cells is always {8, 9}. The swap survives both of them.

A magic block fixes which digits a run uses. It says nothing about where they go. A swap changes only where they go. So the most tempting fix, “make one of those runs a magic block so it’s locked down,” does nothing against a pure swap. The draft already had two magic blocks there, and the swap went straight through.

Shifted Swaps and Longer Loops

A pure swap trades two digits. A looser version adds an amount to two opposite corners and takes it from the other two. Picture a rectangle holding 1 4 over 2 3. Add 1 to the top-left and bottom-right, subtract 1 from the other two, and you get 2 3 over 1 4. Every sum is unchanged, but some runs now hold different digits: the top row went from {1, 4} to {2, 3}. A shifted swap can be caught by a clue, because a magic block or a digit already used elsewhere in the run can rule out the new set.

Swaps don’t have to be rectangles, either. Six cells across three rows and three columns can do it:

 +d   -d    .
  .   +d   -d
 -d    .   +d

Each row gains d once and loses it once, and so does each column, so every sum holds. Loops of eight cells or more work the same way. They’re rarer and harder to spot, which is a good reason to let a computer double-check you (see Build a Kakuro Solver and Generator in Python).

How to Fix It

Fix 1: Change a Digit, Then Recalculate Its Clues

In Kakuro, a clue is the sum of the digits beneath it. You can’t change a clue without changing the solution under it, so the real edit is always to a digit. Change one digit, then recalculate both clues that run through it.

For the series grid, change r5c3 from 9 to 4:

+-------+-------+-------+-------+-------+-------+-------+
|#######| 16\   | 12\   | 10\   |  8\   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \12 |   6   |   3   |   2   |   1   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \27 |   9   |   6   |   8   |   4   | 21\   |#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \3  |   1   |   2   | 19\8  |   3   |   5   |  6\   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|   \8  |   1   |   7   | 17\8  |   6   |   2   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \16 |  [4]  |   8   |   3   |   1   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \27 |   8   |   9   |   7   |   3   |
+-------+-------+-------+-------+-------+-------+-------+

Two clues change. Row 5’s across goes from 21 to 16 (4 + 8 + 3 + 1), and column 3’s lower down run goes from 24 to 19 (7 + 4 + 8).

Why it works: the corners no longer hold A B over B A, so a plain swap is gone. The only shift left would need r5c3 = 3, r5c4 = 9, r6c3 = 9 and r6c4 = 8 to keep every sum the same. That puts a second 3 in row 5, where r5c5 is already 3. The no-repeat rule kills it.

Also notice what didn’t change: the 17 down is still a magic block. It wasn’t the fix. The new digit was.

Fix 2: Move a Black Cell

Splitting one of the four runs breaks the rectangle, because the corners no longer share both an across run and a down run. It’s a bigger edit. The black cell has a symmetry partner, so you’re moving two cells and changing the shape of four or more runs. Reach for it when digit changes keep opening new problems elsewhere, or when a big open area keeps producing swaps no matter what you write in it.

Proving Uniqueness by Hand

Solve It with Forced Moves Only

The cleanest proof needs nothing but a pencil. Solve your puzzle from blank, and only write a digit when it’s the only possibility at that moment. If you can fill every cell that way, the solution is unique. Every step had exactly one option, so there was never room for a second answer.

Here’s how the repaired series grid starts:

  1. r6c6 = 3. The 6 down along the right edge is three cells, so it’s {1, 2, 3}. The 27 across on row 6 is four cells: {3, 7, 8, 9}, {4, 6, 8, 9} or {5, 6, 7, 9}. The corner cell belongs to both, and 3 is the only digit they share.
  2. Row 6 is {3, 7, 8, 9}. It’s the only 27-in-four set with a 3, so r6c3, r6c4 and r6c5 hold 7, 8 and 9 in some order.
  3. r2c2 = 6. The 27 across on row 2 needs four digits from 3 up. But r2c2 also sits in the 12-down in column 2, which is {1, 2, 3, 6} or {1, 2, 4, 5}, so r2c2 is at most 6. And r2c4 sits in the 8-down in column 4, {1, 2, 5} or {1, 3, 4}, so it’s at most 5. Try each 27 set: {3, 7, 8, 9} would need both of those cells to be 3, which can’t happen. The other two sets, {4, 6, 8, 9} and {5, 6, 7, 9}, both force r2c2 = 6.

Every other cell falls the same way, one forced move at a time, with no guessing. That’s the proof.

When You Get Stuck: Test Both Options

Sometimes you stall and can’t tell whether you’ve missed a deduction or the puzzle is ambiguous. Pick a cell with two candidates and follow each one forward. If one leads to a contradiction, like a repeated digit or a sum that can’t be reached, the other is forced and you can keep going. If both lead to a complete, valid grid, you’ve found a second solution.

Run that test on the draft and it stalls at the four bracketed cells, each one either 8 or 9. Try r5c3 = 9: the grid completes. Try r5c3 = 8: it completes again. Two solutions, confirmed.

The common mistake is stopping after the first branch works. A branch that finishes proves one solution exists. Only a branch that fails tells you anything about uniqueness.

Put together, the whole hand check looks like this:

12345.....SmPtTiSfCotooiwrneihrhlvcoycnaevekaodnmnescbngoaao2dtevsuont-hetsncdhoseaaileipoarnyldctlsctglaaiuwobstnobtarlaftwednoipnagoaisitoecarltdchnrkiclhae:neetlfdcddeliieasngltiilst,1honedofnaeilsEeOivxnseaercfytfolarcyicelelosdln:,eptklsheaoeeclpeuodttg:ihooeinrng

Practical Example: From Draft to Main

Here’s the whole repair as a checklist you can run on your own grid.

  1. Find the second solution. Test-solve the draft. At the stall, test both options on one of the four bottom cells. Both finish, so the draft has two solutions.
  2. Identify the four cells. r5c3, r5c4, r6c3, r6c4, holding 9 8 over 8 9.
  3. Check the runs. Each of the four runs holds the same digits in both versions. Two of them (24 down, 17 down) are magic blocks, and they don’t stop it.
  4. Change one corner digit. r5c3 from 9 to 4. Recalculate the two clues through it: row 5 becomes 16, column 3’s lower run becomes 19.
  5. Prove it. Solve the new grid with forced moves only, starting with r6c6 = 3. Every cell falls without a guess.

The result is the series Main puzzle:

+-------+-------+-------+-------+-------+-------+-------+
|#######| 16\   | 12\   | 10\   |  8\   |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \12 |       |       |       |       |#######|#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \27 |       |       |       |       | 21\   |#######|
+-------+-------+-------+-------+-------+-------+-------+
|   \3  |       |       | 19\8  |       |       |  6\   |
+-------+-------+-------+-------+-------+-------+-------+
|#######|   \8  |       |       | 17\8  |       |       |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \16 |       |       |       |       |
+-------+-------+-------+-------+-------+-------+-------+
|#######|#######|   \27 |       |       |       |       |
+-------+-------+-------+-------+-------+-------+-------+

One solution, every move forced. It’s in the printable series puzzles if you’d rather solve it on paper.

Best Practices

Do:

  • ✓ Check every 2x2 block of white cells for matching digits on opposite corners.
  • ✓ Test-solve with forced moves only, and treat any guess as a red flag.
  • ✓ When you change a digit, recalculate both clues through it.

Don’t:

  • ✗ Assume a puzzle is unique because you solved it. You knew the answer.
  • ✗ Expect a magic block to stop a pure swap.
  • ✗ Change a clue without changing the digits underneath.

Troubleshooting

The swap is still there after a change. The change kept the A B over B A pattern. Maybe you swapped which corners held which digit, or changed digits outside the rectangle. Change one of the four corner digits to something new, so the corners no longer mirror each other.

The fix created a problem somewhere else. The new digit repeats in a crossing run, or the new clue opens a different swap elsewhere. Re-check both runs through the changed cell, then re-solve the whole grid from blank, not just the corner you fixed.

You fixed one swap and the grid still has two solutions. There was a second, independent swap in another part of the grid. Two separate swaps give four solutions, and fixing one leaves two. Keep testing until a forced-only solve runs start to finish.

Where This Leaves You

A valid fill proves a solution exists, not that it’s the only one. In a pure swap every run keeps the same digits, so no clue can catch it, and that includes magic blocks. Fix a swap by changing a digit and recalculating its two clues, or by moving a black cell. Then prove the result by solving it with forced moves only.

Check your own grid’s 2x2 blocks next. Then How to Set Kakuro Difficulty grades the series grid and rebuilds the same layout as a Hard puzzle.

The Kakuro Puzzle Design series:

For the solving side of forced moves and testing both options, see Eliminating Guesswork in Kakuro and Essential Magic Blocks in the Advanced Kakuro Tactics series.

Sources