CSV Pivot Table Builder summarises tabular data the way a spreadsheet pivot table does, but instantly and in your browser. Paste CSV with a header row, choose which field forms the rows, which forms the columns, and which numeric field to aggregate — then pick how to aggregate it. The result is a cross-tabulated grid with totals, no spreadsheet software required.
How it works
First the CSV is parsed into records. The parser is quote-aware: it tracks whether it is inside a double-quoted field, so embedded commas and newlines stay part of their cell, and a doubled quote ("") becomes a literal quote.
Then the pivot is computed. Every record is placed into a cell identified by its row-key value and column-key value. Within each cell the chosen aggregation runs:
- count — number of records in the cell.
- sum — total of the value field, skipping non-numeric cells.
- avg — sum divided by the number of numeric values.
- min / max — smallest or largest numeric value.
Finally, row totals (across all columns) and column totals (down all rows) are added so you can read marginal subtotals at a glance.
Tips and worked example
Using the bundled sales sample: set the row field to region, the column field to product, the value field to amount, and the aggregation to sum to see revenue per region per product with totals. For example:
| Widget A | Widget B | Total | |
|---|---|---|---|
| North | 1200 | 800 | 2000 |
| South | 950 | 1100 | 2050 |
| Total | 2150 | 1900 | 4050 |
Switch the aggregation to count to see how many orders fell into each cell. Set the column field to (none) for a simple grouped summary with one aggregated column.
When to use each aggregation
| Aggregation | Best for |
|---|---|
| sum | Revenue, quantities, costs — anything you add up |
| count | Number of events, orders, or records per cell |
| avg | Average ticket size, rating, or delivery time per segment |
| min / max | Fastest / slowest time, cheapest / priciest item per group |
Practical use cases
- Sales reporting — revenue by region × product, or by sales rep × month.
- Survey analysis — count of responses by answer choice × demographic group.
- Support tickets — average resolution time by category × team.
- Inventory — total stock by warehouse × SKU.
- Event analysis — unique visits (count) by campaign × landing page.
Limitations
The pivot table built here is a cross-tabulation of two categorical fields. It does not support nested row groupings (region → country), date hierarchies (year → quarter → month), or calculated fields beyond the five built-in aggregations. For those, export the CSV and open it in a spreadsheet or pass it to a data analysis tool. Everything runs locally — nothing is uploaded.