Testing an import means you need a file shaped like the real thing, big enough to hit the limits you care about, and free of anyone’s actual personal data. Real exports are usually none of those. This generator makes one in seconds and writes it straight to your disk, so a 5 GB test file needs no more memory than a small one.
How to Generate a Test CSV File
- Choose a dataset: customers, sales orders, employees or a product catalog.
- Choose a size, either an exact number of rows or a file size in megabytes. The buttons below the size fill in common test sizes.
- Tick Include tricky values if you want to find out whether your importer copes with messy data.
- Check the preview, which shows the first rows of the exact file you will get.
- Press Generate CSV, then download the file when it is ready.
The Four Datasets
| Dataset | Columns | Good for testing |
|---|---|---|
| Customers | ID, first and last name, email, phone, city, country, postal code, signup date, lifetime value, opt-in | CRM and mailing-list imports, deduplication, address handling |
| Sales orders | Order ID, date, customer ID, store, SKU, product, quantity, unit price, discount, total, status, note | Reporting, splitting by store or status, totals and money columns |
| Employees | Employee ID, name, email, department, job title, hire date, salary, manager, office, active | HR and payroll systems, lookups by manager ID, access control tests |
| Product catalog | SKU, product name, category, brand, price, cost, stock, weight, EAN-13 barcode, description | Shop and inventory imports, barcode handling, long text fields |
Some values are chosen to catch a common import mistake on their own. US postal codes such as 02108 and product barcodes starting with 0 lose their leading zeros if anything along the way treats them as numbers — see why Excel removes leading zeros. Every barcode carries a valid EAN-13 check digit, so a validator that rejects them has a bug of its own.
What “Tricky Values” Adds
Clean sample data proves very little, because most CSV bugs only show up on the awkward rows. With the box ticked, a few percent of rows contain:
- Commas inside a value, such as a store called Main St, Unit 4. The value is wrapped in quotes, and a reader that splits on every comma will shift the rest of that row one column to the right.
- Double quotes inside a value, like 27" Monitor, written as
"27"" Monitor"as the CSV standard requires. - Line breaks inside a value, in order notes and product descriptions. A tool that counts lines instead of rows will report the wrong total — the problem explained in how to count the rows in a CSV.
- Accented and non-Latin text, such as Zoë, Łukasz, São Paulo and 東京, which turn into garbled characters when a program guesses the wrong encoding.
- Empty values in columns that are usually filled, such as phone number, city or salary.
The preview marks a line break inside a value with ↵, so you can see which rows are the awkward ones before you download.
Choosing a Size
| You want to test | Generate | Why |
|---|---|---|
| Excel’s row limit | 1,048,577 rows | One more data row than a worksheet can hold, counting the header. Excel should warn that the file was not loaded completely. |
| Google Sheets import | 10,000,000 ÷ columns | Sheets has allowed 10 million cells in a spreadsheet, so an 11-column file hits that limit at about 909,000 rows. Google is doubling it to 20 million from September 2026; test both if your users’ accounts may differ. |
| An upload or import limit | Just over the limit | Check the error message is clear, then just under the limit to confirm it is accepted. |
| Memory and streaming | 1–10 GB | Large enough that a program loading the whole file into memory slows down or fails. |
Excel’s row limit explained covers what happens to the rows past the limit, and splitting a CSV to fit an import limit lists published limits for common tools.
Repeatable Test Files
Each file comes from a seed, set to 42 under Advanced Options. The same seed with the same dataset, size and options gives a byte-for-byte identical file every time. That lets a bug report say “sample orders, 2 million rows, seed 42” instead of attaching a 150 MB file, and lets two people test against exactly the same data. Change the seed for a different file with the same shape.
Where the File Is Made
The file is generated by code running in your browser tab and written to the browser’s private storage on your own disk, then downloaded from there. Nothing is sent to a server. You need free disk space of roughly the file’s size while it is being made, and the finished file can then be used with the CSV splitter, merge tool or duplicate remover to test those jobs too.
Last updated .