Hi team,
The main gap I’m facing in Metabase is the lack of a simple way to convert rows to columns (transpose) in the UI.
For example, starting with:
mth | first_col | second_col | third_col
-----------|-----------|------------|----------
2025-01-01 | 100 | 80 | 40
2025-02-01 | 50 | 30 | 10
2025-03-01 | 300 | 230 | 100
I want:
metric | 2025-01-01 | 2025-02-01 | 2025-03-01
-----------|------------|------------|------------
first_col | 100 | 50 | 300
second_col | 80 | 30 | 230
third_col | 40 | 10 | 100
Core issue
There’s no straightforward way to do this in Metabase without writing fairly complex SQL (unnest/array transformations). A simple built-in “rows ↔ columns” (transpose) option would solve this cleanly.
Secondary issue (pivot limitation)
Even after reshaping the data:
-
The pivot option only appears with exactly 3 columns
-
Adding any extra column (e.g., for ordering like
ord) disables pivot -
This forces awkward multi-step workarounds
Suggestions
-
Add a native “rows ↔ columns” (transpose) transformation
-
No SQL required
-
Works directly in the query builder / visualization layer
-
-
Allow pivot with ≥3 columns (not exactly 3)
-
Let users choose which fields to use for rows, columns, and values
-
Don’t hide pivot based on column count
-
These changes would remove the need for complex SQL and eliminate current UI quirks, making common reshaping tasks much more intuitive.
Thanks!
Reference Images:
base_data
pivot_option_visible_with_three_columns
final_pivot_view


