Sample CSV (Dummy Data) Generator
Define column names and types (sequential ID, full name, email, date, numbers, and more) to instantly generate and download dummy CSV data for testing and QA.
Supported Data Types
| Type | Example output |
|---|---|
| Sequential ID | 1, 2, 3, ... or a prefixed sequence like USR-0001 |
| Full Name | Fictional names mixing Japanese and Western styles, e.g. Taro Yamada, Emma Smith |
| Email Address | [email protected] (derived automatically from the generated name) |
| Phone Number | A Japanese mobile-style format such as 090-1234-5678 |
| Date | A random date within your chosen range, formatted as YYYY-MM-DD |
| Integer | A random whole number within your chosen min/max range |
| Decimal (price, etc.) | A random decimal within your chosen range, rounded to 2 places |
| Boolean | true/false (labels can be customized) |
| Free Text | A word-salad sentence such as "Lorem ipsum dolor sit amet." |
Tips
- Enter any number in the seed field to reproduce the exact same dummy data every time from the same column definitions — handy when sharing a bug report or a fixture for automated tests.
- The generated CSV follows RFC 4180: values containing commas, line breaks, or double quotes are quoted and escaped correctly.
- The email column is automatically derived from a full-name column placed before it in the same row, so pairing the two produces internally consistent data.
- Everything runs entirely in your browser and nothing is ever sent to a server — it's completely fabricated data with no real personal information.
- Row counts are capped at 10,000 to keep the browser responsive. If you need more, fix the seed and generate in batches, then merge the files.
Frequently Asked Questions
Side Note — Why testing needs "seeded" dummy data
Using dummy data instead of real records is standard practice in software development, for two main reasons: protecting personal information (avoiding real customer data in development or test environments), and being able to freely craft edge cases and unusual inputs on demand. This is exactly why libraries like Ruby's Faker, Python's Faker, and JavaScript's @faker-js/faker are so widely used.
Purely random dummy data, however, has one weakness: it is not reproducible. When a test fails intermittently, it becomes hard to tell whether the cause is a genuine logic bug or simply an unlucky, unusual value that happened to be generated that time. A seeded pseudo-random number generator (PRNG) solves this: given the same seed, it produces the exact same sequence of numbers — and therefore the exact same dummy data — every single time, making bugs far easier to reproduce and test results easier to verify.
This tool uses mulberry32, an algorithm that produces good-quality pseudo-random sequences with very little computation, and is a popular lightweight choice in JavaScript. It is not suitable for cryptographic use, but it is exactly the kind of algorithm you want for test-data generation, where being deterministic and fast matters far more than cryptographic unpredictability.