CSV Splitter

Split a large CSV into smaller files by rows per file, number of files or column value — header kept in every chunk.

Drag & drop a .csv or .tsv file here, or click to browse

No uploads. Your files stay on your device.

    No uploads. Your files stay on your device.

    Free forever, no sign-up, no cookies. Buy me a coffee

    How it works

    Paste your CSV — or drop a .csv/.tsv file — and it is split the moment you change a setting. Choose a fixed number of rows per file (handy for import limits), a fixed number of files (the rows are spread as evenly as possible), or split by column value so every region, category or customer lands in its own file. The header row is repeated at the top of each output file, so every chunk stays a valid CSV you can open in Excel, Google Sheets or a bulk importer.

    Parsing follows RFC 4180: quoted fields containing commas, line breaks and escaped "" quotes are kept intact, and the delimiter (comma, semicolon, tab or pipe) is auto-detected. Preview any part, copy it, download it on its own, or grab every file at once as a ZIP that is also built locally. Nothing is uploaded — the whole split runs in your browser with JavaScript, so it is safe for exports full of customer data.

    Frequently asked questions

    How do I split a large CSV file into smaller files?

    Drop your .csv or .tsv file on the page (or paste the data) and pick a split mode: a fixed number of rows per file, a fixed number of files with the rows spread evenly, or one file per value in a chosen column. The parts are listed instantly with their row counts — preview any of them, download one on its own, or download all of them at once as a ZIP.

    Does each split file keep the header row?

    Yes. With "First row is a header" ticked, the header is written at the top of every output file, so each chunk stays a valid CSV that Excel, Google Sheets or a bulk importer can open on its own. Untick it if your file has no header and every line should be treated as data. Quoted fields containing commas, semicolons or line breaks are re-quoted correctly on the way out.

    Is my CSV uploaded to a server?

    No. The file is read and split entirely in your browser with JavaScript, and even the ZIP is built locally — nothing is uploaded, stored or logged, and there is no row limit or signup. That makes it safe for exports containing customer records, payroll data or order histories, and the page keeps working offline once loaded.

    Report a bug