Skyscraper Sudoku: Two Towers, One Shared Base
A skyscraper sudoku pattern is a single-digit chain built from two conjugate pairs. Find two rows in which a digit has exactly two possible cells each, where one of those cells lands in the same column for both rows. That shared column is the base; the two odd cells out are the roof. At least one roof cell holds the digit, so any cell that sees both roof cells cannot.
If that sounds like an X-Wing that did not quite come together, that is exactly what it is. An X-Wing needs both rows to use the same two columns. A skyscraper takes the far more common case where the rows agree on one column and disagree on the other — and gets a real elimination out of it anyway.
Below: the structure, why it works, two fully worked examples with verified eliminations, the geometry rule that tells you in three seconds whether a skyscraper is worth tracing, and how it fits with the rest of the single-digit family.
Conjugate pairs, first
A conjugate pair is a unit in which one digit has exactly two remaining candidate cells — meaning one of those two cells definitely holds it.
This is the building block for every chain technique, and it is worth naming properly. If the digit 8 can only go at R3C2 or R3C7 in row 3, then row 3's 8 is at one of those two cells. Not "probably." Definitely, because every row contains every digit.
Solvers call the relationship between those two cells a strong link: if one is not the 8, the other is. A skyscraper is two strong links joined by a weak connection, and that is the whole architecture.
| Term | Meaning |
|---|---|
| Conjugate pair | A unit where a digit has exactly two candidate cells |
| Strong link | The either/or relationship between those two cells |
| Base | The column (or row) that both conjugate pairs share |
| Roof | The two cells that are not in the shared line |
The name comes from the picture: two vertical strong links standing on a common foundation, like two towers of unequal height sharing a base.
The structure and the proof
Two rows, one digit, exactly two candidate cells in each row, and exactly one column common to both. Then at least one of the two remaining cells holds the digit.
Written out with the digit 8:
- Row a has its 8 at C*b or C*x
- Row b has its 8 at C*b or C*y
- Column b is shared; columns x and y are different from each other
The proof is a two-case split on the base column.
Column b can hold only one 8. So R*a*C*b* and R*b*C*b* cannot both be the 8.
- If R*a*C*b* is the 8, then R*b*C*b* is not, so row b must put its 8 at R*b*C*y* — a roof cell.
- If R*a*C*b* is not the 8, then row a must put its 8 at R*a*C*x* — the other roof cell.
Either way, at least one roof cell is the 8. Any cell that sees both roof cells is therefore looking at an 8 no matter how the grid resolves, and cannot be an 8 itself.
Note what is not being claimed. You do not learn which roof holds the digit, and you cannot eliminate anything from the base column. The base cells are the source of the ambiguity, not the target of it.
Worked example: a row-based skyscraper on the digit 8
Two conjugate pairs, four eliminations, two placements.
On a stalled grid, the digit 8 is confined as follows:
| Row | Cells where 8 is still possible |
|---|---|
| R3 | R3C2, R3C7 |
| R7 | R7C2, R7C9 |
Both rows have exactly two homes for the 8, and both include column 2. That is the base. The roof cells are R3C7 and R7C9.
The case split. Column 2 holds one 8 at most. If R3C2 is the 8, then R7C2 is not, so row 7's 8 goes to R7C9. If R3C2 is not the 8, then row 3's 8 goes to R3C7. So R3C7 or R7C9 — at least one is an 8.
Now map the cells that see both roofs. R3C7 covers row 3, column 7 and box 3 (rows 1–3, columns 7–9). R7C9 covers row 7, column 9 and box 9 (rows 7–9, columns 7–9).
| Intersection | Cells | Can they hold an 8? |
|---|---|---|
| Box 3 × column 9 | R1C9, R2C9, R3C9 | R1C9 and R2C9 yes; R3C9 no — row 3's 8 is at C2 or C7 |
| Column 7 × box 9 | R7C7, R8C7, R9C7 | R8C7 and R9C7 yes; R7C7 no — row 7's 8 is at C2 or C9 |
| Row 3 × column 9 | R3C9 | Already covered — no 8 there |
| Column 7 × row 7 | R7C7 | Already covered — no 8 there |
| Box 3 × box 9 | none | Different bands |
| Row 3 × row 7 | none | Parallel |
Four cells qualify. Their candidate lists before and after:
| Cell | Before | After | Result |
|---|---|---|---|
| R1C9 | 2 8 9 | 2 9 | new bi-value cell |
| R2C9 | 4 8 | 4 | naked single |
| R8C7 | 1 3 8 | 1 3 | new bi-value cell |
| R9C7 | 3 8 | 3 | naked single |
Two placements straight out of the pattern, and two fresh bi-value cells that feed the wing techniques. Every other row on the grid is irrelevant to this deduction — the skyscraper needs only the two conjugate pairs.
Worked example: the column-based version
Swap rows and columns and the technique is unchanged: two columns with exactly two candidate cells each, sharing one row.
Digit 4:
- Column 2 has its 4 at R1C2 or R6C2
- Column 8 has its 4 at R1C8 or R4C8
Row 1 is shared, so row 1 is the base. The roof cells are R6C2 and R4C8.
Row 1 holds one 4 at most, so R1C2 and R1C8 cannot both be it. If R1C2 is the 4, column 8 must use R4C8. If R1C2 is not the 4, column 2 must use R6C2. At least one roof holds the 4.
R6C2 covers row 6, column 2 and box 4 (rows 4–6, columns 1–3). R4C8 covers row 4, column 8 and box 6 (rows 4–6, columns 7–9).
| Target | Sees R6C2 via | Sees R4C8 via | Valid? |
|---|---|---|---|
| R4C1 | box 4 | row 4 | Yes |
| R4C2 | column 2 and box 4 | row 4 | No 4 there — column 2's 4 is at R1 or R6 |
| R4C3 | box 4 | row 4 | Yes |
| R6C7 | row 6 | box 6 | Yes |
| R6C8 | row 6 | column 8 and box 6 | No 4 there — column 8's 4 is at R1 or R4 |
| R6C9 | row 6 | box 6 | Yes |
Four eliminations: R4C1, R4C3, R6C7 and R6C9 all lose their 4.
The two cells that fail are instructive. R4C2 and R6C8 sit at the intersections you would draw first, and both are already empty of the digit because of the conjugate pairs themselves. That is not a flaw in the technique — it just means the useful targets come from somewhere else.
The geometry rule that saves you time
The eliminations come from the roof cells' boxes reaching across into the other roof's line. That requires the two roof cells to sit in the same stack for a row-based skyscraper, or the same band for a column-based one.
Look at where the four valid targets came from in each example:
| Example | Roof cells | Relationship | Source of targets |
|---|---|---|---|
| Row-based, digit 8 | R3C7, R7C9 | Both in stack 3 (columns 7–9) | Each roof's box crossing the other roof's column |
| Column-based, digit 4 | R6C2, R4C8 | Both in band 2 (rows 4–6) | Each roof's box crossing the other roof's row |
The direct intersections — the cell where one roof's row meets the other roof's column — are always empty of the digit, because the conjugate pairs already ruled them out. So the boxes are the only thing left, and boxes only reach across when the roofs are lined up in the same three-column stack or three-row band.
Practical rule: check the roofs' stack or band before you trace anything. If a row-based skyscraper's roof cells are in different stacks, the pattern is logically valid and eliminates nothing. Note it and move on rather than hunting for a target that is not there.
Skyscraper, X-Wing, and the rest of the family
The skyscraper is one member of a group of two-strong-link patterns known collectively as turbot fish, and it sits directly next to the X-Wing in structure.
Start from two rows in which a digit has exactly two candidate cells each, and everything depends on how the columns line up:
| Column overlap | Pattern | Eliminations |
|---|---|---|
| Both columns identical | X-Wing | The digit clears both columns entirely, outside the two rows |
| Exactly one column shared | Skyscraper | The digit clears cells seeing both roof cells |
| No column shared | Nothing directly | The two links may still join a longer chain |
That progression is worth internalizing, because it changes how you read a per-digit map. When you build the map to hunt for an X-Wing and find two rows whose column pairs almost match, you have not failed — you have found a skyscraper, and the map is already built.
Two close relatives use the same two-strong-link idea with different geometry:
- 2-String Kite. One conjugate pair in a row and one in a column, with their base ends sitting in the same box rather than the same line. At least one of the two far ends holds the digit, and cells seeing both lose it.
- Turbot fish. The umbrella term for the whole family, including both of the above. Some solvers use "turbot fish" specifically for the row-plus-column variant and "skyscraper" for the row-plus-row one.
All of them are two strong links joined by one weak link. Once that reading clicks, they stop feeling like separate techniques to memorize.
Finding a skyscraper sudoku pattern in practice
Build the same per-digit map you would build for a fish, then read it for near-misses instead of matches.
- Complete the candidate grid. Every unsolved cell, checked against row, column and box.
- Pick a digit and list, for each row, the columns where it can still go. Nine lines. Skip rows where the digit is already placed.
- Circle every row with exactly two entries. Those are your conjugate pairs, and only they can build a skyscraper.
- Compare the circled rows in pairs. Identical column pairs give an X-Wing — take it, it is stronger. Column pairs sharing exactly one column give a skyscraper.
- Check the stack rule. Are the two non-shared cells in the same three-column group? If not, skip it.
- Map both roof cells' rows, columns and boxes, and take the overlap. Remember that the two obvious corner intersections are always already empty.
- Repeat down the columns, then move to the next digit.
The efficiency comes from step 4. You are already comparing conjugate rows when you hunt for X-Wings, so the skyscraper check costs nothing extra — you simply stop discarding the near-misses.
Where the skyscraper sits in the ladder
Skyscraper belongs at the top of the everyday techniques, right after the wings, and it is the one that most often unsticks a grid where the X-Wing search came up empty.
| Order | Technique | Idea | Guide |
|---|---|---|---|
| 1 | Singles | One option left | How to play sudoku |
| 2 | Locked candidate | Digit trapped in an intersection | Locked candidate sudoku |
| 3 | Naked pairs and triples | Cells with few digits | Naked pairs sudoku |
| 4 | X-Wing | One digit, 2×2 | Sudoku X-Wing explained |
| 5 | Swordfish | One digit, 3×3 | Swordfish sudoku |
| 6 | Y-Wing | Three bi-value cells | Y wing sudoku |
| 7 | Skyscraper | Two conjugate pairs, shared base | This page |
What comes after this one is chain solving proper — X-chains, XY-chains and simple coloring, all of which extend the strong-link idea past two links. The skyscraper is the natural doorway to them, because it is the shortest chain that still has a name of its own. If the conjugate-pair vocabulary here felt new, the X-Wing page covers the same single-digit mapping method at an easier size, and the Y-Wing covers the multi-digit alternative.
For practice grids, our free puzzle maker generates unlimited classic 9×9 sudoku at easy, medium and hard, prints one to six per page with an answer key, and verifies that every puzzle has exactly one solution.
Frequently asked questions
What is a skyscraper in sudoku?
A skyscraper is a single-digit technique built from two conjugate pairs. Two rows each have exactly two remaining cells for the digit, and one of those cells is in the same column for both rows. That shared column is the base; the two cells outside it form the roof. Because the base column can hold only one copy of the digit, at least one roof cell must hold it — so any cell seeing both roof cells can drop that candidate.
How is a skyscraper different from an X-Wing?
By one column. An X-Wing requires both rows to use exactly the same two columns, which lets you clear those two columns entirely. A skyscraper is the case where the rows agree on one column and differ on the other. The eliminations are narrower — only cells that see both roof cells — but the pattern is considerably more common, and you find it with the same per-digit map you already built.
Why does a skyscraper sometimes eliminate nothing?
Because the eliminations depend on the roof cells' boxes reaching across to the other roof's line. In a row-based skyscraper, that needs both roof cells in the same three-column stack; in a column-based one, the same three-row band. When they are far apart, the pattern is still logically valid but no cell on the grid sees both roofs while still holding the digit. Check the stack or band first and save yourself the trace.
Can I eliminate anything from the base column?
No. The base cells are exactly where the uncertainty lives — one of them may well hold the digit, and the technique never tells you whether it does. The eliminations apply only to cells that see both roof cells, and neither base cell qualifies, since each one is in a conjugate pair with a roof cell rather than seeing both.
What is a turbot fish, and is it the same thing?
Turbot fish is the umbrella name for patterns made of two strong links joined by a weak one, and the skyscraper is a member of that family. The other common member is the 2-String Kite, which uses one row conjugate pair and one column conjugate pair whose base ends share a box. Some sources reserve "turbot fish" for that mixed row-and-column version, which is why the naming can look inconsistent between solvers.
Is the skyscraper sudoku technique needed for expert puzzles?
Frequently, yes. Expert and evil grids are constructed to survive singles, locked candidates and subsets, and they often stall at a point where no X-Wing or swordfish exists but two conjugate pairs are sitting right there. Along with the Y-Wing, it covers a large share of the late-stage stalls you meet at that level, and it is the cheapest chain technique to learn.
