Skip to main content

CSV Splitter

Separate a CSV into multiple results based on row counts or chosen groupings, then download each generated file.

  • Clipboard

Embed this widget

Customize the result, check the live preview, then copy the code.

Preview

Embed code type

Code to copy

Responsive and automatically resized by Bethemesh.

Was this tool useful?

How does this tool work?

An import limited by record count or a distribution organised by team may require several small CSV files instead of one table. The splitter distributes data by record count or a column's values without breaking a CSV cell that contains a line break. Every part becomes a separate file. This page does not split to an exact byte size and does not generate a ZIP archive. Unlike spreadsheet splitting, it creates individual CSV files rather than combining groups as sheets inside an Excel workbook.

Record-count mode is initially selected, with 1,000 data records per file as the starting setting. Parts follow source order and the last may contain fewer records. Counting uses logical CSV records: an address quoted across three physical lines still counts as one data record. Consequently, byte sizes are neither equal nor guaranteed below a particular threshold, even when every full part contains the same number of records. Record count and file size are separate constraints.

In column mode, enter an exact heading or a position starting at 1. Every distinct text value forms a group in order of first appearance, and records within a group preserve their relative order. Case and spaces belong to values: North, north and North surrounded by spaces remain separate. Filenames are simplified and shortened, with suffixes preventing filename collisions from combining different groups. An empty cell and the literal word empty also remain separate groups rather than being silently merged.

The interface starts with headers enabled and repeats them in every file; they do not count towards the requested data-record limit. Delimiters are detected from commas, semicolons, tabs and vertical bars or chosen explicitly, then reused in every part. Quoted fields and doubled quotation marks remain consistent. The shared file-import control limits imports to 5 MiB. Processing loads data into memory rather than streaming enormous files, and pasted input is also constrained in practice by available browser resources. It is not a large-file server service.

How to use this tool

  1. Supply the source and confirm its structure

    Paste the CSV or import a file within the upload limit. Set the delimiter and header option carefully, particularly when the first record looks like ordinary data rather than a clear heading row.

  2. Choose how records should be distributed

    For batches, enter a positive whole number of records. For groups, choose an exact column name or position. Inspect empty values and case variants before allowing them to determine separate output files.

  3. Inspect and download the generated parts

    Run splitting and compare the sum of part records with the source count, excluding headings. Download individual files or use the global button. Your browser may request permission for several consecutive downloads.

Use cases

Create batches for another importer

Divide a table into parts meeting a destination's record-count limit. Check byte sizes separately when the receiving system imposes both a record limit and a maximum file size.

Distribute records by team

Create one CSV per assignment-field value. Review spelling variants first so one real team does not accidentally receive several files or an inconsistent group label from the source.

Review an export in manageable stages

Produce consecutive work batches for manual inspection. Repeating headings lets each recipient understand the fields independently without having to consult the first part or the complete original file.

Examples

Divide three records into batches of two

With two records per file and headers enabled, the first part contains Alice and Ben, while the second contains Clara. Each repeats id;name. Repeated headings are not included among the three distributed data records.

Input

id;name
1;Alice
2;Ben
3;Clara

Result

part-1.csv
id;name
1;Alice
2;Ben

part-2.csv
id;name
3;Clara

Collect records belonging to one region

Column mode on region creates a North file containing identifiers 1 then 3, and a South file containing 2. North records need not be adjacent in the source; grouping them does not require a preliminary sort.

Input

region;id
North;1
South;2
North;3

Result

North.csv
region;id
North;1
North;3

South.csv
region;id
South;2

Tips and best practices

  • Record-based splitting does not automatically satisfy a 2 MB limit. One very long cell can make a part large. Measure the files actually produced before sending them to an importer with strict byte limits.
  • Characters removed from filenames remain present in the data cells. Values that simplify to the same filename are distinguished with suffixes rather than being combined into one group with a shared label.
  • The download-all command starts several separate downloads without a ZIP archive. If the browser blocks them, allow multiple downloads for the page or use the individual file buttons instead.

Frequently asked questions

Can a multiline cell be divided between two files?

No. Splitting operates on records interpreted by the CSV reader, not on every physical line break. Quoted line breaks belong to their cell and stay with that complete record in the generated part.

Why do parts have different file sizes?

Record count does not determine cell length. Two batches of a thousand records can differ greatly in size. This tool does not provide splitting according to a target expressed in bytes or megabytes.

Are North and north grouped together?

No. Grouping keys retain exact text, including case and spaces. Clean those differences beforehand only when they genuinely represent the same category and do not encode a distinction that matters to your dataset.

What happens when a file contains only headings?

There are no data groups, so no downloadable parts are created. Check whether the header option mistakenly treated your only data record as headings. The splitter does not invent empty files for absent group values.

Related tools

Tools similar or complementary to this one.

Similar tools

Merge multiple CSV files into one table while keeping columns aligned consistently.

Data & spreadsheetsFeaturedUse this tool

Validate CSV structure and quickly identify problematic rows or columns in your data.

Data & spreadsheetsFeaturedUse this tool
GuideBest practicesBeginner

Split a CSV or Excel table into smaller files

Discover when to split a large table by row count or by a column value, and how to preserve a useful structure in every output file.

29 August 20261 min