Pivot Table Builder
Pivot any CSV by row, column and aggregated value — no spreadsheet needed.
Overview
The pivot table builder turns a CSV into a cross-tab grouped by row and column dimensions, with an aggregated value cell at every intersection. Pick a row column, a column column, a value column, and an aggregation (sum, count, average, min, max), and immediately see the matrix.
It's the same operation as Excel's Pivot Tables or SQL's GROUP BY ... PIVOT — but on a pasted CSV without spreadsheet overhead. Analysts and data engineers use a csv pivot tool to summarise sales by month and region, errors by service and severity, or any two-dimensional rollup.
How it works
The CSV is parsed per RFC 4180 with the first row as headers. The builder reads three column selections — row, column, and value — and one aggregation function. It then iterates rows, groups values by the (row, column) pair, and applies the aggregator to each group.
For numeric aggregations (sum, avg, min, max), only cells that parse as numbers under invariant culture contribute. count ignores type and just counts rows. The output is a rectangular matrix with row labels down the left, column labels across the top, and totals optionally added as a final row and column.
Examples
Input:
region,month,sales
US,Jan,100
US,Feb,150
EU,Jan,80
EU,Feb,120
US,Jan,50
Pivot rows=region, cols=month, value=sales, agg=sum:
Jan Feb
US 150 150
EU 80 120
Same data, agg=count:
Jan Feb
US 2 1
EU 1 1
FAQ
Can I pivot by more than one row dimension?
Yes — pick multiple row columns and they become a compound row label (US / online, US / retail). The same works for column dimensions, though wide pivots get unwieldy fast.
What about totals?
Optional row totals (rightmost column) and column totals (bottom row) can be toggled on. The grand total appears at the bottom-right intersection.
Does it handle missing combinations?
Yes. If a (row, column) pair has no data, the cell shows the configured null placeholder — empty string by default, or 0 if you'd rather see an explicit zero in numeric pivots.