Need to rotate a table in Google Sheets by 90°, 180°, or 270°? While Google Sheets does not offer a built-in rotate table feature, you can easily rotate any range using formulas.
I recently needed to rotate a 9 x 9 grid in Google Sheets while testing a puzzle template, and realized many users look for the same trick.
Table rotation is useful for:
- dashboard reports
- calendars
- puzzle games (logical shuffling)
- custom layouts
- matrix transformations
- data restructuring
In this tutorial, you’ll learn how to rotate a table in Google Sheets clockwise by 90 degrees, 180 degrees, or 270 degrees using formulas.
We’ll use a January 2026 calendar grid in the range B2:H7 as the sample table.

Quick Answer: Use LET, CHOOSEROWS, CHOOSECOLS, SEQUENCE, and TRANSPOSE to rotate tables dynamically in Google Sheets.
Can You Rotate a Table in Google Sheets?
Google Sheets has a built-in TRANSPOSE function, but it only swaps rows and columns. It does not rotate a table like turning an image.
At first glance, TRANSPOSE seems enough—but it only swaps rows and columns.
To rotate data by 90°, 180°, or 270°, combine functions such as TRANSPOSE, CHOOSEROWS, CHOOSECOLS, SEQUENCE, and LET. See my Google Sheets function guide for detailed syntax and examples.
Rotate a Table in Google Sheets by 90 Degrees
To rotate a table 90° clockwise, use the formula below:
=LET(data, B2:H7, nR, 6, TRANSPOSE(CHOOSEROWS(data, SEQUENCE(nR, 1, -1, -1))))
Formula Explanation
- data →
B2:H7(table range) - nR →
6(number of rows)
How It Works
- CHOOSEROWS reverses the row order vertically.
- TRANSPOSE swaps rows and columns.
- The result is a 90° clockwise rotation.
Rotate a Table in Google Sheets by 180 Degrees
To rotate a table 180° clockwise, use:
=LET(data, B2:H7, nR, 6, nC, 7, CHOOSECOLS(CHOOSEROWS(data, SEQUENCE(nR, 1, -1, -1)), SEQUENCE(nC, 1, -1, -1)))
Formula Explanation
- data →
B2:H7 - nR →
6rows - nC →
7columns
How It Works
- Reverse rows using CHOOSEROWS
- Reverse columns using CHOOSECOLS
This rotates the table by 180 degrees.
Rotate a Table in Google Sheets by 270 Degrees
To rotate a table 270° clockwise, use:
=LET(data, B2:H7, nC, 7, TRANSPOSE(CHOOSECOLS(data, SEQUENCE(nC, 1, -1, -1))))
Formula Explanation
- data →
B2:H7 - nC →
7columns
How It Works
- Reverse the columns using CHOOSECOLS
- Apply TRANSPOSE
This gives a 270° clockwise rotation.
Quick Comparison of 90°, 180°, and 270° Table Rotation
The following table summarizes how each Google Sheets rotation changes the data orientation.
| Rotation | Direction | Formula Strategy | Visual Result |
|---|---|---|---|
| 90° | Quarter turn clockwise | Reverse rows + transpose | Headers on right |
| 180° | Half turn | Reverse rows + reverse columns | Headers on bottom, reversed |
| 270° | Three-quarter turn clockwise | Reverse columns + transpose | Headers on left, reversed |
Rotation vs Flipping vs Transpose in Google Sheets
These three operations are different.
Vertical Flip
1
2
3
Becomes:
3
2
1
Horizontal Flip
1 | 2 | 3
Becomes:
3 | 2 | 1
Transpose
1 | 2 | 3
Becomes:
1
2
3
Important Note
Rotation uses flipping and transposing as building blocks, but rotation itself is a different transformation.

Generic Dynamic Rotation Formulas
Use these versions for any table size.
90° Rotation
=LET(data, A1:D5, nR, ROWS(data), TRANSPOSE(CHOOSEROWS(data, SEQUENCE(nR, 1, -1, -1))))
180° Rotation
=LET(data, A1:D5, nR, ROWS(data), nC, COLUMNS(data), CHOOSECOLS(CHOOSEROWS(data, SEQUENCE(nR, 1, -1, -1)), SEQUENCE(nC, 1, -1, -1)))
270° Rotation
=LET(data, A1:D5, nC, COLUMNS(data), TRANSPOSE(CHOOSECOLS(data, SEQUENCE(nC, 1, -1, -1))))
These automatically detect rows and columns.
Frequently Asked Questions
Is there a built-in rotate table option in Google Sheets?
No. Google Sheets does not have a direct rotate range feature. Use formulas instead.
Can I rotate data automatically when source data changes?
Yes. Since formulas are dynamic, rotated output updates automatically.
Does TRANSPOSE rotate a table?
No. TRANSPOSE only swaps rows and columns. It does not fully rotate data.
Conclusion
Google Sheets does not include a built-in feature to rotate tables by 90°, 180°, or 270°, but you can easily do it using formulas.
Simply combine:
- CHOOSEROWS
- CHOOSECOLS
- TRANSPOSE
- SEQUENCE
- LET
Once set up, your rotated table updates automatically whenever the source data changes.
If you frequently work with dashboards, calendars, puzzle boards, or matrix data, these formulas can save a lot of manual work.
I personally use this method when shuffling Sudoku boards without breaking logic.