The limit applies to data rows, not the header
If you choose 1,000, each part contains one header row plus up to 1,000 data records. That matches the way many import limits are described: number of products, contacts, or records.
FREE WEB TOOL
Split a large CSV into files with a chosen number of rows.
Files are processed in your browser and are not sent to our server.
An upload says “maximum 10,000 rows,” but your CSV has 47,000. Instead of cutting the file by hand, choose the number of data rows per part and keep the header on every output file.
If you choose 1,000, each part contains one header row plus up to 1,000 data records. That matches the way many import limits are described: number of products, contacts, or records.
This is a subtle CSV detail. A newline inside a correctly quoted cell can make one record span several physical lines in a text editor. The tool parses CSV structure first, so it splits logical records rather than raw newline characters.
Output files are written as comma-delimited CSV with CRLF line endings and a UTF-8 BOM. A Shift_JIS input therefore does not stay byte-for-byte Shift_JIS. If the receiving system requires Shift_JIS, convert the split files afterward.
Even a UTF-8 file without a BOM becomes UTF-8 with BOM after splitting. That is friendly to many spreadsheet workflows, but it is not byte-preserving. Check the receiving system if encoding is part of the import contract.
TSV and semicolon-delimited data should be converted before splitting. The parser here is intentionally for standard comma-separated CSV.
Open the end of part 1 and the beginning of part 2. If the records line up and the sum of all part row counts equals the source data-row count, you have a strong sanity check before uploading.
For 47,000 rows split at 10,000, you should see 10,000 / 10,000 / 10,000 / 10,000 / 7,000. Simple arithmetic like this catches a surprising number of configuration mistakes before upload.