All Over Tools logo
Tool Combiner
Analyze Tools Clean Tools Compare Tools Convert Tools Data Validation Extract Tools Format Tools Generate Tools Organize Tools Transform Tools
Image Tools Video Tools Audio Tools Subtitle Tools Font Tools
Analyze Tools Clean Tools Compress Tools Convert Tools Edit Tools Extract Tools Generate Tools Merge Tools Organize Tools Redact Tools Repair Tools Split Tools
Analyze Tools Clean Tools Compare Tools Convert Tools Extract Tools Generate Tools Merge Tools Transform Tools Validate Tools
Business Calculators Construction Calculators Date And Time Calculators Education Calculators Financial Calculators Food Calculators Health Calculators Math Calculators Science Calculators Sports Calculators Statistics Calculators
Blog About Us Contact Us

Unpivot Table

Paste or upload tabular data, choose identifier columns and columns to unpivot, name the output attribute/value columns, and convert wide data into long-format records - with control over blank values - then preview and export the result.

Drop a CSV, TSV, or spreadsheet file here

or

CSV, TSV, TXT, XLSX, XLS

What This Tool Does

Use this browser-based tool to convert selected wide columns into long-format attribute/value records. Choose identifier columns to keep with each record, name the generated attribute and value columns, handle blanks, and export the result.

For each source row, every selected column becomes one output record. The identifier values are copied across, the original column name goes into the attribute column, and the cell value goes into the value column. The tool does not sum, count, or otherwise aggregate values.

How the Unpivot Works

Once usable data is provided, detected columns initially appear under Columns to Unpivot. Move columns that identify each source row into Identifier Columns. The remaining selected columns become attribute/value records; leave a column unassigned to exclude it.

Blank detection trims a cell before testing it, so whitespace-only values count as blank. Blank cells produce a record by default, using the text in Blank value display. Turn on Skip blank values (omit their records) to leave those records out. Repeated headers remain separate fields by position and are shown with suffixes such as (#2) and (#3) in the picker, while the output attribute uses the original header name without that picker suffix.

The generated Attribute column name and Value column name can be changed. Source columns are not renamed.

How to Unpivot a Table

  1. Add your data: Paste CSV/TSV text, or drop/upload a CSV, TSV, TXT, XLSX, or XLS file.
  2. Columns load automatically when the input is usable. If First row is a header is unchecked, the tool creates names such as Column 1 and Column 2.
  3. Assign roles: All detected columns start under Columns to Unpivot. In Available Columns, click +ID for identifier columns or +Value for columns to unpivot. In either assigned list, use Move up, Move down, or Remove to adjust the selection and order.
  4. Set options: Enter names for Attribute column name and Value column name, set Blank value display, and choose whether to enable Skip blank values (omit their records).
  5. The result recomputes automatically when the input, assignments, or options change.
  6. Export: Click Export CSV or Export Spreadsheet.

Supported Input and Parsing

  • CSV, TSV, and TXT text is parsed by comparing comma and tab counts on the first line. There is no general delimiter selector.
  • XLSX and XLS uploads use the first worksheet only.
  • For text files larger than 300,000 characters, the textarea shows a truncated preview, but the full text remains available for processing.

Preview and Export

The preview shows at most the first 2,000 result records. When more records exist, the notice above the table tells you how many are shown; Export CSV and Export Spreadsheet include the full computed result.

Limitations and Troubleshooting

The tool's table-data parsing, transformation, and export code runs in the browser. The local script does not perform a table-data upload. The implementation does not define a formal maximum input size, browser compatibility matrix, performance guarantee, or universal usage-limit policy.

Check these conditions if the task does not complete:

  • Empty input or no data rows triggers an alert.
  • At least one column must be assigned to Identifier Columns or Columns to Unpivot.
  • At least one column must remain under Columns to Unpivot.
  • Export Spreadsheet requires the XLSX library to load successfully; use Export CSV if that library is unavailable.

Frequently Asked Questions

How is this different from Pivot Table or Transpose Table?

Unpivot Table converts wide columns into long attribute/value records without aggregating anything - each original cell becomes one output record. Pivot Table does the opposite: it groups records and aggregates a value field with count, sum, average, minimum, or maximum. Transpose Table only swaps rows and columns, without reshaping into attribute/value records at all. None of the three overlap in what they produce.

What are identifier columns and value columns?

Identifier columns are copied unchanged into every output record for a source row - they preserve row identity (like a customer ID or date). Columns you assign to unpivot each contribute one output record per source row, with the original column name in the attribute column and the cell's value in the value column.

What happens with blank values?

By default, blank cells still produce a record, using your chosen blank-display text as the value. Enable Skip blank values (omit their records) to omit those records entirely from the output instead - useful when your wide table has many empty cells you don't want represented as records.

What happens with repeated/duplicate column headers?

Each column is treated as a distinct field based on its position, even if two columns share the same header text. Duplicate headers are shown with a (#2), (#3), etc. suffix in the column picker so you can tell them apart, but the attribute value written to the output uses the original header name without that picker suffix.

Related Tools

2 views