Skip to main content
WizTools123
WizTools123
Free Online Tools

Tool Categories


CSV Tools New Tool

Free Online CSV Pivot Table Generator and Summariser

Build a pivot table from a CSV in your browser. Choose a column for the rows, optionally one for the columns, and what to work out in each cell: a count, a total, an average, a minimum, a maximum or how many distinct values there are. Row and column totals are included, and the result downloads as a CSV.

Free Forever Nothing Uploaded Two dimensions Six calculations
Free Online CSV Pivot Table Generator and Summariser
Share this tool
Advertisement Slot (Top Banner) Google AdSense Unit • Responsive Banner
CSV Pivot Table Generator Your file is read inside this tab. Nothing is uploaded anywhere.
Drop your CSV file here One file at a time. A pivot of several files at once would be a different thing entirely. Choose a file Up to 25 MB per file. Nothing is uploaded.
0%
Or paste it
Reading the file
Rows
In each cell
Layout
Writing the result

0 groups 0 columns across 0 rows counted 0 rows with no number

Your data
Nothing to show yet.
The pivot table
Nothing to show yet.
Buy Us A Coffee

Enjoying WizTools123? Help keep our server infrastructure 100% free and open for everyone.

Buy Us A Coffee
Sponsored Content (Below Tool) Google AdSense Placement

How to Make a Pivot Table From a CSV

A few steps, and nothing is uploaded.

1
Drop the file in One CSV. Rows can also be pasted straight out of a spreadsheet.
2
Choose the row grouping The column whose distinct values become the rows of your summary, such as City or Status.
3
Add a second column if you want a grid Leaving it empty gives a simple list with one row per group. Choosing one crosses the two, such as City against Channel.
4
Pick the calculation Counting rows needs nothing else. Any other calculation needs the column to work on, such as Amount.

What to Know About Pivot Tables

Blanks, averages of averages, and what the totals mean.

Counting rows needs no value column, and that is the most common thing people want. How many orders per city, how many rows per status. Tools that insist on a value column for a count make you choose an arbitrary one and hope it has no blanks.
Empty and zero are not the same, which is why it is a switch. A cell with no matching rows is genuinely absent: there were no phone orders in Cardiff at all. Writing 0 there is right if you are feeding a chart and wrong if you are presenting the table, because it asserts a measurement that was never made.
The averages are not averages of averages. Each cell average is worked out from the underlying rows, and the total row average is worked out from all the rows in that row, not by averaging the cells. Averaging averages gives a different and wrong answer whenever the groups are different sizes, and it is a mistake spreadsheets make easy.
Rows whose value is not a number are counted and excluded. Totalling a column where some rows say "not supplied" has to skip them, and you need to know how many were skipped, because fifty skipped rows out of sixty makes the total meaningless. That figure is in the counters.
Blank grouping values become a row called (blank). They are real rows and dropping them would make the totals disagree with the file. Giving them a visible label is the only honest option.
Crossing two columns with many values each produces an unusable grid. Two hundred cities against three hundred products is sixty thousand cells. It is computed correctly and no spreadsheet will make sense of it, so a warning appears rather than a wall of columns.

Key Features & Capabilities

What this tool does, and what it deliberately does not.

One or two dimensions A simple summary by one column, or a grid crossing two against each other.
Six calculations Count, total, average, minimum, maximum, and how many distinct values.
Honest averages Totals rows recompute from the underlying data rather than averaging the cells above them.
Blank is not zero Cells with no matching rows stay empty unless you ask for a zero, because they are different claims.
Out as a CSV The pivot downloads as an ordinary CSV, ready for a chart or a report.
Nothing is uploaded The summary is computed inside this tab, so sales data never leaves your computer.

About the CSV Pivot Table Generator

A pivot table answers the question "how much of this, broken down by that". It is the single most useful thing a spreadsheet does and the feature most people avoid, partly because the interface is intimidating and partly because the file you want to pivot is often too large to open.

Underneath it is simple. The distinct values of one column become the rows. Optionally, the distinct values of another become the columns. Each cell holds a figure worked out from the rows that fall into it. Everything else, including the parts that make spreadsheet pivots confusing, is interface rather than concept.

The two places where correctness quietly matters are blanks and averages. A cell with no matching rows is not zero, it is nothing, and writing zero asserts a measurement that was never taken; that belongs to you to decide rather than to a default. And an average in a totals row must be computed from the underlying rows, not by averaging the cells above it, because averaging averages gives the wrong answer whenever the groups are different sizes. Both are easy to get right once stated, and both are easy to get wrong in a spreadsheet without noticing.

Frequently Asked Questions

Counting, blanks, totals and large grids.

No. Counting rows works from the grouping alone, which is what you want for questions like how many orders per city. Only the other calculations need a column to work on.

Because no rows fell into them, which is different from a measured zero. The switch writes zeros if you are feeding a chart that needs them, but empty is the more honest default for a table somebody reads.

No, and that distinction matters. It is computed from all the underlying rows. Averaging the cells gives a different answer whenever the groups contain different numbers of rows, and that answer is wrong.

They are excluded from the calculation and counted, with the figure shown in the counters. If most rows were skipped, the total is not telling you what you think it is.

They become a row labelled (blank). They are real rows, so dropping them would make the totals disagree with the file.

It will compute, and the result will be unusable: hundreds of columns that no spreadsheet displays sensibly. A warning appears when the grid gets that wide, which usually means one of the two columns is not the one you meant.

Other CSV Tools

Advertisement Slot (Bottom Banner) Google AdSense Unit • Responsive Banner