# XLSX Unpivot Normalizer

Unpivot wide tables (e.g., month columns) into normalized long-form records for database ingestion

> Canonical page: https://elysiatools.com/en/tools/xlsx-unpivot-normalizer

- **Category:** Format Conversion

- **Keywords:** xlsx, excel, unpivot, normalize, wide table, long table, etl, database

## Overview

Convert wide tables to long format.

- Keep identifier columns as-is
- Convert value columns into key-value pairs
- Typical use case: `Jan,Feb,Mar` -> `month,value`
- Export as XLSX or JSON

## Inputs

- **Excel File** (file)
- **Sheet Name** (text): Sheet1
- **Header Row** (number)
- **ID Columns** (text): product_id,region
- **Value Columns** (text): Jan,Feb,Mar
- **Key Column Name** (text)
- **Value Column Name** (text)
- **Output Mode** (select)
- **Drop Empty Values** (checkbox)
- **Parse Numeric Values** (checkbox)

## When to use

- When you have time-series data spread across multiple columns (e.g., Jan, Feb, Mar) that needs to be in a single column for database compatibility.
- When preparing Excel reports for import into SQL databases or data visualization platforms that require tidy data formats.
- When you need to clean up messy, wide-format spreadsheets by removing empty cells and standardizing numeric values during the conversion process.

## How it works

- Upload your Excel file and specify the ID columns that should remain fixed as identifiers.
- Define the value columns you wish to unpivot and assign names for the resulting key and value columns.
- Configure optional settings such as dropping empty values or parsing numeric data types.
- Download your normalized data in either XLSX or JSON format, ready for your next workflow step.

## Use cases

- Converting monthly sales spreadsheets into a single 'Month' and 'Revenue' column structure for SQL database ingestion.
- Normalizing survey results where each question is a column, transforming them into a 'Question' and 'Response' format for analysis.
- Preparing financial budget reports for BI tools by collapsing quarterly data columns into a standardized long-form table.

## Frequently asked questions

### What is an unpivot operation?

An unpivot operation takes data organized in wide columns and rotates it into a long, vertical format, making it easier to filter and aggregate.

### Can I keep specific columns unchanged?

Yes, you can specify ID columns that will be preserved as-is for every row generated during the unpivot process.

### What output formats are supported?

You can export your normalized data as either an XLSX file or a JSON file, depending on your downstream requirements.

### Does the tool handle empty cells?

Yes, you can enable the 'Drop Empty Values' option to automatically exclude rows where the value is blank, keeping your dataset clean.

### Is there a limit to the file size?

The tool supports Excel files up to 100MB, ensuring you can process large datasets efficiently.

## Related tools

- [XLSX Chart Embedder](https://elysiatools.com/en/tools/xlsx-chart-embedder): Embed generated chart images into Excel workbooks using workbook data ranges for bar or pie chart reports
- [XLSX HTML Table Preview](https://elysiatools.com/en/tools/xlsx-html-table-preview): Render an Excel range to HTML table for web preview with merged cells and basic background colors
- [XLSX Markdown Table Exporter](https://elysiatools.com/en/tools/xlsx-markdown-table-exporter): Convert a selected Excel range or whole sheet into Markdown table format
- [XLSX SQL Insert Generator](https://elysiatools.com/en/tools/xlsx-sql-insert-generator): Read Excel headers and rows to generate SQL INSERT statements for bulk loading
- [XLSX Parquet Exporter](https://elysiatools.com/en/tools/xlsx-parquet-exporter): Export worksheet data to Parquet and/or NDJSON for data lake and data warehouse pipelines
- [XLSX Range Extractor](https://elysiatools.com/en/tools/xlsx-range-extractor): Extract a specific sheet/range/named-range from Excel into JSON with coordinates or record objects
- [XLSX Sparkline Injector](https://elysiatools.com/en/tools/xlsx-sparkline-injector): Inject Excel sparklines into worksheet cells by patching XLSX sheet XML with sparkline definitions
- [XLSX Workbook Merger](https://elysiatools.com/en/tools/xlsx-workbook-merger): Merge multiple similarly structured workbooks as multiple sheets or append all rows into one sheet

## Samples

- [XLSX Samples](https://elysiatools.com/en/samples/xlsx-samples): Sample XLSX spreadsheets for worksheet parsing and data extraction testing
- [XLS Samples](https://elysiatools.com/en/samples/xls-samples): Sample legacy Excel (XLS) files for binary spreadsheet parsing and import tests
- [Nginx Log Parser Samples](https://elysiatools.com/en/samples/nginx-log-samples): Comprehensive Nginx log samples for testing log-parser tool, including access logs and error logs with various formats and scenarios
- [Android Serialization Java Samples](https://elysiatools.com/en/samples/android-serialization-java): Android Java serialization examples including JSON serialization, deserialization, and XML parsing

## Related content

- [XLSX ETL Ingestion and Warehouse Handoff](https://elysiatools.com/en/hubs/xlsx-etl-ingestion-workflows): Turn mixed workbook and CSV sources into traceable, schema-aware outputs for SQL loading, Parquet pipelines, and object-storage batch handoff.
- [Database Schema Migration](https://elysiatools.com/en/hubs/database-schema-migration): Plan a safe database migration by normalizing source data, reviewing schema changes, validating relationships, and preparing rollback assets.
