How to unpivot excel columns without power query — browser-based melt tool
- Step 1Open the wide table and note the headers — Ensure the wide data is on the first sheet — the tool reads sheet index 0 only. Note the exact header text of the columns you will keep and the ones you will unpivot.
- Step 2Decide keep vs. unpivot (the Power Query distinction) — In Power Query you select columns and choose 'Unpivot Columns' (or 'Unpivot Other Columns'). Here you do the same split explicitly: keep -> ID columns; unpivot -> value columns. Anything in neither list is removed.
- Step 3Enter ID columns and value columns — Type the keep columns into ID columns (comma-sep) (e.g.
Region, Product) and the columns to melt into Value columns (comma-sep) (e.g.Jan, Feb, Mar). Names are trimmed and matched by exact text. - Step 4Name the output columns — Power Query produces
AttributeandValuecolumns. Set Variable col name toAttribute(orYear/Metric) and Value col name toValueto mirror that, or use your own names. - Step 5Run and download unpivoted.xlsx — Click run; the tool reshapes in the browser and offers
unpivoted.xlsx(sheetUnpivoted). There is no query embedded — it is plain data. - Step 6Use the result anywhere — Open it in Excel, Google Sheets, or LibreOffice, or import into Power BI, pandas, or R. Because there is no connection, you can email or commit the file without anyone needing to refresh it.
Power Query UI vs. Un-Pivot fields
How the browser tool maps to Power Query's Unpivot Columns dialog. The tool's explicit value list is closest to 'Unpivot Only Selected Columns'.
| Power Query action | Un-Pivot equivalent | Notes |
|---|---|---|
| Select columns -> Unpivot Columns | Type them into Value columns | Explicit list, not selection |
| Unpivot Other Columns | List the keep columns as ID columns | The remaining listed value columns are melted; unlisted columns are dropped (not swept in) |
| Unpivot Only Selected Columns | Type just those into Value columns | Most direct match |
| Attribute column | Variable col name (default variable) | Holds the original header text |
| Value column | Value col name (default value) | Holds the cell value |
Where this differs from Power Query
Honest differences so you choose the right tool for the job.
| Aspect | Power Query Unpivot | Un-Pivot tool |
|---|---|---|
| Refresh on new data | Re-runs the query automatically | One-shot; re-run the tool on the new file |
| New columns added later | 'Unpivot Other Columns' sweeps them in | Ignored unless you list them |
| Output | Query result inside the workbook | Static .xlsx, no embedded query |
| Empty/null cells | Can be removed in the query | Always emit a row (empty value) |
| Platform | Needs Excel for Desktop | Any browser, any OS |
| Sheets | Choose any sheet/table | First sheet only |
Tier limits (Excel family)
Un-Pivot requires Pro or higher. Real numbers from the tier configuration.
| Tier | Max file size | Input row limit | Files per run |
|---|---|---|---|
| Free | 5 MB | 10,000 | 1 (Un-Pivot is Pro-only) |
| Pro | 50 MB | 100,000 | 5 |
| Pro-media | 200 MB | 500,000 | 20 |
| Developer | 500 MB | Unlimited | Unlimited |
Cookbook
Each recipe maps a Power Query scenario to the four fields, then shows the static output you get back.
The 'Unpivot Columns' equivalent
Select Jan/Feb/Mar in Power Query and Unpivot Columns -> here, list them as value columns. The Attribute/Value names match Power Query's defaults.
Input (wide): Region,Jan,Feb,Mar West,10,15,20 East,7,9,11 Fields: ID columns: Region Value columns: Jan, Feb, Mar Variable col: Attribute Value col: Value Output (unpivoted.xlsx, no embedded query): Region,Attribute,Value West,Jan,10 West,Feb,15 West,Mar,20 East,Jan,7 East,Feb,9 East,Mar,11
'Unpivot Other Columns' done safely
Power Query's Unpivot Other Columns keeps the selected columns and melts the rest — risky because tomorrow's new column gets swept in. Here you list the keep columns as IDs and the melt columns explicitly, so a future column is simply ignored unless you add it.
Input (wide): ID,Name,2022,2023 1,Ann,120,140 2,Bob,90,95 Fields (keep ID + Name, melt the years): ID columns: ID, Name Value columns: 2022, 2023 Variable col: Year Value col: Amount Output: ID,Name,Year,Amount 1,Ann,2022,120 1,Ann,2023,140 2,Bob,2022,90 2,Bob,2023,95
No refresh, safe to share
Because the output has no embedded Power Query, you can email it or commit it to a repo and nobody needs Excel Desktop to refresh it. The data is frozen at reshape time.
Power Query result (problem): shared .xlsx contains a query -> recipient on Excel web/Mac cannot refresh -> 'connection not supported' errors Un-Pivot result (fix): unpivoted.xlsx is plain values, sheet 'Unpivoted' opens identically on Excel web, Mac, Sheets, LibreOffice -> no refresh, no connection, no errors
Reproduce on a Chromebook or iPad
Power Query Unpivot is unavailable without Excel for Desktop. The browser tool runs the same reshape on any device with a browser, then you download the static .xlsx.
Environment: Chromebook, no Excel Desktop
Fields:
ID columns: Store
Value columns: Week1, Week2, Week3, Week4
Variable col: Week
Value col: Sales
Result: unpivoted.xlsx downloaded locally, long format,
identical to what Power Query Unpivot would produce.Match Power Query's null removal manually
Power Query can drop nulls during unpivot; this tool always emits a row per value column. If you want Power Query's no-null result, remove empty-value rows afterward (e.g. an empty-row remover or a filter in your destination tool).
Input (wide, a blank cell): Region,2022,2023 West,120, Un-Pivot output (blank kept as a row): Region,Year,Revenue West,2022,120 West,2023, To mimic Power Query null removal, drop the empty-value row downstream (filter Revenue <> blank).
Edge cases and what actually happens
Expecting auto-refresh on new data
One-shot transformUnlike a Power Query step, this tool does not re-run when the source changes — there is no query in the output. For repeatable, refreshing transforms inside a workbook or model, keep using Power Query. Use this for one-off reshaping or where Desktop is unavailable.
Wanting 'Unpivot Other Columns' to sweep in new columns
By designThe tool only melts the value columns you list; a column added later is ignored, not swept in. That is deliberate (it avoids Power Query's silent inclusion surprise) but means you must add new period columns to the value list each run.
Null/empty cells not removed
PreservedPower Query offers to drop nulls during unpivot; this tool always emits a row per value column, blanks included. To match Power Query's null-free result, remove empty-value rows downstream with a filter or an empty-row remover.
Unlisted columns disappear
Dropped by designOnly ID and value columns reach the output. In Power Query, columns you do not touch remain; here, columns in neither list are removed. Add any column you need to keep to the ID columns list.
Data is in a table on a different sheet
Not readPower Query can target any table on any sheet; this tool reads the first sheet only. Move the wide table to the first tab before uploading, or the output will be empty.
Value column name does not match the header
Empty value blockMatching is by exact header text (trimmed). A name that matches nothing still emits rows with empty values. A block of blanks for one attribute means the name was mistyped — Power Query's column picker would have prevented that, so double-check spelling.
Output row count surprises
ExpectedOutput rows = input rows × number of value columns — the same multiplication Power Query performs. Twelve month columns triples-and-then-some your row count. Verify against the Pro 100,000-input-row cap.
File too large or over the row cap
RejectedFiles above the tier size limit (Pro 50 MB) or input-row cap are rejected before reshaping. Power Query streams large data inside Excel; for very large sources, either split first or use Power Query on Desktop.
Free account
Requires ProUn-Pivot is Pro-gated and throws 'Un-Pivot requires Pro tier'. If you have Excel Desktop, Power Query unpivot is free; the browser tool's payoff is working without Desktop and producing a query-free static file.
Frequently asked questions
Is this exactly equivalent to Power Query's Unpivot Columns?
The output structure is identical — a long table with an attribute column (the original header) and a value column. The differences: there is no embedded query and no refresh, it is a one-shot transform, you list value columns explicitly rather than selecting them, and empty cells are kept as rows.
What if I need the unpivot to refresh automatically?
Then use Power Query — that is its strength: the query re-runs when the source updates. This browser tool produces a static file with no query, which is ideal for one-off reshaping, sharing a query-free workbook, or working on a device without Excel for Desktop.
Can I unpivot only selected columns, not all of them?
Yes — that is the default behaviour. You type exactly which columns are value columns; everything else you list as an ID column stays, and anything unlisted is dropped. This matches Power Query's 'Unpivot Only Selected Columns' most closely.
Does the output contain a Power Query connection?
No. The output is plain values in a single sheet called Unpivoted (file unpivoted.xlsx). There is no query, no connection, and no refresh button — so it opens and refreshes nowhere; what you download is final.
Will it sweep in new columns like 'Unpivot Other Columns' does?
No, and that is intentional. The tool only melts the value columns you list. A column added to the source later is ignored unless you add it to the value list — avoiding the common Power Query surprise where new columns silently become rows.
How do I get Power Query's null-removal behaviour?
This tool keeps empty cells as rows. To replicate Power Query dropping nulls, remove the empty-value rows afterward — filter where the value column is blank in your destination, or run the result through the empty-row remover.
Does it work without Excel installed at all?
Yes. It runs entirely in the browser via SheetJS — no Excel, no Power Query, no add-in. That is the whole point: Mac, Chromebook, iPad, and locked-down corporate machines without Desktop can all reshape wide data. Other Power-Query-style transforms work the same way: see the pivot generator for the reverse and the conditional splitter to split rows by a column value.
What should I name the output columns to mirror Power Query?
Power Query uses Attribute and Value. Set Variable col name to Attribute and Value col name to Value to match, or use semantic names like Year and Revenue. The default names are variable and value.
Which sheet does it read?
The first sheet only (sheet index 0). Power Query lets you pick any sheet or table; here, move the wide table to the first tab before uploading.
Is my workbook uploaded to a server?
No. The reshape runs client-side via SheetJS; the file never leaves your browser. Only an anonymous processed-file counter is recorded for dashboard stats, which you can opt out of.
How large a file can it handle compared with Power Query?
Power Query streams data inside Excel and scales further. This tool is bounded by tier: Pro 50 MB / 100,000 input rows, Developer unlimited. For very large sources, split first or use Power Query on Desktop; for everyday wide tables, the browser tool is faster to run.
Can I automate it instead of clicking?
Yes. GET /api/v1/tools/excel-unpivot exposes the schema for SDK/MCP clients; the actual run goes through a paired @jadapps/runner on your machine, so file content never reaches JAD's servers. Pair once, then dispatch reshapes locally.
Privacy first
Every JAD Excel tool runs entirely in your browser using SheetJS and ExcelJS. Your spreadsheets, formulas, and data never leave your device — verified by zero outbound network requests during processing.