BigCSV Split, convert and clean CSV files of any size
FILE NEVER LEAVES YOUR BROWSER
STEP 1Drop your CSVIt is read straight off your disk. Nothing is uploaded — check the network tab.
STEP 2Pick an operationSplit into parts, convert format, keep only some columns, remove duplicates, or filter rows.
STEP 3Download the resultFinished files appear in the Output panel below the operations, with a Download button on each.

Drop a CSV, TSV or text file here

Nothing is uploaded — everything runs locally on this machine. No signup.

Free up to 10,000 rows. Larger files need a one-time $19 licence — no subscription.

Split a large CSV file into smaller files

Set the rows per part, click Split file, and each piece appears in the Output panel with its own download button. The header row is repeated at the top of every part, so each one opens cleanly on its own — a split that drops the header on parts 2 and up is the most common way this goes wrong elsewhere.

How many rows per part?

It depends on what receives the file, not on the file itself:

Splitting 500,000 rows produces a lot of files

At 10,000 rows per part that is 50 downloads. When a split produces more than one file a Download all as .zip button appears above the list, which bundles every part into a single archive. It hides itself when the total exceeds 200 MB, because the zip is built in memory and a larger one would stall the tab — download those individually.

Why not just use the command line?

split -l 10000 big.csv part_ is fast and fine, with two caveats: it only repeats the header if you add more scripting, and it produces files with no .csv extension. If you are comfortable in a terminal it is a perfectly good answer. This page exists for the times you are not, or the file is on a machine where you would rather not install anything.

Related: CSV too large for Excel · Open a large CSV file · Remove duplicate rows

Common questions

Does each part keep the header row? Yes. The header from the original file is written at the top of every part, so each one opens correctly on its own.

Is there a limit on how many parts it can create? No fixed limit. Splitting is streamed, so a file that produces hundreds of parts works; only the optional zip bundle is capped, at 200 MB total.

Can I split by file size instead of row count? Not currently — splitting is by row count, which is what import limits are almost always expressed in.